diff --git a/examples/go.mod b/examples/go.mod index 35f83f79bf7..cfcb55a5162 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -4,13 +4,13 @@ go 1.23.3 require ( github.com/aws/aws-sdk-go v1.55.5 - github.com/aws/aws-sdk-go-v2 v1.32.6 - github.com/aws/aws-sdk-go-v2/config v1.28.6 - github.com/aws/aws-sdk-go-v2/credentials v1.17.47 - github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1 - github.com/aws/aws-sdk-go-v2/service/iam v1.38.2 - github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7 - github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0 + github.com/aws/aws-sdk-go-v2 v1.32.7 + github.com/aws/aws-sdk-go-v2/config v1.28.8 + github.com/aws/aws-sdk-go-v2/credentials v1.17.49 + github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3 + github.com/aws/aws-sdk-go-v2/service/iam v1.38.3 + github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9 + github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1 github.com/pulumi/providertest v0.1.3 github.com/pulumi/pulumi-aws/provider/v6 v6.0.0-00010101000000-000000000000 github.com/pulumi/pulumi-terraform-bridge/v3 v3.100.0 @@ -53,7 +53,7 @@ require ( github.com/Masterminds/semver/v3 v3.3.1 // indirect github.com/Masterminds/sprig/v3 v3.3.0 // indirect github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v1.1.3 // indirect + github.com/ProtonMail/go-crypto v1.1.4 // indirect github.com/YakDriver/go-version v0.1.0 // indirect github.com/YakDriver/regexache v0.24.0 // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect @@ -63,261 +63,261 @@ require ( github.com/armon/go-radix v1.0.0 // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21 // indirect - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22 // indirect + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25 // indirect - github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2 // indirect - github.com/aws/aws-sdk-go-v2/service/account v1.22.0 // indirect - github.com/aws/aws-sdk-go-v2/service/acm v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8 // indirect - github.com/aws/aws-sdk-go-v2/service/amp v1.30.4 // indirect - github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1 // indirect - github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2 // indirect - github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2 // indirect - github.com/aws/aws-sdk-go-v2/service/athena v1.49.1 // indirect - github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7 // indirect - github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1 // indirect - github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/backup v1.40.0 // indirect - github.com/aws/aws-sdk-go-v2/service/batch v1.49.0 // indirect - github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7 // indirect - github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1 // indirect - github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0 // indirect - github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1 // indirect - github.com/aws/aws-sdk-go-v2/service/chime v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2 // indirect - github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3 // indirect - github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0 // indirect - github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1 // indirect - github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7 // indirect - github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1 // indirect - github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1 // indirect - github.com/aws/aws-sdk-go-v2/service/connect v1.122.0 // indirect - github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1 // indirect - github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1 // indirect - github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5 // indirect - github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/dax v1.23.7 // indirect - github.com/aws/aws-sdk-go-v2/service/detective v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1 // indirect - github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8 // indirect - github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6 // indirect - github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4 // indirect - github.com/aws/aws-sdk-go-v2/service/drs v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0 // indirect - github.com/aws/aws-sdk-go-v2/service/efs v1.34.1 // indirect - github.com/aws/aws-sdk-go-v2/service/eks v1.54.0 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/emr v1.47.1 // indirect - github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8 // indirect - github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0 // indirect - github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0 // indirect - github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7 // indirect - github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2 // indirect - github.com/aws/aws-sdk-go-v2/service/fis v1.31.2 // indirect - github.com/aws/aws-sdk-go-v2/service/fms v1.38.5 // indirect - github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0 // indirect - github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2 // indirect - github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/glue v1.104.0 // indirect - github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1 // indirect - github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0 // indirect - github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26 // indirect + github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4 // indirect + github.com/aws/aws-sdk-go-v2/service/account v1.22.1 // indirect + github.com/aws/aws-sdk-go-v2/service/acm v1.30.9 // indirect + github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9 // indirect + github.com/aws/aws-sdk-go-v2/service/amp v1.30.5 // indirect + github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3 // indirect + github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9 // indirect + github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8 // indirect + github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3 // indirect + github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0 // indirect + github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0 // indirect + github.com/aws/aws-sdk-go-v2/service/athena v1.49.2 // indirect + github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8 // indirect + github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3 // indirect + github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/backup v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/batch v1.49.2 // indirect + github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8 // indirect + github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0 // indirect + github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2 // indirect + github.com/aws/aws-sdk-go-v2/service/chime v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3 // indirect + github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4 // indirect + github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1 // indirect + github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3 // indirect + github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9 // indirect + github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2 // indirect + github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3 // indirect + github.com/aws/aws-sdk-go-v2/service/connect v1.123.1 // indirect + github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2 // indirect + github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0 // indirect + github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2 // indirect + github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8 // indirect + github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6 // indirect + github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2 // indirect + github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/dax v1.23.8 // indirect + github.com/aws/aws-sdk-go-v2/service/detective v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3 // indirect + github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9 // indirect + github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5 // indirect + github.com/aws/aws-sdk-go-v2/service/drs v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3 // indirect + github.com/aws/aws-sdk-go-v2/service/efs v1.34.2 // indirect + github.com/aws/aws-sdk-go-v2/service/eks v1.56.1 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9 // indirect + github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/emr v1.47.3 // indirect + github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9 // indirect + github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1 // indirect + github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2 // indirect + github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8 // indirect + github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3 // indirect + github.com/aws/aws-sdk-go-v2/service/fis v1.31.3 // indirect + github.com/aws/aws-sdk-go-v2/service/fms v1.38.6 // indirect + github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2 // indirect + github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0 // indirect + github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/glue v1.105.0 // indirect + github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2 // indirect + github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0 // indirect + github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3 // indirect - github.com/aws/aws-sdk-go-v2/service/iot v1.62.0 // indirect - github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2 // indirect - github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kms v1.37.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1 // indirect - github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1 // indirect - github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7 // indirect - github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7 // indirect - github.com/aws/aws-sdk-go-v2/service/location v1.42.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0 // indirect - github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1 // indirect - github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1 // indirect - github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mq v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2 // indirect - github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6 // indirect - github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1 // indirect - github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5 // indirect - github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2 // indirect - github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7 // indirect - github.com/aws/aws-sdk-go-v2/service/oam v1.15.7 // indirect - github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4 // indirect - github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1 // indirect - github.com/aws/aws-sdk-go-v2/service/osis v1.14.7 // indirect - github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2 // indirect - github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7 // indirect - github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8 // indirect - github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2 // indirect - github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5 // indirect - github.com/aws/aws-sdk-go-v2/service/polly v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0 // indirect - github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ram v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1 // indirect - github.com/aws/aws-sdk-go-v2/service/rds v1.93.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4 // indirect - github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3 // indirect - github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2 // indirect - github.com/aws/aws-sdk-go-v2/service/rum v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0 // indirect - github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0 // indirect - github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8 // indirect - github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8 // indirect - github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5 // indirect - github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0 // indirect - github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ses v1.29.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1 // indirect - github.com/aws/aws-sdk-go-v2/service/shield v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/signer v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sns v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2 // indirect - github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6 // indirect - github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.33.2 // indirect - github.com/aws/aws-sdk-go-v2/service/swf v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0 // indirect - github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8 // indirect - github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7 // indirect - github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3 // indirect - github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2 // indirect - github.com/aws/aws-sdk-go-v2/service/waf v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6 // indirect - github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5 // indirect + github.com/aws/aws-sdk-go-v2/service/iot v1.62.1 // indirect + github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1 // indirect + github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kms v1.37.9 // indirect + github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2 // indirect + github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3 // indirect + github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8 // indirect + github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8 // indirect + github.com/aws/aws-sdk-go-v2/service/location v1.42.9 // indirect + github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1 // indirect + github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0 // indirect + github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0 // indirect + github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0 // indirect + github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2 // indirect + github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/mq v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3 // indirect + github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8 // indirect + github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2 // indirect + github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7 // indirect + github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3 // indirect + github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8 // indirect + github.com/aws/aws-sdk-go-v2/service/oam v1.15.9 // indirect + github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5 // indirect + github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0 // indirect + github.com/aws/aws-sdk-go-v2/service/osis v1.14.8 // indirect + github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0 // indirect + github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8 // indirect + github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9 // indirect + github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3 // indirect + github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6 // indirect + github.com/aws/aws-sdk-go-v2/service/polly v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2 // indirect + github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ram v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4 // indirect + github.com/aws/aws-sdk-go-v2/service/rds v1.93.3 // indirect + github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2 // indirect + github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5 // indirect + github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0 // indirect + github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2 // indirect + github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4 // indirect + github.com/aws/aws-sdk-go-v2/service/rum v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2 // indirect + github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0 // indirect + github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9 // indirect + github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9 // indirect + github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9 // indirect + github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2 // indirect + github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6 // indirect + github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2 // indirect + github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9 // indirect + github.com/aws/aws-sdk-go-v2/service/ses v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3 // indirect + github.com/aws/aws-sdk-go-v2/service/shield v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/signer v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/sns v1.33.9 // indirect + github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5 // indirect + github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7 // indirect + github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.33.4 // indirect + github.com/aws/aws-sdk-go-v2/service/swf v1.27.10 // indirect + github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2 // indirect + github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8 // indirect + github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1 // indirect + github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4 // indirect + github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3 // indirect + github.com/aws/aws-sdk-go-v2/service/waf v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7 // indirect + github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8 // indirect github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2 // indirect - github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3 // indirect - github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1 // indirect - github.com/aws/aws-sdk-go-v2/service/xray v1.30.1 // indirect + github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0 // indirect + github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/xray v1.30.3 // indirect github.com/aws/smithy-go v1.22.1 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/beevik/etree v1.4.1 // indirect @@ -366,9 +366,9 @@ require ( github.com/gorilla/mux v1.8.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0 // indirect - github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59 // indirect - github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60 // indirect - github.com/hashicorp/awspolicyequivalence v1.6.0 // indirect + github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60 // indirect + github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61 // indirect + github.com/hashicorp/awspolicyequivalence v1.7.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect @@ -461,7 +461,7 @@ require ( github.com/pulumi/schema-tools v0.1.2 // indirect github.com/pulumi/terraform-diff-reader v0.0.2 // indirect github.com/rivo/uniseg v0.4.4 // indirect - github.com/rogpeppe/go-internal v1.12.0 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect @@ -490,26 +490,27 @@ require ( github.com/yuin/goldmark v1.7.4 // indirect github.com/zclconf/go-cty v1.15.1 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect - go.opentelemetry.io/otel v1.32.0 // indirect - go.opentelemetry.io/otel/metric v1.32.0 // indirect - go.opentelemetry.io/otel/trace v1.32.0 // indirect + go.opentelemetry.io/otel v1.33.0 // indirect + go.opentelemetry.io/otel/metric v1.33.0 // indirect + go.opentelemetry.io/otel/trace v1.33.0 // indirect go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.37.0 // indirect gocloud.dev/secrets/hashivault v0.37.0 // indirect - golang.org/x/crypto v0.31.0 // indirect + golang.org/x/crypto v0.32.0 // indirect golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/mod v0.22.0 // indirect - golang.org/x/net v0.33.0 // indirect + golang.org/x/net v0.34.0 // indirect golang.org/x/oauth2 v0.23.0 // indirect golang.org/x/sync v0.10.0 // indirect - golang.org/x/sys v0.28.0 // indirect - golang.org/x/term v0.27.0 // indirect + golang.org/x/sys v0.29.0 // indirect + golang.org/x/term v0.28.0 // indirect golang.org/x/text v0.21.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.28.0 // indirect + golang.org/x/tools v0.29.0 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect google.golang.org/api v0.169.0 // indirect google.golang.org/appengine v1.6.8 // indirect @@ -520,7 +521,6 @@ require ( google.golang.org/protobuf v1.35.2 // indirect gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect ) diff --git a/examples/go.sum b/examples/go.sum index 106b3190529..be29a24d20d 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -1189,8 +1189,8 @@ github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5 github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= -github.com/ProtonMail/go-crypto v1.1.3 h1:nRBOetoydLeUb4nHajyO2bKqMLfWQ/ZPwkXqXxPxCFk= -github.com/ProtonMail/go-crypto v1.1.3/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.4 h1:G5U5asvD5N/6/36oIw3k2bOfBn5XVcZrb7PBjzzKKoE= +github.com/ProtonMail/go-crypto v1.1.4/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/YakDriver/go-version v0.1.0 h1:/x+Xg2+l89Mjtxl0VRf2+ue8cnHkw6jfYv49j6f7gZw= github.com/YakDriver/go-version v0.1.0/go.mod h1:LXwFAp1E3KBhS7FHO/FE8r3XCmvKizs/VXXXFWfoSYY= github.com/YakDriver/regexache v0.24.0 h1:zUKaixelkswzdqsqPc2sveiV//Mi/msJn0teG8zBDiA= @@ -1236,532 +1236,532 @@ github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU= github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU= -github.com/aws/aws-sdk-go-v2 v1.32.6 h1:7BokKRgRPuGmKkFMhEg/jSul+tB9VvXhcViILtfG8b4= -github.com/aws/aws-sdk-go-v2 v1.32.6/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= +github.com/aws/aws-sdk-go-v2 v1.32.7 h1:ky5o35oENWi0JYWUZkB7WYvVPP+bcRF5/Iq7JWSb5Rw= +github.com/aws/aws-sdk-go-v2 v1.32.7/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 h1:lL7IfaFzngfx0ZwUGOZdsFFnQ5uLvR0hWqqhyE7Q9M8= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7/go.mod h1:QraP0UcVlQJsmHfioCrveWOC1nbiWUl3ej08h4mXWoc= -github.com/aws/aws-sdk-go-v2/config v1.28.6 h1:D89IKtGrs/I3QXOLNTH93NJYtDhm8SYa9Q5CsPShmyo= -github.com/aws/aws-sdk-go-v2/config v1.28.6/go.mod h1:GDzxJ5wyyFSCoLkS+UhGB0dArhb9mI+Co4dHtoTxbko= -github.com/aws/aws-sdk-go-v2/credentials v1.17.47 h1:48bA+3/fCdi2yAwVt+3COvmatZ6jUDNkDTIsqDiMUdw= -github.com/aws/aws-sdk-go-v2/credentials v1.17.47/go.mod h1:+KdckOejLW3Ks3b0E3b5rHsr2f9yuORBum0WPnE5o5w= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21 h1:AmoU1pziydclFT/xRV+xXE/Vb8fttJCLRPv8oAkprc0= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21/go.mod h1:AjUdLYe4Tgs6kpH4Bv7uMZo7pottoyHMn4eTcIcneaY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43 h1:iLdpkYZ4cXIQMO7ud+cqMWR1xK5ESbt1rvN77tRi1BY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43/go.mod h1:OgbsKPAswXDd5kxnR4vZov69p3oYjbvUyIRBAAV0y9o= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25 h1:s/fF4+yDQDoElYhfIVvSNyeCydfbuTKzhxSXDXCPasU= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25/go.mod h1:IgPfDv5jqFIzQSNbUEMoitNooSMXjRSDkhXv8jiROvU= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25 h1:ZntTCl5EsYnhN/IygQEUugpdwbhdkom9uHcbCftiGgA= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25/go.mod h1:DBdPrgeocww+CSl1C8cEV8PN1mHMBhuCDLpXezyvWkE= +github.com/aws/aws-sdk-go-v2/config v1.28.8 h1:4nUeC9TsZoHm9GHlQ5tnoIklNZgISXXVGPKP5/CS0fk= +github.com/aws/aws-sdk-go-v2/config v1.28.8/go.mod h1:2C+fhFxnx1ymomFjj5NBUc/vbjyIUR7mZ/iNRhhb7BU= +github.com/aws/aws-sdk-go-v2/credentials v1.17.49 h1:+7u6eC8K6LLGQwWMYKHSsHAPQl+CGACQmnzd/EPMW0k= +github.com/aws/aws-sdk-go-v2/credentials v1.17.49/go.mod h1:0SgZcTAEIlKoYw9g+kuYUwbtUUVjfxnR03YkCOhMbQ0= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22 h1:kqOrpojG71DxJm/KDPO+Z/y1phm1JlC8/iT+5XRmAn8= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22/go.mod h1:NtSFajXVVL8TA2QNngagVZmUtXciyrHOt7xgz4faS/M= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46 h1:03ylK6hyAhB9E6U2kWcBi9EIORe8vJGox1fi9DQ7tRQ= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46/go.mod h1:XIZKyo7DYSsFXsFdrwRAYc3b1bHZpX2boIxXuJw9OS8= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26 h1:I/5wmGMffY4happ8NOCuIUEWGUvvFp5NSeQcXl9RHcI= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26/go.mod h1:FR8f4turZtNy6baO0KJ5FJUmXH/cSkI9fOngs0yl6mA= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26 h1:zXFLuEuMMUOvEARXFUVJdfqZ4bvvSgdGRq/ATcrQxzM= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26/go.mod h1:3o2Wpy0bogG1kyOPrgkXA8pgIfEEv0+m19O9D5+W8y8= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25 h1:r67ps7oHCYnflpgDy2LZU0MAQtQbYIOqNNnqGO6xQkE= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25/go.mod h1:GrGY+Q4fIokYLtjCVB/aFfCVL6hhGUFl8inD18fDalE= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2 h1:9WvCTutkgDExBamb9UZQ94oiCjJwXUhhtoBH3NIs0Iw= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2/go.mod h1:9QmJU2Zam+wUZe8etjM4VY9NlC0WeMFLIvtUIOIko4U= -github.com/aws/aws-sdk-go-v2/service/account v1.22.0 h1:Fg/uyf0CCBKLAStzIhYZcIXyVI1BaTJjoPPuuOMdyrk= -github.com/aws/aws-sdk-go-v2/service/account v1.22.0/go.mod h1:/OutbIU/lpaxPpjAeKIE6lOfy9bPOZi1xMzSllMubKw= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.7 h1:rv8PVsnReslpDVVByyuX4LzfA7j0+Jcj6Gili1dBEd0= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.7/go.mod h1:ns7D5/uAekEaVLAIzzNrxVz/CsBCCwNfSdi46PEaGhI= -github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8 h1:qcx0XpDUjTkwp89kt15m1iKorZ1BK1uzXFTT+1NvU0A= -github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8/go.mod h1:T44GdsVnipn1kFnmZbVqLhDNtl9rrWVBmjsuPIrRQzY= -github.com/aws/aws-sdk-go-v2/service/amp v1.30.4 h1:0ya3FPNzwsGD93yx7ag3l5sD6Kelb8qghRAUgRfB5G8= -github.com/aws/aws-sdk-go-v2/service/amp v1.30.4/go.mod h1:e3oL6s7I4YUSaRCpz4gSp1ujDmi+f0CwMbDjlRsad40= -github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0 h1:1swpQaAKSbCkjnx3e0Jl7zmbi5M+k8Gr/aSjo45uLFY= -github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0/go.mod h1:2wrh0ye46s6rA3L1TKkvu4MEADM54tvnxcMkXVL4z5c= -github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1 h1:XBVNkd4B5uGC6RgJ+/4x/ZUuk7/6f/hQ8cvGRSxltBI= -github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1/go.mod h1:4cynmnoMmeiroN7OvI8upcQbvJ3Rfzd3j5hOthYKQnk= -github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7 h1:sDijLs7HLzhvxPWxODryESj4gMA8A8seQWhaUVZaPlE= -github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7/go.mod h1:5AN33eZ7xq2pxsvMJGgXmQA30PQGHOGOaHZf8Q7AaFw= -github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1 h1:I8nQw87FkrIlGbeXx3O7yFpn6a1wmcdEzDd3U6lCacM= -github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1/go.mod h1:pTisi6AYAEJXJpYnghBsl52D0U2Xu8/ZxnCsN5g8Fz0= -github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7 h1:rktzRP9bRlkjb9g5ndMnS6x8tUgc/rrrXyCCn3qHe4s= -github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7/go.mod h1:7UgJlroQG4RN5Klt8zwbZFvfGGV8zWvgf3BH+iJoRfY= -github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8 h1:C4Ahu+vqQMgwcKfOaxdUgn0Tmz/yKl5lrk/Y9aGhRsc= -github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8/go.mod h1:m9n55ulVW0oYNVhczguWuVkoaWky0znzYCn1Is2Q4l0= -github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7 h1:LrYSdKQMAAJs8XpSfNba7Goc0m0hOEGWoNvrOWFasEw= -github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7/go.mod h1:GiSlb1fm4OJ1foTOhXcDziKm2Xre4+bcG8AnQAhjUIM= -github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2 h1:2ikMzzun3sqemZqT96Q2I9ofTWEbFbEx9B1GLBMJmzk= -github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2/go.mod h1:2mMP2R86zLPAUz0TpJdsKW8XawHgs9Nk97fYJomO3o8= -github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5 h1:dxVAH0LY3XmilHw4O4eB+kYKTu3SqujSYQlyKA6PqkM= -github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5/go.mod h1:A+d2JfMEfDdWWMz3OfbK0IKtWjqoLaKlHt3ifC9pd04= -github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2 h1:QL9Ak3hh3POYTr/DgOe4pn0naYOnARZ9Gy9/uIzW+Oo= -github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2/go.mod h1:a+yECc5pms9wxGPwIKHOhnmDWcHJqAUmTIZR76IhMaA= -github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7 h1:sycevRiEU3w7mUO+aVCAFgQw7VxXmzGj+13evW/l+Hk= -github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7/go.mod h1:7/hVyfkxKjfuBu0Z+Ggh9n9VWNEkxPVFagCJZZYGV0U= -github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7 h1:VlcGnZMtvyxACAPxWPPyWBIRmaqQ62vyf/dTWKyHC84= -github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7/go.mod h1:/lor1ybmbMZb2It700RSirZR8uIXzt6/EVv9b9qX3r0= -github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7 h1:9KTwRIeh67p4JjOtkAiUQ6Qbzui3igoFyCFGudRR9BY= -github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7/go.mod h1:YC50kSYeBhmjzeJKNf4CB85KN9Gdy+RKhtt4MvMx4ro= -github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2 h1:NGExoL+9wUDfrQqX6xZavPb93IjFrKLG2b3r+suCfVY= -github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2/go.mod h1:YN/LhOApnQGAgb4AljjHkcpl+OmaLrkD6cGPL1dkajI= -github.com/aws/aws-sdk-go-v2/service/athena v1.49.1 h1:BASu7+dZA5YsB8r32SGoC+tPtRmd6pp5OOY0UMRQq6c= -github.com/aws/aws-sdk-go-v2/service/athena v1.49.1/go.mod h1:27ljwDsnZvfrZKsLzWD4WFjI4OZutEFIjvVtYfj9gHc= -github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7 h1:THLQzF9JZZthlhdf8i+rDCqO8K7sk2xmsgl/by0/4B4= -github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7/go.mod h1:UZOdtpOTwIj4yHbPVNxfayWIlQp4c3Xht/7sDaFzZs0= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1 h1:XFZsqNpwwi/D8nFI/tdUQn1QW1BTVcuQH382RNUXojE= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1/go.mod h1:r+eOyjSMo2zY+j6zEEaHjb7nU74oyva1r2/wFqDkPg4= -github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7 h1:7zci6q+hPs522cfe75lHUw9LnJ/Ha6eeE977IpBiRwg= -github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7/go.mod h1:J/X0cqccGAPGPtWCWi5Juw2sSkmUN7mKnBKbbyyjzwc= -github.com/aws/aws-sdk-go-v2/service/backup v1.40.0 h1:Fg0AZko1ZNgP1dhc2DdWWSHZpD0eCZ/dauSccQYwvsY= -github.com/aws/aws-sdk-go-v2/service/backup v1.40.0/go.mod h1:YgtsGOZJNjMAnSov/HRVspxzEUjjszZi3qXo90gzNU8= -github.com/aws/aws-sdk-go-v2/service/batch v1.49.0 h1:ew1qgtLddHOgV2yuzG0oV8srXYf4+L0hotZvhhpNK64= -github.com/aws/aws-sdk-go-v2/service/batch v1.49.0/go.mod h1:5pxmENM3nBEAr2XrSs6c89Iwl6wAJk0/pkyFd3Gmav0= -github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7 h1:zrQ6zDzE5ohrLEpwaXGoF0PoBiSBo0oW6uW72iyF0ic= -github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7/go.mod h1:J+Zv3ekV1h3RyqVlxi1hCliEuI1SwugGAnmiOfwzNco= -github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1 h1:zMEJeGsIuYpjO4Osdll4EdOemC01Fx1nmXOAjJzALLs= -github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1/go.mod h1:BKSewSMuaeUidKqXArDlT06PWK/PP3wsgLWTXKeKgQw= -github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0 h1:hnoHWrcuFtnhPcg0Cx0HtWsXcQGZe01Y0OqssMIBy9o= -github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0/go.mod h1:d+BIleA83BNMLQbwc1gYB/Kgrogwl4lzn2RN+XPIC0s= -github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0 h1:j8c+43fhvHwhKLoNuVKByx2JMMknnInSvfES9iYhMXY= -github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0/go.mod h1:jhUXdAWAOIKQReti3jcD8zaDjyayYBAuhmijh8+rYrk= -github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1 h1:g+Xnw4sHm/T5xDTlNvPBeM6gAAQSzj7EwOI0vBXscSE= -github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1/go.mod h1:lpKKa8zv8/MTIHRh1JB24Y+R/RXLE6BWxnFCQ/b0W2M= -github.com/aws/aws-sdk-go-v2/service/chime v1.34.7 h1:iHBLzHxZF2vRCQzm9fKp7yA6X2nnUzqeVF3TY60tqhQ= -github.com/aws/aws-sdk-go-v2/service/chime v1.34.7/go.mod h1:NFTd15WIZy1RPTOSZEsWalWG7PuteqwXLfcy/YQocY4= -github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2 h1:r4NLm/DDTGnpo2MMXIv/yox2ckrm1xugN41SH/gBrIQ= -github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2/go.mod h1:NVs+MoGw0vt6s6g0hulXyy9IMRxTlfPrsral5630V9E= -github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0 h1:IwQ9oL4a8ZhJq/tgfPd5r17wxe7V9Sa6JhhwfCkS0D0= -github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0/go.mod h1:U8vcvSwicq+2VDdkPTP8UYn5IV8YFWPPi8CoMI786w8= -github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0 h1:XlyfMge7JCGYR9wJoihE0aSx1mmlDdmeDg8l/SmCXPQ= -github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0/go.mod h1:F/4OPOJP5yt+EsQXiOyMq1CkV00LZImdgoHdRWd0nQA= -github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8 h1:sXmoUPtWluI9ONDMfs7/0qC10bgSE/I+xschdBItNeY= -github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8/go.mod h1:l1sYjOTxY/lcqFT56ruW2YoC1k2in//ko50kBxwpYII= -github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2 h1:xUD/6aoYwDsMmVl6J6Umkgk+QlkzDm1N0w2BukgXTMI= -github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2/go.mod h1:NQSFnuiS7N4Leys2Mx/N0UMIWkMsXHBs3HEI4ElCSV8= -github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1 h1:EqRhsrEoXFFyzcNuqQCF1g9rG9EA8K2EiUj6/eWClgk= -github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1/go.mod h1:75rrfzgrN4Ol0m9Xo4+8S09KBoGAd1t6eafFHMt5wDI= -github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0 h1:zYk75ljFsvA6PgmbkMVy5b3M/arUF7EY3kHJz7LDaDk= -github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0/go.mod h1:fXHLupAMPNGhRAW7e2kS0aoDY/KsQ9GHu80GSK70cRs= -github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7 h1:+7Ru1G2Y17qgRiUAcBxc9enlf0TxustitfBqonrWcBc= -github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7/go.mod h1:Di9EQnngIp8gHvxf+GkB14uEbC5UcSxsNOOnSWMsfjQ= -github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0 h1:HdUkTXcE1thauOhDGMHjNppUvbygtVj4e80gI3zXJxg= -github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0/go.mod h1:l9Gu/zoAKx1ww1ZtRlSj8qP80AV742bDP337N5NkY3o= -github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6 h1:m1CAIBZzVi05OAocQs7SzY3gLsGGNBmg+qpHA7HQteU= -github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6/go.mod h1:4ogUNAMmF9rtIYGYnFm21WXc/8+lcAuoNYUkS534MfI= -github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3 h1:DfrEQMWCfk0wkuv/r0zwcGoykCuYWCLoGolbax6O3sw= -github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3/go.mod h1:WcTfALKgqv+VCMRCLtG4155sAwcfdYhFADc/yDJgSlc= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3 h1:nQLG9irjDGUFXVPDHzjCGEEwh0hZ6BcxTvHOod1YsP4= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3/go.mod h1:URs8sqsyaxiAZkKP6tOEmhcs9j2ynFIomqOKY/CAHJc= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0 h1:j9rGKWaYglZpf9KbJCQVM/L85Y4UdGMgK80A1OddR24= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0/go.mod h1:LZafBHU62ByizrdhNLMnzWGsUX+abAW4q35PN+FOj+A= -github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7 h1:5us9BU1TnHeSqgQEiQCH9qpDbwGEtYAz6fhSL0jiAyA= -github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7/go.mod h1:k6IbvJ+UeAR3ueA7so+YwS+sPoHa99ECNQvbtwt/pxk= -github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3 h1:p8f+OrPZ9NHMKGFbQ0PZlXTe72Nm5afbDhormEUGg8Q= -github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3/go.mod h1:dOgg7MoOJYIvQkUkZRrKuO/3YdAbO3+fIJlICyDc3dc= -github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7 h1:FgYA/R4VzjeXwimhbQGJhuyaxV/ORz1LVXUkn4t++Nw= -github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7/go.mod h1:1V3pxyJ9hgz8HDju0oDV7lY+pzM/rERREZh7Kd6W3Yo= -github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7 h1:8IZ97GQsCxQ3n0yQ+0QAMMtt2YpOeig6W5Q+hIBCfjE= -github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7/go.mod h1:7thXvCQtqWJhO9u+40n1lA89PhEA7069UVxShNyL5N0= -github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7 h1:j2T2/23Cyo+5cOl8iXOL9Tau780sXBriOhWw/N4ex20= -github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7/go.mod h1:GmV2UoFy3kQRz44DlCYZUu7/m1tT8K+6TGtqkBQWxHY= -github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7 h1:WPhY1/OCDi8AteUyBZj7zvVczNZ4O6T5/HtSxBWh3nE= -github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7/go.mod h1:0Xfzxc16U/0QopHTRY6P7MapMxHqd8RkJOt27ryEV+g= -github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7 h1:5FCm30+pN7ZXwLohD5e2ec/rGPeuTz7l5cCFMFZfVwY= -github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7/go.mod h1:miiswEyJjWFb8lIQgqA067DXBnq5mmTk2eIgKkhg9Yg= -github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7 h1:x7Wiwow6bm0ICkR9akuYUkzfdpZrDx5wvkY64hZ0nT8= -github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7/go.mod h1:91nPYuyG0FyzUG6sKqXqU6wJyeysU/9H/ug+tbQR1jc= -github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0 h1:oYEy8cOgXMEN8tNNnH9tOmEGaATZkMVZZBT+kiDyx24= -github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0/go.mod h1:fLGjNeyN4aduz+LrpWje0ufvfadQnwZof389MwTeFtI= -github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7 h1:5bDPXYGWnZ9nY/N7tY9cSO4hMadCFvZqDwRIs/4ik7w= -github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7/go.mod h1:K9YY4T95yT7BVqHvDjSo8h9yxftqPvWYDFfuCxtHF/g= -github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7 h1:12UdLytB/DylaodJgGl0CUBT7Zz2xRskdlrHst29JVE= -github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7/go.mod h1:yDbe8Oh55gPuNdJzsv3CFbHV7d5wvUoLkFhql0p+y1U= -github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8 h1:mgVSYWMnSZ6QTeCd84IXaxvw0cgAMxq4R6Weo9vejzU= -github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8/go.mod h1:eVAaMRWHgjdGuTJCjlmcwYleskahesLPrGFV4MpQYvA= -github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1 h1:qMJk1I55avN/vN+51rPdE0dLgkhWrlU6Cw0Wg34eQvM= -github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1/go.mod h1:U+GnB0KkXI5SgVMzW2J1FHMGbAiObr1XaIGZSMejLlI= -github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7 h1:z6WD4P7bvSJNlmNVDsfNP/e5o0Zmbz9oM2wOgFWCHRA= -github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7/go.mod h1:M+Z8mhHoSWbr3Q1V8ZaINLLj0p1WGYWjCv/kO4IgUVw= -github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1 h1:iH/z1Q7WYbT2MoTkEIMvR32Ip+FFRuD74EKXUqYLP+k= -github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1/go.mod h1:Epb43KiHofSehPHq6PEQZ07hcl/Euv4vUi7kEcC7J7I= -github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1 h1:zA4KArT5FZ4ypJc8X+7MJNN3iv74K8ygmFhci64M4YI= -github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1/go.mod h1:2fOznUkaoZ2EtJimN0zizQRxQmkndSJz/SSd2x0goKo= -github.com/aws/aws-sdk-go-v2/service/connect v1.122.0 h1:O6uOzf10vuwomHSEnUg1h2a4Gl16FDTAC5ZG/oPYgCw= -github.com/aws/aws-sdk-go-v2/service/connect v1.122.0/go.mod h1:tuGtOUYMxcOObTcKDHKpzTG9EvjfXjOIEC74a6meGRk= -github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7 h1:uWiDzkr4L/KMlftI2OqmELmsv0ZGxeyi3YAo266wJzs= -github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7/go.mod h1:/FZ+YQmJpAdZPR4Z1tA1mIxA/SmLmUlgrn3sZOAmnfQ= -github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1 h1:fpqsKm/4mA+oOn2IM62syUhcVZMU3Gc7tl8HTd4Ul+k= -github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1/go.mod h1:zVh69cAM8AHhBlu/eP9OSBCRbojNw++iEHx0+wgBojI= -github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7 h1:8iIE0CQ6ZWC11vSLJf+M4gPgaiP+qxQ3haPV7KhGZTE= -github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7/go.mod h1:guVPkA6zDaG1wnh0Od9xyPb/6lUijf2zaHi4tTxW8Do= -github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1 h1:2aaEZa6CBfsEebfn3jxwnIDGbSAwZnqIsEC5KF89X2w= -github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1/go.mod h1:RboWadEsqV6Hw/OOyyu8IP+kdz0DASutt3H4ezBxSIk= -github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1 h1:r1LakPxgYvob4eOY0rTjgYuahwFhVgx0txkSHpnyxFw= -github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1/go.mod h1:agAlqygpDyX9paflw12sVF0sGGzAk6Ed5plVQgOqJRk= -github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0 h1:Wkf9S+n02aTZ8pQsp+nBRRVFdodbHG7V5HWqwYQWm/Q= -github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0/go.mod h1:yresrCHgaNcKcF7cLJ6emqK9eb05B1Ik2KvDMLbncU8= -github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0 h1:Bz6/i8CbYodfvX5Efsp0i9+3CG7+312M7HoOnzn7cRA= -github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0/go.mod h1:4O6knGhxKpEu9ILt1+PGSN/LVWzLa4hdyUdPfjgFTao= -github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7 h1:kaYiuNxHzwDMwsqM766yy0cp8ZVldOTwJhOeR0MINU8= -github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7/go.mod h1:Gu2mR/aUZzdmnNORl8GbAN6xDsPO/t9KNG+B99SNMIk= -github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5 h1:X62garDt07bE4Ojd+qO6MTlyMC/wYPw6Sg0QkSfNgXs= -github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5/go.mod h1:UJZLGoXBQs6AukctWkOWimAQh6wloVGq6LOTyg/ALJs= -github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7 h1:b2xXuJ5Yh5RuyOzs3vdBamLXVK5DIM5l819/pCxbC/M= -github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7/go.mod h1:IH2WIe0ol0aDtM5a/+nP6UYRwrDXi/gwF+DA0nJK+i8= -github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0 h1:qCjwlzJJikstQVKrbu/dMpZbhtqlTLawr6zSLRVvRyY= -github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0/go.mod h1:ty1/xBfWRiv/C+e/cbTLkM4UGMfkOavUgp3daLZ2QKc= -github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0 h1:L1IGMQ1T1eZtJLDA4n0SgTYFaHeJ7OJYqy00+JrEGoY= -github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0/go.mod h1:2MCAq6PXnLOI6NVaUES50GGvOl1pa5l6N2XmRAVWWWw= -github.com/aws/aws-sdk-go-v2/service/dax v1.23.7 h1:hZg1sHhWXGZShzHGpwcaOT8HZfx26kkbRDNZgZda4xI= -github.com/aws/aws-sdk-go-v2/service/dax v1.23.7/go.mod h1:fYBjETTq8hZfirBEgXM1xIMy+tvCGYZTeWpjeKKp0bU= -github.com/aws/aws-sdk-go-v2/service/detective v1.31.7 h1:Pw3K9Leqg7SfEoPZek374z1pTJXSKbbS+zbGolMCsWI= -github.com/aws/aws-sdk-go-v2/service/detective v1.31.7/go.mod h1:ngskhJvBbS6oSmoGYyX6gzcoumPw+W5KIzbMVNBd8lQ= -github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7 h1:oXxzZJw5Jc5rrbnSBYjC5EfQ3cik+ZzdjHIZYPQ2SeA= -github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7/go.mod h1:RmmJpAmMnDSzrKzi29jEcnhy9d4xfjRJ368FEnhvCiE= -github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7 h1:WrbyPtKCsyt0UcHzoF/5Kof6O3b4JkZgx5pAFrAe3Ps= -github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7/go.mod h1:/pcwN9rb3n1thi1++LLQik7v48pXo7mcgh4baY5giPA= -github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1 h1:U2VtqwmOzP7sZYWmrnapl3j3KLxIntWyK0RU3uGBIPk= -github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1/go.mod h1:IVHMPfXzPHdq2JuZmnyreo2Dhhlu84Vel/tochYKgh8= -github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8 h1:o3yUhrImWkJuI42DyTJu7REWf1+EUNlwfmLpo2yXzb0= -github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8/go.mod h1:CxYqXrb08ko/psMpQ692AcEFXCuB+sVuWA2OZPB32t0= -github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0 h1:urPakVfaxgWE5VA6RVPF0DQPpe5JrJFcpsrQWDgUq6s= -github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0/go.mod h1:SBPSK/ycAG4ET3JblaBP2Xt52RjNcg827EFgqN8W7AY= -github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6 h1:N2iwdECLOQuClhv3XdTgGSY75N7QHF5nDekPGoFpRyY= -github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6/go.mod h1:pa9tid/NTUDjayagl5El0KVg9IiV3hJEKVxFmvyc+J8= -github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4 h1:pT1NLJ04YA/05ZEbYBNhminfsbKBvHDlOh8ScoMZybA= -github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4/go.mod h1:ZupWmXwSQwiyktsk0/7C71pCkTn7dLgOw47TmpvtU1Q= -github.com/aws/aws-sdk-go-v2/service/drs v1.30.7 h1:0jUZJqidFnPF9LlSSsYD9yQcbIYLyNKjGa+gFPh9UlA= -github.com/aws/aws-sdk-go-v2/service/drs v1.30.7/go.mod h1:myL1h4VGyN3HU1B/7WBs2MsjKYX3FugwPJ09muIM8tE= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0 h1:isKhHsjpQR3CypQJ4G1g8QWx7zNpiC/xKw1zjgJYVno= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0/go.mod h1:xDvUyIkwBwNtVZJdHEwAuhFly3mezwdEWkbJ5oNYwIw= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0 h1:ivPJXmGlzAjgy0jLO9naExUWE8IM8lLRcRKLPBEx6Q0= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0/go.mod h1:00zqVNJFK6UASrTnuvjJHJuaqUdkVz5tW8Ip+VhzuNg= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7 h1:R+5XKIJga2K9Dkj0/iQ6fD/MBGo02oxGGFTc512lK/Q= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7/go.mod h1:fDPQV/6ONOQOjvtKhtypIy1wcGLcKYtoK/lvZ9fyDGQ= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7 h1:eddAe+FnCCLECUKHUHLM9/iAlqDkyRjZk/84+eo0ToE= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7/go.mod h1:lik3qEJ4TBnQrEKoZnFh8E8nn5oZSebnB/pydq8oQRQ= -github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0 h1:TCQZX4ztlcWXAcZouKh9qJMcVaH/qTidFTfsvJwUI30= -github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0/go.mod h1:Ghi1OWUv4+VMEULWiHsKH2gNA3KAcMoLWsvU0eRXvIA= -github.com/aws/aws-sdk-go-v2/service/efs v1.34.1 h1:y2BaF/VBEQM5Gi27ZOX1jSKRQLNifOfvegkqKKDPNEM= -github.com/aws/aws-sdk-go-v2/service/efs v1.34.1/go.mod h1:0c/j249PCFk5d/KHJsBIoCVdnZa9Or71J/fqC/n63BA= -github.com/aws/aws-sdk-go-v2/service/eks v1.54.0 h1:78/Za9/4c5boz78pcKvJV4WfzVHcFwebpfAUzS6XYUg= -github.com/aws/aws-sdk-go-v2/service/eks v1.54.0/go.mod h1:ZzOjZXGGUQxOq+T3xmfPLKCZe4OaB5vm1LdGaC8IPn4= -github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1 h1:Dch9DIcyrHf6OTEhgzz7wIFKrHZAWfcZ1BCAlZtwpYo= -github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1/go.mod h1:gzplo968xB24VkeHC4wKfDbSERguKL2xKPL1Csd/mH4= -github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7 h1:ieY1UqWTqjb83Rx1KiUO2pxFRdebobkKxHKDXIlIMhM= -github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7/go.mod h1:U47A7lAuy5QYMD7lnRHA8WJCzV/W0POLZrUfjZ7HLro= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6 h1:uQFPQNvc9hIaF7SyHQyg2vRtTcWONaa1LUUy+8LEzT8= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6/go.mod h1:KkaWcwL6GJtS/TNn1+fVJPAR+6G7Bs7kEm8E3MlgbhQ= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1 h1:L9Wt9zgtoYKIlaeFTy+EztGjL4oaXBBGtVXA+jaeYko= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1/go.mod h1:yxzLdxt7bVGvIOPYIKFtiaJCJnx2ChlIIvlhW4QgI6M= -github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7 h1:LEo0xkW2yM3qVp8awRVG1lp1o/eR2o0CSR4h9CpB3us= -github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7/go.mod h1:cMruo7iPDprwYjl8CruF4+ht8gZnMJ8nmbVtgEEBu8M= -github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7 h1:46x9DdOeOXKRKsDuwX22aHWg1Ow/32jkYyETzh/1zPQ= -github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7/go.mod h1:sjP2fl/DXY5A/zWjkC414jwK5HXbydQ/ClUFIIzyNQA= -github.com/aws/aws-sdk-go-v2/service/emr v1.47.1 h1:7vjckLqynZflJB13FUfp1oWOvmAhkHFlA6WsnWSOcj0= -github.com/aws/aws-sdk-go-v2/service/emr v1.47.1/go.mod h1:Bae8t4Qt9r5jnngv9coFhXIHvFBCzlplxsqzm2pOLTs= -github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8 h1:tr2CAqQqNsOQqlQTNFJ0HW4o4A/era9mnq/9UnnVZng= -github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8/go.mod h1:BAo50mn0HxLW1w5N96Y3KluxU//eaQkpQv2O0LLPsw4= -github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0 h1:505TF4yWD2kbKrjKW5+QtrAb7Ow2AdkWRkvhhUG8lk8= -github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0/go.mod h1:HAlr1TP57Lswg9mwg+5SyoeDRMMj98chLBn9BRq/SmE= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0 h1:UBCwgevYbPDbPb8LKyCmyBJ0Lk/gCPq4v85rZLe3vr4= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0/go.mod h1:ve9wzd6ToYjkZrF0nesNJxy14kU77QjrH5Rixrr4NJY= -github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7 h1:Y4KQFc4uXRZRUS0c8zauTd0t0vAMvQrAS06DqwyvWMg= -github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7/go.mod h1:uvzDzbyHPk9ZoALbM6K0Yz+XiZuGHwHPNGXUdggdDu0= -github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7 h1:4Figzs7CIQI08uPe8YDsECkDOJuR9N8eMz2Y8pccxc4= -github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7/go.mod h1:a+RGo9o5n5Ts8kCQadDaq8Py9r6upMOFTzd5LV1xB2M= -github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2 h1:A4rkZ/YpyzoU8f8LMe1rPXEvkzX5R/vdAxDwN6IGegs= -github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2/go.mod h1:3Iza1sNaP9L+uKzhE08ilDSz8Dbu2tOL8e5exyj0etE= -github.com/aws/aws-sdk-go-v2/service/fis v1.31.2 h1:sgNhe7x7r4SffGdtbZteb0AHqCmw5ZHDIiyMCEl6BWs= -github.com/aws/aws-sdk-go-v2/service/fis v1.31.2/go.mod h1:MDGBuQGY9Y4zvv6Bi5tDF4Am+D7fRCvk+nUVndGr0l0= -github.com/aws/aws-sdk-go-v2/service/fms v1.38.5 h1:y41UPvSB231dfhAikN9xB2OSEGi8wdJgu7YvOHIT9IY= -github.com/aws/aws-sdk-go-v2/service/fms v1.38.5/go.mod h1:XnzEACT9GzGF0eSbBbkupYA74UtnF2b4mQN6In289KA= -github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0 h1:n4ifwCx29MYkKBnojL/dkV1BzG5IJubsG4Z9A/bZB30= -github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0/go.mod h1:5q7w7rvT828zgFuEod4Ijbw/yJ4Tn4vOPSSxbRT7Lws= -github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2 h1:OzCZubJlSiTU7ht4kGi+g5/RWjoutYyBYWPPaw6Mi5c= -github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2/go.mod h1:MOsRBRZZKsukJ3FetfsrX+QXgLd9k0q1wwIxJrh5qu0= -github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7 h1:YTg3h8OBu4x3UCsu9vKz9VHqkfJQpY1fpwXye6GeoMQ= -github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7/go.mod h1:w/cFjxbAVqNeAMQf31PI9KopvcFYoXdv0oG2Y9wU0uA= -github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7 h1:TB66P1ES3DvjeR7YNTfO4/4ncB2MiFx0jzazbPisWkw= -github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7/go.mod h1:geddg2iWFvxpfa7SIoJztvcdP/Prm1xk9W4+IUhGs7Y= -github.com/aws/aws-sdk-go-v2/service/glue v1.104.0 h1:H6ZuOpWZpXqLieLZ2shNSJI+deobB1+FKL6plTOaqUo= -github.com/aws/aws-sdk-go-v2/service/glue v1.104.0/go.mod h1:ajiRue7mZ0vQjVHQkQG2KBaPHW8lL5GtvmjRTHWDaqk= -github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7 h1:LVJA+YR5tHGo95E8P5W1GFnqrQIiOOagnYCGLExvVr0= -github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7/go.mod h1:oEez2RtKrs3oJ6EgbLV0aBC5YJ/bPcMbkGNtsrW1L3Q= -github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7 h1:ZYq/OyCCRtS55xvC73U7klRHzWlV4AG0XvG8/jbBH1E= -github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7/go.mod h1:5iOqOd+Xi7tMBd+ucAb95owiLCYfeqxphlblc8EvCJg= -github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7 h1:6I620zcBLf791OnuF3hJGj2ft+qLvSsxRerminjOiGY= -github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7/go.mod h1:RPZk76+qDmck0IFAo+ZteQDOKRN3jST4mFsCeicDmOc= -github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1 h1:d1SZI0dUdWVzX5anxfCMBmTcJlxoqkX2DSvHhuzsqeo= -github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1/go.mod h1:JMxJFzRnFpi77J2uktvtZh4lcGMJMC9HLE9Tqvf7atA= -github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7 h1:XuRWGRITuK7WMWKMkog/htDAt/t58wwdTK04oynlPL8= -github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7/go.mod h1:0Ef9fBviMZwF5p9vDNcmAB6hUst2h8aNRnkUhzoE3B0= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.2 h1:8iFKuRj/FJipy/aDZ2lbq0DYuEHdrxp0qVsdi+ZEwnE= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.2/go.mod h1:UBe4z0VZnbXGp6xaCW1ulE9pndjfpsnrU206rWZcR0Y= -github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7 h1:y0SG6t2s4xrOwjulhbGQ72ovA2MSlrb2UyAz+pA6n8g= -github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7/go.mod h1:cJpIii79T0fjc0awSqvU/1kltAjp8MCmMpkhbOUUiik= -github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0 h1:iYKAYIDogQjGVip912p9brH3/SUnY+uBAZyZi2TKz20= -github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0/go.mod h1:7s6ULWi0Vru/qbdXGU9P17fRG3J0pnCLdb0Q7ldlI2s= -github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7 h1:LV32Xwxm9bvE4DnnUHyfDFrkL5sNGGnr/PWG8LMg2rA= -github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7/go.mod h1:yK+nyYadIKeORBC4ctdbS87vSBa6AHzck8HHhQ6ZxX4= -github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1 h1:dX68SHOUFejZMeg2HyHlyL1QFWR+p03S2y08EO2eTdY= -github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1/go.mod h1:SDwBSilPek820sf6C7qttUzdiO/2FXPkj811SAbn0sY= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26 h1:GeNJsIFHB+WW5ap2Tec4K6dzcVTsRbsT1Lra46Hv9ME= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26/go.mod h1:zfgMpwHDXX2WGoG84xG2H+ZlPTkJUU4YUvx2svLQYWo= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4 h1:UESN2kL6NEqhlaLvg1maDmb090rENe5SXlQPniFPAHQ= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4/go.mod h1:H7KyxzxenQN4btMpYIMErtXJF/Wdxt9nuDf0dfDNMkg= +github.com/aws/aws-sdk-go-v2/service/account v1.22.1 h1:MfaYo0TO/FibfEObTTGU+JZqOnexjMVc1iFqu9DImCE= +github.com/aws/aws-sdk-go-v2/service/account v1.22.1/go.mod h1:ozwSD0lNjn+nnqY/ZV2CA3zWpvKGSPtT9rcb5QxI/J4= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.9 h1:ffHv1mr4MyM4fBBltCe88/QqqxVfEEq9A2/qhKEhrl0= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.9/go.mod h1:oncclZWZWxKSIuG8bBS4Ry/VobgJyplv1KDfCEpww40= +github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9 h1:2XsPqThCu/+PaG1Lq09vCmC7cTx0mB/+u7e3T7ccb3E= +github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9/go.mod h1:fLrdaNdi4lN8ePYS3kpFcq2XTdYeQSPR8hbDfYvrdyc= +github.com/aws/aws-sdk-go-v2/service/amp v1.30.5 h1:48aYtRq69X/u0RvaE16oT8Kc98H15ZIcAx02qNcjw+w= +github.com/aws/aws-sdk-go-v2/service/amp v1.30.5/go.mod h1:69KPh+vGRGqDSylU36r8FYjlkHbhwbFMKzTXi8dCCYU= +github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1 h1:BRKu2FLrhasoAF2JiFpYWlDaKERpWMZSx0lU8ldKhrY= +github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1/go.mod h1:7m/R6PVZjusjZwjs7J5//zaCIp8Kej3C0C4OyEGOby4= +github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3 h1:AlUd7PYPSXiyMAjiHgqvkIvFtfsBeosJfJzx0Ng3S88= +github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3/go.mod h1:Jvet+MRHVA+6G+ffFK7UGd15+1ye2BwUiG06arzkDu4= +github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9 h1:AY7lMHNvOaUdOatec2lpcVUXpI/e1fzbj4q/OzuQLqo= +github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9/go.mod h1:iSSjR27ZzU5PnMbFa/c40rW/L02x5apER7wVjCUMcMU= +github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3 h1:zJ1UX5vlv5PRrBnHmylOazF7Zya0MZYU2Cg3Jz+row4= +github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3/go.mod h1:Vz1x9xhvNm11gCuBUXaHwbB3CJ2EZ1c531nQiBoa5Fo= +github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8 h1:WwsWPy2j/mau4y4IwcoGPrtpaI+9vWkl/M+e4G0uwJ4= +github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8/go.mod h1:u+W0G6t6bkw/FA10RZpuwtKb94ccCaWUkneehe9kgnI= +github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9 h1:wkknNc8T4RrjgYCFu2vxtcWNiQvyHLq9W8RE4/F3WvM= +github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9/go.mod h1:7g9GEiNdP5F3nlxWRuQK4h/7H/5IDdJaq7FmpSn9qsk= +github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8 h1:SwIjH56sGy4ifus7xp57LFavHQQgsgicqw/rlfuMNqo= +github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8/go.mod h1:8IlXTRL2PzNr4oL4EJj77us9DO5T/ZfoXLmZE738U1I= +github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4 h1:kgzQyUVnwqlle3n00WN4wUWIukpSZoBfI20s9SY0jhA= +github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4/go.mod h1:FPBqDaA0nWfNiPZ/8WN4O2tj0J+nzuv03oxABcNNrPc= +github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6 h1:NRo3BLJkZ5Q8uBWxDZXOa2NzcIJr5MgBsWT3F2pLplo= +github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6/go.mod h1:gf1ylqx8AxuRhYP8rXJSwS3fUBEakKsDV6BjralAHLM= +github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3 h1:EjnqG6u4RcLvkificNkUTCgqhkkIfNMgfrErwLaogkw= +github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3/go.mod h1:1Yyn7PDQ3mg85BoFFU84AeGEU64lHn0oF2KJ7dHgi0A= +github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8 h1:5muGyKO9+ZX8TraBEvnjnzPNG0wrecgSSHX0Ilm78GQ= +github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8/go.mod h1:KM/3G3muE7uucn7iY5t0BQXHThBMnQjJEh08oq8Labg= +github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8 h1:wpgsIfA/h1kayyZJPiAYgZmgVQ/tsMNq+Pl1/qK1wKQ= +github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8/go.mod h1:jLgw1naLtply2fX7QbqSkbbk4Ws9ASP4QsStZDWGfVA= +github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0 h1:d36PMCY+OwgPqJfgPvByG2gjel2e0mcMt0JNEYMeFm4= +github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0/go.mod h1:HeQk2RRQrmFPeFN1vcg9ZUx85LNH154LjGWaHW6hD3k= +github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0 h1:cvWsS4I5l14/2ObJDCWDbzNaIHtrcJlXwqMiJjzaArI= +github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0/go.mod h1:JtkvZfop6kbv602XTgr2oZY0RNq//obfdEYdYsE68WM= +github.com/aws/aws-sdk-go-v2/service/athena v1.49.2 h1:LMQ/A+F86oe+8s8NKXUmIQ+JEZvpUMVU5Jydqyj4xKU= +github.com/aws/aws-sdk-go-v2/service/athena v1.49.2/go.mod h1:VWKiavh/r4OXYLSrLCc3MEcT2czaWOZi1A9JfZ63S/4= +github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8 h1:iIVLqKuQOeyqwqpeBSczPY8U395LhvyDDXxoM0UGFWE= +github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8/go.mod h1:R5rKVPEeKh+WHUO2JH03I4nptz2HOrBlLRKIJ0ethiY= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3 h1:1QljimH+yYwrCPgmF2S/vnIE/sBEBS0IdZIvE5+bRJY= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3/go.mod h1:t5bdAowh8MWq51TuDmltU+wtxMl/VaegNwSBaznkUYc= +github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8 h1:Axo/XfQwTEly50CeWI+KwPvzPhHRZOKqRrYeFNyN2YA= +github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8/go.mod h1:IoOmwaeuylIVdMvAR9UvxPwnOCJWbCAHMmc5Xm6+10M= +github.com/aws/aws-sdk-go-v2/service/backup v1.40.1 h1:GAAsSB7nI11QOW4UoxywTbm+vveQoa4OjmTbveC9klw= +github.com/aws/aws-sdk-go-v2/service/backup v1.40.1/go.mod h1:XjQvu2ZePG6iCp186VJMgnARCL6NdWg4zfyFEqH6AHQ= +github.com/aws/aws-sdk-go-v2/service/batch v1.49.2 h1:6vnQOp2iTRys9/fHMpbSgE+klXL1n5ej+JnA18j+o6g= +github.com/aws/aws-sdk-go-v2/service/batch v1.49.2/go.mod h1:E7mVO6W6scZTZWYO+aEe6//s2E9TC0B4o/S5DcWAuvQ= +github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8 h1:RREAjt5uVy09Qtvl531q3/v81nW7LzgosqwakgTkbp0= +github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8/go.mod h1:V0HdDB+lfHWOfH92XYkc7av3UICF6/tADj5TJBK/6Qs= +github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2 h1:j68iNEyVNTTg8NSAr0KJF66/IEMwqpFjD5TJ0Wl7nSA= +github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2/go.mod h1:EyyHjPLtcZUu2eg+aB7K9xs4AKskGN1T755632T/Df8= +github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0 h1:QYfytewWlCDwjpmAnOJp5tgP4CkSt2MhFqOawNHahtI= +github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0/go.mod h1:DsVlL/WBmekQaLyt+puVryiwgPRVmdG4iYtXFKk1D0o= +github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1 h1:tVNnwsNTeo+Etw9gr1sWV+Kj3ZoMJc43iZpVU4R8eeg= +github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1/go.mod h1:JY7T8MaH4rW9YFQEWexD4WKErgSgSqozoV3sKghAhNI= +github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2 h1:Pk375myUxoD39hTn0b/+7nYIlG3SP7f4aOsoH3NVk70= +github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2/go.mod h1:pNxaTTo1JQaKq1/vzoqDABCpcnUH6blogfcamZgdE6k= +github.com/aws/aws-sdk-go-v2/service/chime v1.34.8 h1:WkvFnPWcF0vb3yyZNy3xWPjmKbUkKiO+7R89UE/KWVE= +github.com/aws/aws-sdk-go-v2/service/chime v1.34.8/go.mod h1:Fu1c2q0AQg4DSclD9MWtfSL2t9adrOQDhFOmFqGpdLU= +github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3 h1:2rQ9+mp7RR1FGxIXJIuxF9ahfBAGWHyhEnNNYLzcbZI= +github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3/go.mod h1:XtPmOUramYrXE0m2lvCkfNgB/Tq3htF2Q+dxYPd+ByQ= +github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1 h1:5MSmXrqjVPjzSjW0o+KD9yVqcw0k4p6kyjtTQl8tVAQ= +github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1/go.mod h1:7ZrFBi8T9q7MHVVzwYP7KgQaI79/vkYK30/PWMEmQkQ= +github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1 h1:nm7JCgtixCjR2SJZIIrNhhdKA6OY5spr+HoPz1y2/3w= +github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1/go.mod h1:S/+ThddHYLlHPrHpcTHR/kCLhXsZTii5fBjWa0Mqc/4= +github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9 h1:8OeMDf2EJR5Xc7jyyCvvvTr1Aqywe7xinilmzEgqNss= +github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9/go.mod h1:Wrh4tKMWldsSLZwDNFhsLBnD/kzBdfsfdJ+OSWC4jJQ= +github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3 h1:CqhKpcm7vRbGqIKq4EgIXyDpFUcNHCn0Y/OhnP0thgs= +github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3/go.mod h1:+m2sovuoyrrRtwrMDH/RrBq66dpBfEW1BK/4t9VCHqE= +github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3 h1:z7kto7ewktoNiLqNhpm8ZpWOIu9WJrQtdvVqR01/9mQ= +github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3/go.mod h1:10A7sHyxlTZSB7419K2wq/1tn0x/K9/drbD2j8VRZVc= +github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1 h1:jtaYeSe1A/vag0YwjCZmFty9BEV6MhryK5n8strwcks= +github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1/go.mod h1:m70SuBWmdnAnd6e3Z2PxtLL8PfgzFXx4hcGlySK/yik= +github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8 h1:9st+40hamlQ/98Q7ppwFJQMoWa0HbnmVX7+JlWNVQeU= +github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8/go.mod h1:qb90fXDbbwuDneZ1VlhEXRFULd7+pkwoqzqzJ/ygm34= +github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0 h1:ncKfGacso4WwPdgbGYxMJ8hECv6lDoNZizS9xzEL3gE= +github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0/go.mod h1:GgwUhfSyCc/1n4pPtE9hAT7s8sYgwKMCHIea7DWtaC8= +github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7 h1:fDgUT7WnsrJojoVMBZuig/zBO/QsgyKby1ZwISvNBXw= +github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7/go.mod h1:+VE5bSjV3BYlMphES5JAnhgH5ySiX2jIym42SjtTr88= +github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5 h1:+fSJTvw91AyBSgS7iaPlSe0NVwa1DJqb6F6GClah+0s= +github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5/go.mod h1:2lQF0aEQAXkUf/Td7RqGIuylJlJO6wSv/onvNdShVyA= +github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5 h1:+NHuBj2D4pZq+9Y8NZykdBebInAwCTywvr6/MOte+ro= +github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5/go.mod h1:aBk4XbmWf8p4N15l6DPVgb2t/n5gpk+mZMbigYV3a1Y= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2 h1:9zwK03mlPPGzTaiLh1AJS6IhOAWDYnVXfZTwdyBhQtg= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2/go.mod h1:u8Bi6DG9tLOVIS9MNqtE3vh9T6I/U/8RBpYvy/VyMjc= +github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8 h1:1ztU+umT5kFQpbTC+8HNtbYEEpDKAMuJfbJCspljEbg= +github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8/go.mod h1:LB1mlJyYyiQlOWEcTjVFBF02MPtuekmymBgCgVuAYUA= +github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4 h1:Ot0JuMkwX6BkDCLH526ELBIPdGI6Ra3aLnv/D6/K/xE= +github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4/go.mod h1:d9BkReeJ9l7w0EAstfeEDdkGXEeAh/OmsZ6DHAcIpEc= +github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8 h1:Ou0aiKOu6BYTWz00dr4INrz3nhxMjoI/b6pQQJlDkQQ= +github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8/go.mod h1:o/BXYX2/9RZSc37Y/EoU+HDon9fmaW0gRJGzgS/vwTE= +github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8 h1:D29pH2YgWtzOD9ou/mdfjKBmdfj78MLwvQ31nt/Efx4= +github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8/go.mod h1:aLt5K9dn3quueZs15lzF1vXrGXPDJbh0Z4h6+eIFf8A= +github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8 h1:F+CHwOPvtr8tdvmq+0WeWtQQDLZXXGQ3k0NlpFX3Uto= +github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8/go.mod h1:fuCM6Dq/mYjwrMMg7WYfxGLS3rtm8WQScnb3J4TWQWE= +github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9 h1:x2Sz/Um2M2BnkZU7MTlO2M8BDpqGU0ElYXO3WZAOYMQ= +github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9/go.mod h1:TSwz0tIKm7gbj+cM/btARXRF8VSPQ+1beyfpTgkLxNU= +github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8 h1:zN+9zIaiaafk0NFdlNLVEZZLo2hQy+eOKzOwfencs/w= +github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8/go.mod h1:+jjXeB9n2LaUuryhoI5Hfy0xaqYmbe2kqDh0Y9bIvkg= +github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8 h1:/ANSg9t9W+OpcfRCXiRN9q+cTYqtqP4NnEbhfs3O1f0= +github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8/go.mod h1:/GPiKI3Ii0G/JbayHwyigiWDk+zma0Vuinx/5kLxHCs= +github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1 h1:agfJhI+vVurH9RG0FQKcww3UjQmCa62C1GWcfxoILjg= +github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1/go.mod h1:poDAID6Zh6NEzgXCwYymLhkTQUE0V9uY+84phLMICiw= +github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8 h1:y1SCCbaLA4yXDOR4vMcaS9IuJYDcqtgfL8y7JW7V79s= +github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8/go.mod h1:mYzkMbNHQ0Q3XmQ+k2EtB6j0HixPteBRhuVv6za+xio= +github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8 h1:fpcjjRkXNumgSgOy12C8psBT+DTNQ+qISSRHnob9Gy8= +github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8/go.mod h1:XHapW9k7Kknj3ltZK4y61x0ZZgzzTYeDsb+u54AEeUU= +github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9 h1:45fUrgNmm/p7K3jZdUUAmmh+NvpjsTtgceFjDjKHpt8= +github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9/go.mod h1:YKkFAyQpB2INvqQCRqund14d8HOwz3r8lA+9ZwzoPWs= +github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3 h1:dCHr9LHyvstMsKpvQE416MJZCsT0xwsO/JBdTkofzyA= +github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3/go.mod h1:Rb0ZVYhF0yOeUKciNUNOsUwMwnlZCod7zyiF2+C7qVQ= +github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9 h1:PrxvtpRaiYgMuIxaiODBsX1rtadAuyLw5EZVticjSyE= +github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9/go.mod h1:B54u0dzMmGt47kJ98a/lFwByBscvrIWT2HX1p/szNWc= +github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2 h1:DxMFMEcH8cXMB2KSfDSY/QWQ3LQMBbCRVS9OxB+D3s0= +github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2/go.mod h1:mTG74QNXnV8f0Qr95VbKEUfE4a+9fh8rYTDwa5uvo3Y= +github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3 h1:ybU+H4GCd6yQhe3HNQf5YCsJm5yAT0lIXxey4azQZWE= +github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3/go.mod h1:nm1OoNlPmGfPdBvK/xqNvh3aqnsCXu8N3cyLk28kRfc= +github.com/aws/aws-sdk-go-v2/service/connect v1.123.1 h1:H9wHtuzWPx/xjSfZt3nZ9eAeMo8h+v5sX2VNqhzUU7w= +github.com/aws/aws-sdk-go-v2/service/connect v1.123.1/go.mod h1:nZpWdBCj5AvfqaUYTZiP8RrF0M7og3aIVhf9KoQFqNg= +github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8 h1:hj206zH/z7il1iX09N8S46Qzs8k6v6sacJrIp1Jcpj0= +github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8/go.mod h1:MS/Qch0cTw1+b2VeFNt71D8krYxjuYlmWvnYV8Nof5k= +github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2 h1:cVkS7f2tetfZz55XO64+GlDecSJslcxVrwJ8nZVwcpc= +github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2/go.mod h1:mioqxoTwIEg+SsUeokS0iyGriDQ6O1oWr9ONVLDy9XI= +github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8 h1:tNRHv8OXTnf0rlut9Vp3DSpI/j0C4SFOK5KWBe9j1d8= +github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8/go.mod h1:mj6abMUDCI9R5smS3ZLCprpxBvjV8ljxROlA0VcEXpQ= +github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0 h1:lQExmRiGGDTUBi5C7Q/SmwbL7xfHJqkI2I5Q40SMjJU= +github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0/go.mod h1:5WHHpqKGSnRAIbRHXrslVwNyIx/oGCPCz7swI7Iotbg= +github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2 h1:Ek+aYopz3wADJJft8YOHZYVZiMPK66laU/rKvl8pVTA= +github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2/go.mod h1:yvizjKqbFymZRI19hE6XLehO5hULzK66hthy/5kOvG8= +github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1 h1:a+ECmdBt81/vUkUDBKI3xz1tz2rVRegE0TxgNYbIaho= +github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1/go.mod h1:qs2I0CqRjF/G+QDX4Xvb1Pcu2Iq4vFgtEyU2E4SCyhc= +github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2 h1:vDCXOsWjVNmqSYO2mq4y0qCfSuA29U8SXNQpkiwlPl8= +github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2/go.mod h1:bquWddnSuIbQ4g5Q+DVSLa28hVAPhUYXYPuHVzY8sqE= +github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8 h1:iuuNaEcx10pJuk7NRtKbf0bdrbzSxe2REuIs5TQGHxA= +github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8/go.mod h1:vzCG7ZitkB3UgvWOqRLY6b0g+u+a7r/LgDWmGH8KL5A= +github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6 h1:PhreObT3/aVbIksowe7JnTZulAokeRe8SKA7TihpQ/A= +github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6/go.mod h1:VB/5KWRgeksKAmKb/+BC7XQQD7aClJDQsjpCdAeuCkg= +github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8 h1:qHt8TIRSD/BdInSc/F1cnzelofxHnwCfadmyCB9AmQc= +github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8/go.mod h1:EEgyHTHCQ51KOoP5GbrY96UPSyphzzmI72v1TKwThFo= +github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2 h1:H/J01pCpZxxkOBeiQz63rRJ6drRrm/Hw4XV5KXxFqPg= +github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2/go.mod h1:hvXfW5IP0GUj9DG1CPW/vkgUowsgVQUAWWrHqoFuovI= +github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2 h1:piTDOQkhX+rd0DoLJkd4kycKM1VZVDtjN1L3vj86CAI= +github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2/go.mod h1:aDMOdbc07wZdcKsHas2817moI7tI/j7kd4S8F3sXuhM= +github.com/aws/aws-sdk-go-v2/service/dax v1.23.8 h1:pPfeBjmh883HOB4RoEuCsuDKP2+A3jdoo1kdqFkarnU= +github.com/aws/aws-sdk-go-v2/service/dax v1.23.8/go.mod h1:tX1mw+xkugF10zMxo//EelMCOLwO6wtZJmgxx6EQwJM= +github.com/aws/aws-sdk-go-v2/service/detective v1.31.8 h1:ob5yrFpeMKKUfsPq26DocL2WBHa+X6/AKSQA4/0U7eY= +github.com/aws/aws-sdk-go-v2/service/detective v1.31.8/go.mod h1:OGWjfz5vd3gaYgqzfT+NlQgmxAm6IM3FGg0CKkNIsNk= +github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8 h1:FV/K4EqSdF68msYBSfzEyCScODJREO+ccNJxy8xCXC0= +github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8/go.mod h1:nkp+PfI8vKCyafU0D/BXPJTIhhvL9nWr4zZ4Sy0RQ4c= +github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8 h1:OIikL5f5QlXyc051nPNKrPn7uzapRvsrtwlFUxnye24= +github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8/go.mod h1:6YW1nV0873yX5+jiffFVhx3v4CLJLZc+50ZV3yLskn4= +github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3 h1:KPzMuKWf63640pBF+TYm0f8VzIXoS7qxETQyD7bz3Rw= +github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3/go.mod h1:UlAbS/TuMovrezlW21TdxX/rmpA49XuuvPSZnJzjnDs= +github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9 h1:TYfXZhqtLu0IGIvhaYtdpUrUPLPexeHP3A6XWHkzUII= +github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9/go.mod h1:8H2cV0KgyOajxRjmn1aVEKdeFoYGCfidVp9fiiSDdBQ= +github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2 h1:Xh5CXdydZM0OJwTQWQcRHSCz8Mv461STCe8FhhhsBiE= +github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2/go.mod h1:U/tY2rV+/oZ2YsUUe49PMoz9XKbN0+CQHzT5JhbXyBc= +github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1 h1:XqXErApKL6tpNbg192sfCLWaO37w9sB3RS5xB6EjKFw= +github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1/go.mod h1:MQ9uU7FnemGLCkLCfl4ikGvq7UVduD169Kxft07J4kw= +github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5 h1:JEGaqPMALXNvkwMAQFaWHFmsJeEQxokYxklxnYOo66o= +github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5/go.mod h1:USqXLryQqswYCghqSEITP/qIKwMGaFiMt7CohdHwVIc= +github.com/aws/aws-sdk-go-v2/service/drs v1.30.8 h1:lTmz5+1IUklrXFIay3glpkS4UG8BuojaqsR+zfE65Mo= +github.com/aws/aws-sdk-go-v2/service/drs v1.30.8/go.mod h1:yD3q/bZ6VfItjUSpsif/LX2cutVFBwbI/U03vJ8fctc= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1 h1:SOJ3xkgrw8W0VQgyBUeep74yuf8kWALToFxNNwlHFvg= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1/go.mod h1:J8xqRbx7HIc8ids2P8JbrKx9irONPEYq7Z1FpLDpi3I= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2 h1:4RRNXH6wQUs5ovRx+/R19TbRWb3RVUDs0MYHLxqtd+o= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2/go.mod h1:mwr3iRm8u1+kkEx4ftDM2Q6Yr0XQFBKrP036ng+k5Lk= +github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2 h1:dYe1cRrjqlM0lBmixTAzgCfigqsb4wSiJh2Oj5OvgBA= +github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2/go.mod h1:NqKnlZvLl4Tp2UH/GEc/nhbjmPQhwOXmLp2eldiszLM= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1 h1:pD3CFGTKwsB8TFjTohMWz0Qb1PuYpI78vYU8s5yhLx8= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1/go.mod h1:aHMIyHh+6N2w3CY24J9JoV5ADnGuMZ7dnOJTzO0Txik= +github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3 h1:/nZmlWSgeK4dx3NqLtFUqa3q43PCvDLYyU3cvA9CE5g= +github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3/go.mod h1:YpTRClSDOPvN2e3kiIrYOx1sI+YKTZVmlMiNO2AwYhE= +github.com/aws/aws-sdk-go-v2/service/efs v1.34.2 h1:gV7yKX8euN6W9vXiPutShochfx5ren706E9D0qsoOjo= +github.com/aws/aws-sdk-go-v2/service/efs v1.34.2/go.mod h1:SB5IpCGoPDDTpf7wMLVtq5MRsad+vqIMONmJf/l4nqY= +github.com/aws/aws-sdk-go-v2/service/eks v1.56.1 h1:TbZoGON9WoQSDC86lTA+eDCXTCqJElgM4TTiqdVcSG4= +github.com/aws/aws-sdk-go-v2/service/eks v1.56.1/go.mod h1:kNUWaiotRWCnfQlprrxSMg8ALqbZyA9xLCwKXuLumSk= +github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3 h1:q3Yh3C1E+6vDTIzNNIHROJ4AwaCACBo91o4GIakTCFo= +github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3/go.mod h1:XIxNB7tOhWeEBxjR73NTGrQ6tTHM2YBCKS/5CL2YKqE= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8 h1:A6w8FeT/ZD67gHTlJLdemN3eZbvcVXOcmeHvTLbkeCY= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8/go.mod h1:hat9kpRr8nmdYKvacqWSpRGIbH8pDvwj68cO6zRkOpM= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8 h1:WdcbaWZfYERsexqm1btE5R6iowdJsTeNxDbwfEMEriQ= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8/go.mod h1:NhhK29UDwO8PSPb85Lt9bPuZaWTOCXdGP+8LK6Y8D/4= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3 h1:MeAc21VH852SMTbtMEHhwEaL6YsxOL9SA0wxVyiN6+8= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3/go.mod h1:vaGBfWQyju9wbTBd3k0ujKFKKE/UfscXZwS8f+j55QM= +github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9 h1:WqiAJgy4lzv4FpNRtY94Zh692zaGtiroiuP+MMCTyN0= +github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9/go.mod h1:RGpS/LUXtCHiTnQC0xcsuQidWCanPCjMRsvYd3O7AvI= +github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8 h1:1hkU+GDIgxHES3K0uaO9HC1hL/B+FkXULR495C2PSm0= +github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8/go.mod h1:I0CkwEHiAiFiW/NKQi+NUyY0qjlix4uup9GaWhN3c2k= +github.com/aws/aws-sdk-go-v2/service/emr v1.47.3 h1:egH3Zq0gx3FgswC6qBASuJrw7Nb1kB+xD4Fdj01RCDs= +github.com/aws/aws-sdk-go-v2/service/emr v1.47.3/go.mod h1:WuAC06U38KdHRoPgTyr2A9ILBc/2wZUxULxPd4zA/Ws= +github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9 h1:41HYpMqQGJzfJfRirTpnDkqkQsYIppIw7WmagXhQZK4= +github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9/go.mod h1:nXFpwY9bqIPDCv5t0d0iST0DHlRb4iIsIG4BfAyevGE= +github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1 h1:kywRSDFKOVFPH6IpihkzsezlguwDjUqFvR3AGYbkDQ0= +github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1/go.mod h1:B0jBD6uiycypay/53cErzYD/SIbb6X/Hm9aTe5HL1m8= +github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2 h1:es3A4qacM8ygOFqQwnhkHAjlmn3ZQjAV4hs1C8aroqM= +github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2/go.mod h1:pd8aAX/C3BSJ4Y0PSF8KoOpXFP6p511Uu2PObSdhW/Y= +github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8 h1:xOp+ZD5VOvWqOMKk1qF+QHRlxv6QhzdVdtOwbno0Zxg= +github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8/go.mod h1:TTCWa93TXhrb6CtYI69zr83iW7VsihxGPsoMQuhXCXk= +github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8 h1:tqLO4nT7J1SuUm3F/8oNTW2ajvGItVu9APeStZX+Uhg= +github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8/go.mod h1:i2TLGZU7vwN4MN4l9NUa2VFVB25CT5DDxOm60gFMzls= +github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3 h1:sYTcQxkegr5TXo7tuPOdmPxJFX75pdPKi35Wn7i3Zdc= +github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3/go.mod h1:enMJr53++oOWp8UdocZE4avuepzSLlhduTp03AjQuDQ= +github.com/aws/aws-sdk-go-v2/service/fis v1.31.3 h1:Pyde+VIhO71j5j+BXiwA2civiljvIRLkKFpCSEpw29E= +github.com/aws/aws-sdk-go-v2/service/fis v1.31.3/go.mod h1:lMzi+Vbnzlq6fPfIvHPWoX2LHKM2S2EOn5z6Vx71nmw= +github.com/aws/aws-sdk-go-v2/service/fms v1.38.6 h1:AC3x00ZKA10zqPJuq6djqZ4SQJOgPSNJWsMYlmoHP4E= +github.com/aws/aws-sdk-go-v2/service/fms v1.38.6/go.mod h1:B3Vak6cFQfuW0ngCa07XogB2G4UNbPsx2RX8i09HYRI= +github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2 h1:ebMa63iPLHJ0dQgNTu5hJcYtmvr97SgJBMgdJ4Czqzc= +github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2/go.mod h1:cNaIag1SJLzfaYSGY0TY6blDFVpQjRqHfb3NhANZmTo= +github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0 h1:KNBSQcM3wuDev57F/ORYpX51mOvPjyFu3SSsS2CzHo4= +github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0/go.mod h1:vrO+dsUPRzqUFiNr5T/9fm2bCZDcQZ8q46anRzviwxk= +github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8 h1:6J1jxl2VB+BNVlI8z/XoJVf5oCjh/Cjz3T6lqU3V8EE= +github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8/go.mod h1:ljvtU36DYrdMfg8PvFJvJ6+Km6T+Zs5N3r+fDvCMdy8= +github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8 h1:/VXwulp0KVr+yAiagmz7J064zFtyZAS0t7Tz4xsVDGc= +github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8/go.mod h1:wEL5hRUgzkBiUmwGUAWDMDYLK5K3j4Mbpla9l3GXar4= +github.com/aws/aws-sdk-go-v2/service/glue v1.105.0 h1:raq38Qb6iJJtzADr7Z4IYHOFp5E1NVpHDGoTOsGLHNM= +github.com/aws/aws-sdk-go-v2/service/glue v1.105.0/go.mod h1:FyYpmVnMux6fzG2kcLnVwT/swhs8DNtleGIkc8gh63c= +github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8 h1:dZ3qWAilQFEKWYSJSyjSvaL3tl5kwPT9VXQ1GV+cqcM= +github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8/go.mod h1:CKgvdy9Q91eKNQ0Mz8e65kEOzDVoeRGarecs1XNGkW8= +github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8 h1:A73wChQvUbZ3oSqhtMx80BtXrOyLiHRddE+vDz8xY7g= +github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8/go.mod h1:Yax0txZhN3xXq3YeqepuVNK4svEV7kj+AsdoGl+/qX0= +github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8 h1:DJQrTBTH2+0oHKxzru2I0OnNrjTNjbi0lePppIWrqtw= +github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8/go.mod h1:yJAK/nvt910++tfz/fjIPuXSsDrlCFfhOeJ7tYXd+IE= +github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2 h1:G3Zn5O7FPgZ1deY6Xj/W2KeJqGyLZTwOt1t/UR5APOA= +github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2/go.mod h1:t9MUf/xsmtROFhlWE2jMn3HolrNBJQK3C/JdRoKkV6A= +github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8 h1:g9LInxjUDtI+uEa0qrqIEzCrqnrCUC8dsEbDc5Xqo7A= +github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8/go.mod h1:ZQBr9Wj30oaFWK00kpQNg06CZM19GAKyc2iMotrEr18= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.3 h1:2sFIoFzU1IEL9epJWubJm9Dhrn45aTNEJuwsesaCGnk= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.3/go.mod h1:KzlNINwfr/47tKkEhgk0r10/OZq3rjtyWy0txL3lM+I= +github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8 h1:Lg2UE1jqXgvhaWnHbnUuFdFORQLxKbJY4TSU87q6zGU= +github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8/go.mod h1:M5UW9CJQV78QiCxGihlGzwRbAD4B+fJf3y8yAij62Y0= +github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0 h1:nGY1TFaPCz4j/h3xRO2hBt/fx770wVE/pnrRNI8W2Uk= +github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0/go.mod h1:VQkLCCako1+BM9h4q7cDfPeakZiLJJoFY2z/aTpandE= +github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8 h1:Et5o92SeqmgWdmH+htC85Y/G05ysMh0vvX7POcjdNY8= +github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8/go.mod h1:esbcyZItviqB1B7lUKaWPsPo20usI+mxi/RRS1hXwkU= +github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2 h1:CcQCGFVjLOcFxNwW5ZOv0qoL3TZRtiNSOozH5gU4rkk= +github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2/go.mod h1:mLnwoGGkALpyxU8Hh/p7U8jvAqTty1oXmlbQe7xoBbw= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 h1:iXtILhvDxB6kPvEXgsDhGaZCSC6LQET5ZHSdJozeI0Y= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1/go.mod h1:9nu0fVANtYiAePIBh2/pFUSwtJ402hLnp854CNoDOeE= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6 h1:HCpPsWqmYQieU7SS6E9HXfdAMSud0pteVXieJmcpIRI= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6/go.mod h1:ngUiVRCco++u+soRRVBIvBZxSMMvOVMXA4PJ36JLfSw= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6 h1:nbmKXZzXPJn41CcD4HsHsGWqvKjLKz9kWu6XxvLmf1s= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6/go.mod h1:SJhcisfKfAawsdNQoZMBEjg+vyN2lH6rO6fP+T94z5Y= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6 h1:50+XsN70RS7dwJ2CkVNXzj7U2L1HKP8nqTd3XWEXBN4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6/go.mod h1:WqgLmwY7so32kG01zD8CPTJWVWM+TzJoOVHwTg4aPug= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6 h1:BbGDtTi0T1DYlmjBiCr/le3wzhA37O8QTC5/Ab8+EXk= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6/go.mod h1:hLMJt7Q8ePgViKupeymbqI0la+t9/iYFBjxQCFwuAwI= -github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3 h1:uRN467USr5RaiOgScMKkuqllDptKNHBvIPcOgXQFL2M= -github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3/go.mod h1:Pnzezn20O/qGSc8S3NVpy879f5w4bWnYW3iGHTUbgBw= -github.com/aws/aws-sdk-go-v2/service/iot v1.62.0 h1:k4eHmwRX+SDJ0dJengn9wZ6xUw0w0nTN6/J6zj/TR48= -github.com/aws/aws-sdk-go-v2/service/iot v1.62.0/go.mod h1:2QrSORRSY/NYGcTbUdHIz62SM5RlLCAnBcpcDIjg/Sk= -github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7 h1:Wzu7Zb+Xxekp9ncI9Lqx24b8avRoLh4ZaVjUWda3Po8= -github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7/go.mod h1:dT/c5XzdfUmqgbuY2rfoqEoaS4hhhV6bzYKCmHIudsg= -github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7 h1:3+CqncIjYZhQ4dW0MEe3LN48ny4H1OydEIrtN6N/NMM= -github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7/go.mod h1:A8OzS86qbmve0dL7bqdbqy4PcBKWCWqg8gKRHLO9pEI= -github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2 h1:9QFYCHXxRywbd/jvx9wtU73u7QT0I7Y3qAKLgDDIwKo= -github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2/go.mod h1:BwNgy90oNpZ/VrzHTn6y/z2jdsJ2ZK6D5yvvtE5Ft0o= -github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7 h1:HlECOFumfIpk5nRnSdJ6F6ney0vxu9JsLe4zifGlswg= -github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7/go.mod h1:C57nohycrCEMovZLg5G75J/DEZka5WSuOJtfaYqIq8s= -github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8 h1:JtNyNMbRidkQhMY7+ezxSV+l779MoKHpF2O8dhPenH4= -github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8/go.mod h1:6ezJjIOpnDf+Q/BJ2CIITrcdXSvfUS1zwjnEHHPa8oU= -github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7 h1:OSj7D23vSCmeHSp8IQUuSvc57cUi6FwYQ634FgbMdOY= -github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7/go.mod h1:oy7uAjiwfudbkCbOW5nIBNhzPEsQbnbcNO18JgdVqZU= -github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0 h1:9I8Wi0EDviprTdQfgI75ax4mL/A9GAef/UqBst4rL2s= -github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0/go.mod h1:/HuziZyTc3mY3YW5DqgZAnyhFoK38EMCqnASuWrpYoo= -github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2 h1:uHvt8hkpzVedMpTDiLeH99Jsok2hQLk2SrRLUaSSIKQ= -github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2/go.mod h1:hW+Z1zESPAefZ33sgnMvY1ADVCiPI2e8v1vTQcz/MDY= -github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7 h1:QTtbqxI+i2gaWjcTwJZtm8/xEl9kiQXXbOatGabNuXA= -github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7/go.mod h1:5aKZaOb2yfdeAOvfam0/6HoUXg01pN172bn7MqpM35c= -github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8 h1:0h1EmAZ5VTdoteDEzE9OlTr7OXZGO56eMxOGGceioBE= -github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8/go.mod h1:c9hLEK1e3z+ruMXThiEyqMrPdpPOxRw4yg3KZ3rHYl4= -github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8 h1:ryRIc8QkgWcMqmCSBcnYkchdLeDEOtCEjU4tJKCZv9M= -github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8/go.mod h1:vS4K9dorERPC3u8+nXR32WJfltj6DCrx/B3w1njvJUY= -github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7 h1:u312E9WSNS3aL0fMkD3R8TCrv6RX4KT1F8I6itnQe/4= -github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7/go.mod h1:pdoRfafdWneitPJSDJEIUH3npcWNF0a9ReMblcQC+hA= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.7 h1:dZmNIRtPUvtvUIIDVNpvtnJQ8N8Iqm7SQAxf18htZYw= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.7/go.mod h1:vj8PlfJH9mnGeIzd6uMLPi5VgiqzGG7AZoe1kf1uTXM= -github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1 h1:5sp+bK2sVPXf7KifZ4B+0GPKt5ckqraD8YbUaRk//CY= -github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1/go.mod h1:TrZ6XeQ86aBjOsy+ae7RKlYWh3TQ53QQcA6YhtFadYk= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1 h1:q1NrvoJiz0rm9ayKOJ9wsMGmStK6rZSY36BDICMrcuY= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1/go.mod h1:hDj7He9kbR9T5zugnS+T21l4z6do4SEGuno/BpJLpA0= -github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7 h1:nMYxTZs0WjVLEyTEqRtD6WR83nMqF65uPHSv43SrFDQ= -github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7/go.mod h1:6g7hO7AFKCy9KcvxJFPs8m6u/YS42+AXnI5G6v5amyk= -github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7 h1:ctsj2+1N2CfpM2WOrnSKMXgHIjoxqm8LbQ2zs/ecZWI= -github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7/go.mod h1:jW7hiTAbVhBgyur3096wz15sT2YEZYPyVtO4fRWgZc4= -github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7 h1:1iMiIfLc8yYCQJ4HwxLkD9L6vU5hnTcNoBI8yoanyR4= -github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7/go.mod h1:Tj5DuyiCjIK6WkzvyXYy0PVq24dK+6CKvon670Q9Jag= -github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7 h1:qtiX/fhTL1mrZNOM7KXKgaiHCMSmRfclUMtI2ep619U= -github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7/go.mod h1:aH2CD/bGJKv5nBMc2S3bYIapITSSZ6au6YJERm5cEdo= -github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7 h1:pVO3tnwny+c+XIfNkmrReAkNd4Gyy7TVvro1ZTfzY4g= -github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7/go.mod h1:yveTbfkp9hhabgl3aXbd2/AvWCgJRi0O+mhm3REyvE8= -github.com/aws/aws-sdk-go-v2/service/location v1.42.7 h1:yLpR7rDAh1mSazJyYc2bNzVk8EMuertx4ZCsDzSFeNg= -github.com/aws/aws-sdk-go-v2/service/location v1.42.7/go.mod h1:lSuujyYUNaI4cHRzTha04mEVGSpIW0PM9AiTemTvKDY= -github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7 h1:wyvJFktMUDLYX7q8LpfuvDS50sIR2QrcK2OPaoJZL+Q= -github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7/go.mod h1:xVdP3fbrhDfhVNugkmC2aY95Ea0od8j0cUUxoRJ+UP8= -github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0 h1:3gXxbz0y85XUK+5fY3reEO2jgZ7DdCnnaNqje+LSTQA= -github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0/go.mod h1:XXdV0w3yWrEmBvE4iZVAwWEPtQD+UrDIc3j/ETsI5+4= -github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7 h1:mlaPITmZnYi8bm20Ql8tTPrSdLZc6LwdH9RYDuAgf3o= -github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7/go.mod h1:wya8VTBSC9uglnFujLKT/21M03qc+tnTUHV3fgW6aFM= -github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0 h1:uF6NHhbMcpWPb04VCN+77kt4l3J8VdUUSP4uhy30Eqg= -github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0/go.mod h1:NyaKp3HdG4vD6gNfnIwGsl68/4vneSu1cok7yZAOB/U= -github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1 h1:O0PufOavkptAta6HE7q128zvKV4jcZ5PbyyIRbUsWI8= -github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1/go.mod h1:4B8R+NlIvQUF77Rpqe2r4xQceaUVXCFYfbJ2ASlocbc= -github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0 h1:ahj6vblksLY3nA2wPp9PIM8Z4jVvr3ePQKH1De5I2fg= -github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0/go.mod h1:3941uJpLJirB+Xc5CM5rsVMeQuNkp0UMrdswdqvOelQ= -github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7 h1:NEDXmP4JZxYVPcU+rvIcLUPM6kEhCS2lw09weM1a0WI= -github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7/go.mod h1:E4wTOblO64Lm0JHaNwxx1klyfyQ3rKje2J0CwQ6Q4XE= -github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1 h1:F+do5xWXqiQhY4sVpYwzVxrER5h6IKfedgFJVuAfpF0= -github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1/go.mod h1:+vDyRn8cichafKg5NVt3+HC81nasKOkFpJ0jxuTL6J0= -github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7 h1:OK3XNax+Pg6cKlgOSOs3Rp/zGlq29gmQQVOMv6Frh4g= -github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7/go.mod h1:4Cz00WLWNC0c79Y1Rks4MH+ezS5zXGerYY9DryVWRNQ= -github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0 h1:7HzWnEIEXis3QZCiGpI0FwM4CzxKr82dc18cTqE+Ws8= -github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0/go.mod h1:nv31Ugm3PeTj/1NoUT1wlJpSttTV9kpANgSGMCOdTYg= -github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7 h1:bqyymOULuOZX/dfbQymKhPDJ25X9w+vmGs+ZcNtTCB4= -github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7/go.mod h1:1FEu+ENxyHxLkiMtgvcDscPNRHEkj+p9cTPLRqL1A64= -github.com/aws/aws-sdk-go-v2/service/mq v1.27.8 h1:xGcrYXOE7mCt14ToL/ZibXsBW0DhReBuollS35Ci7pQ= -github.com/aws/aws-sdk-go-v2/service/mq v1.27.8/go.mod h1:EjYQlgBAl1BVTGEpjQSTTn8q2IaBYmKZAMGorq+J8N8= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2 h1:qCqdF8H1+aemTiY4A1vNygeiAgqKGl3nNnsztBPa36w= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2/go.mod h1:jMA6WUWuLnmu8HD8/bbhF+UsqZZDD21Sy50KeCYk4Us= -github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6 h1:4XpR4uxdYixFnQecBQ4bj+OVTTIllaVLIdNZT9PVGXU= -github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6/go.mod h1:JeJv7jf5G41lHVNiZ+24s7Frzg8k9xYCGborBe0FdNw= -github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1 h1:2jejkFcjwRmm2w7h5em/psgHikBl+uc8F9qoFdyS5F8= -github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1/go.mod h1:GpKZo1Lgbubeuqk2To4Tr1E5DBHj2mGrl2tuhysti2I= -github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5 h1:Vn3W94E0lKKVu8vgSZmnVoP70cfsIRrguopbSC0L4DE= -github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5/go.mod h1:b3UwYXVSlxwwRl8frZR9eXRc3rqisD4YyHv+rZ1Xmyc= -github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2 h1:wcJGFyxaX1Msm6c2glpFYIXr9/+Aq5GP1gLX7NBPoNw= -github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2/go.mod h1:EWCvUfz0rkfBfd/2s6Jj8DBT/PilQ/ClD/EByti+JKA= -github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7 h1:jq2n7Z+SUcKFK8zR4lmELte9rgX59HtBqQUBg2DhTYU= -github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7/go.mod h1:Sl6QugaUidIUBpGqzz5EHcwx6cT918H/mnQKNHTyAdc= -github.com/aws/aws-sdk-go-v2/service/oam v1.15.7 h1:gy/9lznIWLyAxokvjktoXNHpmLz8f7Fl/jUrdXdWbGk= -github.com/aws/aws-sdk-go-v2/service/oam v1.15.7/go.mod h1:Rh8Jc91inXNMdoRQk/ETf3waaqde2ZgaBFMyUKC10ko= -github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0 h1:rjJ9MjX7jObSSxrBK1IU7bkHD6iudbhKTZie4eSHoBo= -github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0/go.mod h1:f2qp9ZzFIyhStNsVqT09BQbw5K13qEYYMTB9WNNWtDs= -github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4 h1:+igfh7CHy9+DAnTtTsC1ZIcfkCn/8r+ESK+/+NQj4bk= -github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4/go.mod h1:pyPPjpS52Akb5g9Y1Sy1eNqWud1ZDDjhe/cLrBfrvyo= -github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7 h1:JHabLpXH1A2IkaLYccQwC2TBnKLm2b3uSKvAu9N39YE= -github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7/go.mod h1:ddJLpQoIwK18NaELU6CxxgLnzYdAyzfGEGBwudjbJgo= -github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1 h1:hwEq/kMSSM22O+zD8Di/lmyU/YVT4EPybIgso87KbYo= -github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1/go.mod h1:SVY+doFrL3KTvVMWzFLKvD7KYQ6GQfwNRPSQS7eA3cA= -github.com/aws/aws-sdk-go-v2/service/osis v1.14.7 h1:K37+ch2PxHJVWg1NRfVebstqZvicwfPPHQuXmwznbqw= -github.com/aws/aws-sdk-go-v2/service/osis v1.14.7/go.mod h1:TRjW1OYREjDpa4Z8pn5Axm6SFPdP2FVcy+jX5eyX3XY= -github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2 h1:OpS3l/leIv8pbK1zaeoZ5WzzTojbLN8zdK8inc37bMM= -github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2/go.mod h1:5X4a801ISjSwj+2Wq5FVicytit172Cdy7Clwia8l3Q0= -github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2 h1:FShkGVtnQNoezF2amvLfP47k7t/TcwwnXPihC1dpw5s= -github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2/go.mod h1:mGR1OiBn//5KaxFrLLMwoMDiMeKD07ifB/YaHpYFsFI= -github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7 h1:LOvtIRHTybPxw6Q57GpPxmNaD1dn3I8oK9aYD2ZBRmE= -github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7/go.mod h1:3BgmxWQ8Z4E2uyTWXp610jzZ4ohM0vk4ECRTiquMusM= -github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8 h1:Ir7mcDtBOJObLKHl/FXB2eRPuWgsDoZNIq8lfVNuJ+Y= -github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8/go.mod h1:LI8eDIEw9SSDuQp2D3UDB6+LZtfs3oraCFoCuf5NHQE= -github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7 h1:SZq67/WO334eVG9JqpGZ8uT2ozLV8eX4KWXOXncVmT4= -github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7/go.mod h1:8vy9a2PeHCuidO1JTs7iII3BB9WHA4VRlpgHP04mR8c= -github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2 h1:JijCnewV7KgxgzohNUqCrkH8AU1asAC3Gna0+O9lC6Q= -github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2/go.mod h1:Aj5x9nXOR2FuuPVcPVlEQnEaliM7Sy08MKxmy40ZQck= -github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5 h1:W0cvpLbDGJIctaEWbClBT6oLNdiUUsEmq4CMm00cLMs= -github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5/go.mod h1:D3p7y45dr9Vgx5sIVD/PxnTwIcbjmlboTHv4GMP7Qsk= -github.com/aws/aws-sdk-go-v2/service/polly v1.45.8 h1:qP67eGQ8myAxyd9+ZA6AZc0nYFmEOBwi7zrC5Aj0DFg= -github.com/aws/aws-sdk-go-v2/service/polly v1.45.8/go.mod h1:Bn1paZpSkDKa1vVJcx5DnDZOFMxMrgR7s74igJuhMTk= -github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7 h1:9UDHX1ZgcXUTAGcyxmw04r/6OVG/aUpQ7dZUziR+vTM= -github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7/go.mod h1:68s1DYctoo30LibzEY6gLajXbQEhxpn49+zYFy+Q5Xs= -github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0 h1:Kso/qtJxdA8weHZiidLoeQDn5xYQhjRGd0QGtR637LE= -github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0/go.mod h1:cmW8VmRWKpSEhqy70H3+QCFfHcTguZMZphBIdqcWsIo= -github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7 h1:TWJzwB7S/SBBVitz/0HtdB7pqyf1iv9OUCQ6qeYob5Q= -github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7/go.mod h1:8AyevnOHnUsSNTlqH723oxU2hGgIdhVsUjtDS6JIi8w= -github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0 h1:uQXH8RFPBteSygrsYvNumyFSN8USfdKSfpo8sIGwbdM= -github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0/go.mod h1:GE3TPXNfQ2OETAUjwhnFl3CYWqzF9SPB1sJjeUSOkJA= -github.com/aws/aws-sdk-go-v2/service/ram v1.29.7 h1:c6XYrBzh3J8J5Vaxcj4fbfuzDtKv7Blg/bYmd12PG44= -github.com/aws/aws-sdk-go-v2/service/ram v1.29.7/go.mod h1:Znaic26hqqKZ3mmG+UA8aLdnWrOYmkdHUd5KoT/DzGY= -github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1 h1:4w3T6RGy/jrGrup/o9WwtVXEWbwbL/up/+dPaGR5IfU= -github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1/go.mod h1:R1qdIYNn+b3mrEkq9r7jM7FVpgGDeOkeYVr3Poc+95g= -github.com/aws/aws-sdk-go-v2/service/rds v1.93.0 h1:jIqOqvzMvmcHgwjPwHvxPCiLV1P2+hPoBwEH8wkfbZ4= -github.com/aws/aws-sdk-go-v2/service/rds v1.93.0/go.mod h1:ADD2uROOoEIXjbjDPEvDDZWnGmfKFYMddgKwG5RlBGw= -github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0 h1:4/hmROBioc89sKlMVjHgOaH92zAkrAAMZR3BIvYwyD0= -github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0/go.mod h1:UydVhUJOB/DaCJWiaBkPlvuzvWVcUlgbS2Bxn33bcKI= -github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4 h1:A0vlEMhhjNwiDuSeyqCV5E+nKi71xB7JEZ3zmSk9C2o= -github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4/go.mod h1:D22t6rKMIQkle+JZOeXSyPbhluGCmp64qfBYnJciyNo= -github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0 h1:g72Z/eRmA5dK2v6LCw5hwPpCLI36bbgyIQkUS4KlCPM= -github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0/go.mod h1:HR4+m/4+W7RiaFMme0p6Y5dV7bDKhAIn8UiiZfWJVXg= -github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8 h1:K21+kYo7APUzqhc6pvCxHWAGxdyaxJqnEfBSySbFlGM= -github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8/go.mod h1:LIrvj+qa6+K+FfiOFv/DXgmBxDU/LCZebFYulAITgps= -github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0 h1:/5/8lHaUP02qAlDUnr3mDMxnFvtOxx7OvZkwvt0JsIE= -github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0/go.mod h1:6M1A4+fuybF+twN7Ch53fSEb0jdQAnDl7SjEQOdJQrE= -github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2 h1:vqsk41T4OS50+uU4oYh6YWXjX+wMV8j6fbxMD+xkHXg= -github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2/go.mod h1:TsghsVk15IIlBkv5onzATu0Efu4xd8Xqh1QsQRCFoQU= -github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7 h1:gj5YZ+wn0LpNlqapkn6mEc3Af3w3G79RPh2eT7Os/zc= -github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7/go.mod h1:XngsyfRxK0KbWSC3WIP+YacPE4HoSm4GDpRWiwtQAfQ= -github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7 h1:xQUVjSepDh2F1BUH9Fyxam3YLnYpehb4qzdvdo6sBcY= -github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7/go.mod h1:XklDWgTWh+O/pQRDMSmh6AJaTFYswRsQ+o5XjwBP2+c= -github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7 h1:M49WXIllz0oLeFxvvEfZvb+FPMfhN9nnDH/Bdiyjf4k= -github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7/go.mod h1:cb8Aygy/+Ap36c0StMfVnUBCLked9v65w7i/ShJLTLs= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3 h1:pDBrvz7CMK381q5U+nPqtSQZZid5z1XH8lsI6kHNcSY= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3/go.mod h1:rDMeB13C/RS0/zw68RQD4LLiWChf5tZBKjEQmjtHa/c= -github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0 h1:D7xRgsQnKiC/BQOVfG9DrsdRo2PIPwCwgHb6EpKLjFQ= -github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0/go.mod h1:c4Zcr9bz35UJ07RC3cR/zBdpFn7ZjZqy/ow+oN0+NEo= -github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7 h1:6SZ8kRmQE278KIJXq4cLdlOgO7nvlxgn6BNZRIIuyFQ= -github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7/go.mod h1:RFwYVDBuEI0U+vxTP5m5lGgGe9Wo2kagynHfxTl2fWU= -github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7 h1:/NwKq9S1DBMAIYNamv9kBz0fwuqnILphCnilPMO48Yc= -github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7/go.mod h1:Qalb81pBJbyuXB8Z1JbrOs8ZB8pbLwTTfR/L+ssPP2k= -github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7 h1:uozag7wGE9PbM/rESMnnXkBqPpOR/UtSpUSUB5Knl6M= -github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7/go.mod h1:aC09Jm/A1wGiFkMs2BDU5IvGL6V26xIgJKQbM1VyXrA= -github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2 h1:9YaCGPw0s0qmxlyPujSe6LWqmtjfouTIRXrEtiJyHaw= -github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2/go.mod h1:m0CMmlFRzCrscSzjkH7GOPstcuKhgJCgK2153O2bP1I= -github.com/aws/aws-sdk-go-v2/service/rum v1.21.7 h1:AEl97eESj/H7fjtDH1dNyUCXHH2Dj16o2JYXLePaRH0= -github.com/aws/aws-sdk-go-v2/service/rum v1.21.7/go.mod h1:D54Xit4pURxcusZV7N1/J9U+/1LSTA2wmrAb2zAJhdA= -github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0 h1:nyuzXooUNJexRT0Oy0UQY6AhOzxPxhtt4DcBIHyCnmw= -github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0/go.mod h1:sT/iQz8JK3u/5gZkT+Hmr7GzVZehUMkRZpOaAwYXeGY= -github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0 h1:tH6HJdKj1O5N8Uti8D2X20JYoDe9ZdC827iY92U+Ooo= -github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0/go.mod h1:sAOVMYapLSs3nCfdQo63qfVkKHlu97oqHDPrRbqayNg= -github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7 h1:yUuN4xIlI/2bUqniq5OdIw13FIGtUdPhzU4dzl2v6fM= -github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7/go.mod h1:yCIumXPHLHsjmrD8P9UvXFVT0R9R+Wlqut71bW5+ZY4= -github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0 h1:akXaBXvSIT3ca7Ojnc1TX+2pTK6lhyodZTYTrdUD6Vc= -github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0/go.mod h1:X85zeZUOEsqLnH/CShIydM9ANVMwXHL1A/pvTMSQw6U= -github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0 h1:keGexhxWOl6TmtE3QI+ofpgFIgdMLc3lfkwgjuSXe1o= -github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0/go.mod h1:LoIh7abCP1rQng1kxJVJOTux55TaYN2tVN7G+zNbhus= -github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8 h1:/3jd7Xm88RYeYpfInSUMCLF+zVgfYK8N5xWPlj05vS4= -github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8/go.mod h1:hCwaxwoPRJmODF1jv6HvbUyT9q7Ak43LesgkvNvZ0PI= -github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8 h1:9TVRGRx70yb6sa0QHQiASkQJvi/7yyHjSgacjqtuoGs= -github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8/go.mod h1:e2l9QQlF3fXpXQp/eOaiAY8eVIk/JZX4Ood3FFMSGa8= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7 h1:Nyfbgei75bohfmZNxgN27i528dGYVzqWJGlAO6lzXy8= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7/go.mod h1:FG4p/DciRxPgjA+BEOlwRHN0iA8hX2h9g5buSy3cTDA= -github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0 h1:nMhvHZ3rqAVJEf6nQzhPFJxd1Ta2V5irglgO6LxefZQ= -github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0/go.mod h1:vcK9C11qfED/CA+tpAVXNzUNdHMIi6YkG2SY4rJeWzQ= -github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5 h1:nwqNHhr5lUPJu7+xguOlyHzT8/mWvzq/sAalls7Z2lg= -github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5/go.mod h1:5ouEhyGzNtLjT3iWieBp4haVCzL3O+L/WACksBRvGmc= -github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7 h1:nwt36WJvLlHVvWsMJ6I9kXL9PDdHymiMX1wGbC9XV70= -github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7/go.mod h1:ebAPCdcVdlTh+1dJqKJZ9nqaaW9fvVmUsDhgd5mu5uU= -github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7 h1:5wifyBACWZHZQ2Qgfs4rhJn5+pDDwLADqPKZDjdrhuY= -github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7/go.mod h1:yKI83wCV2CPuFQC8xrt8pzAiemWUsz7NKFZEOJBO+Og= -github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7 h1:uUMAVnxMbdZNkIYjSa0x33AQQ7d/FctnXacslwqHV20= -github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7/go.mod h1:6lOlu/wGdOPV5TwZ4gPZWDb0y1PtzN+jaUWL++ocCx8= -github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0 h1:e1QcVk0DcUPLPUjnBC3A+Z5kvDc0Sqp3jWQvhjGEwSE= -github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0/go.mod h1:YMM+e0OfZQVBpTJs+WNZWP/hdodeWnepXgancR5NFFw= -github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7 h1:MpCqFu4StEaeuKFfcfHBr+a6I2ZG+GgiNZqKa5gBHI8= -github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7/go.mod h1:Idae0gtkk4euj6ncytZGgDkkyZKmkFasf1mbZZ0RA6s= -github.com/aws/aws-sdk-go-v2/service/ses v1.29.1 h1:2e4bmSER1FF330Xu8p0nwnV4Ctdb0VzLQPUV15xs3iY= -github.com/aws/aws-sdk-go-v2/service/ses v1.29.1/go.mod h1:axmD03yvc8MIBcQkETvptcdw+wySwdc8MpYzQixku2w= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0 h1:iZSAegNa3SPiSAtEdgk/YjkvxewlWZmFmeV5jRWKors= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0/go.mod h1:3HwKVNBED+1798uQndpI+aYLKjw7gutYS3rur2GQEDY= -github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1 h1:EsBALm4m1lGz5riWufNKWguTFOt7Nze7m0wVIzIq8wU= -github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1/go.mod h1:svXjjW4/t8lsSJa4+AUxYPevCzfw3m+z8sk4XcSsosU= -github.com/aws/aws-sdk-go-v2/service/shield v1.29.7 h1:S4nh0xUMZyNkhm7R5r2ITaa966JUYklMGug5LQHWefk= -github.com/aws/aws-sdk-go-v2/service/shield v1.29.7/go.mod h1:YebUyWBs2+7W+ybtLOJp/cvCqi9pqIwS8J2Zkn70Tls= -github.com/aws/aws-sdk-go-v2/service/signer v1.26.7 h1:lFV4EORSh0nyu8KkVp6Esw9A4nQqJ7kKdJT4IB7ods0= -github.com/aws/aws-sdk-go-v2/service/signer v1.26.7/go.mod h1:SVmnmYEocWBuQQhmyACYG1nDoWaMUpBQsgUkPa9v6WU= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.7 h1:N3o8mXK6/MP24BtD9sb51omEO9J9cgPM3Ughc293dZc= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.7/go.mod h1:AAHZydTB8/V2zn3WNwjLXBK1RAcSEpDNmFfrmjvrJQg= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2 h1:mFLfxLZB/TVQwNJAYox4WaxpIu+dFVIcExrmRmRCOhw= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2/go.mod h1:GnvfTdlvcpD+or3oslHPOn4Mu6KaCwlCp+0p0oqWnrM= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1 h1:cfVjoEwOMOJOI6VoRQua0nI0KjZV9EAnR8bKaMeSppE= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1/go.mod h1:fGHwAnTdNrLKhgl+UEeq9uEL4n3Ng4MJucA+7Xi3sC4= -github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7 h1:9C399gf+xBWcnc88jYMdJXuDIUD4Cx0GgWgNwLkw7sQ= -github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7/go.mod h1:s66Ty5zVYIbHuUl9Qv1jKyGPviLi1JCyMUITScR9eTs= -github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7 h1:oaL9ihEn6IFAj7B2TMsHl5FWDD7mtzVP4cLuAixRZyA= -github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7/go.mod h1:V8XcDjqhMDjAKPMbMVHhIdlxq4XmE38TrCnUPqVc7UE= -github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1 h1:VVR6LIH9dWS+yjm65SirUAOq/AslPI0pHyKAcYblDBQ= -github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1/go.mod h1:T8ZPwRPFsWMZRMdGRI8A//XEB8LO6rmg10HzcdJtPQI= -github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7 h1:G/RD7kQlR7Kn+4zkXDX2zNGI35h+vITgfxXR836n3nY= -github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7/go.mod h1:S74L321WjjyiND/iV5Ogc6FTPVKFlWfdvHu4kg3Wl8U= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.7 h1:rLnYAfXQ3YAccocshIH5mzNNwZBkBo+bP6EhIxak6Hw= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.7/go.mod h1:ZHtuQJ6t9A/+YDuxOLnbryAmITtr8UysSny3qcyvJTc= -github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7 h1:X+5QChV4btPAoTpQ/GAcEJ1tCrpO6Y8X4C5CG11WNWI= -github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7/go.mod h1:LYMBcQuhPc6czFaQpYC9JAcEcMf1DNVie4YHg6iC240= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6 h1:JnhTZR3PiYDNKlXy50/pNeix9aGMo6lLpXwJ1mw8MD4= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6/go.mod h1:URronUEGfXZN1VpdktPSD1EkAL9mfrV+2F4sjH38qOY= -github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7 h1:InM09Qs5JI3JIAFhn+rSUCntQYzxCWjxbhO4ClleGK0= -github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7/go.mod h1:ilUpGJkGtgY4Wm/A0RMUualrpaLeNqKVK+v6IneCKEU= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.2 h1:s4074ZO1Hk8qv65GqNXqDjmkf4HSQqJukaLuuW0TpDA= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.2/go.mod h1:mVggCnIWoM09jP71Wh+ea7+5gAp53q+49wDFs1SW5z8= -github.com/aws/aws-sdk-go-v2/service/swf v1.27.8 h1:uOj2sgPJAhL/SGgWo+eXS6BwzSvf1b1aU7j3EXjnk88= -github.com/aws/aws-sdk-go-v2/service/swf v1.27.8/go.mod h1:AvLsUcEcGmH2QWmwosGAMkBqRrsI0Jr2x92clBtul9s= -github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0 h1:1xNsirfhnLd8DKsfPWrJK5T+KCV4CaYH8SYzgiklKWM= -github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0/go.mod h1:S/mI+GqL6A6JNbKqu0M9qKop3LOE6X96OzXdJX0rO6w= -github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1 h1:eJp5OnMaO41jYGwemZSOtmWf2g/TSAYfWEQDfZ6yBP4= -github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1/go.mod h1:izz7C90kWSbYfURLt+atG6pdCvOP3AFjGEznRf0YgGw= -github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0 h1:Cqjh7UV5nW8VXuvpwtlpboGn7az0PjpQuaWdQbBMgzY= -github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0/go.mod h1:oIpMQLOrjkZVCZl0ff5cDgE/zZuFE4PwVb61+2fkELk= -github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1 h1:nfS8q82YuHG8pks28bGSAqy9R44XBLM72jcKDqRG7ak= -github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1/go.mod h1:PJ9MdxcmYoM5bLKzp92fdGooNWHTDMhuC4TGJ3peY7c= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8 h1:chzp64fl/hknlRR9jlstQDB4bYaf848v7KmzUB13omA= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8/go.mod h1:6r72p62vXJL+0VTgk9rVV7i9+C0qTcx+HuL56XT9Pus= -github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7 h1:KJ5CkGw76hEoR66sJRZFgiRGxtybWGuQgvnJ+Q6qTtA= -github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7/go.mod h1:BwUrZHaN6ruqmc8+b12wWhJ6fHqLrkZ0Z214feUqWWM= -github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0 h1:2JFcCNsaT1ykArnJ7B6fFjE4H4OJtT38vHpsufjLvoY= -github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0/go.mod h1:UV0UI3xdWUkyarrq5gViMKtXx4EWBKQsSpPxc+rdJCA= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3 h1:3HJY3Fym+WfG/BQmrrGq5hS80th6Vlx3VM2ZyaH41Lo= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3/go.mod h1:myoi8VQCWyHnkfxRjkM1H5lFQilgGXbU2ulwAVqxeow= -github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2 h1:AccQsc7IIvDFoQ+ufWB04NQ1Ebgzf6rNAbN7fxkt57g= -github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2/go.mod h1:LLTXSn+ChGS/Ejt+akSlR0QBJ2VJVibiKQfp/IovK7Q= -github.com/aws/aws-sdk-go-v2/service/waf v1.25.7 h1:QatDy5lb2iXs9GPxuPSRDogX2HesmmUXu0GCDCQ7exQ= -github.com/aws/aws-sdk-go-v2/service/waf v1.25.7/go.mod h1:Jx83wxDXt4tq2UEhy4ODhqgpb6NBkQRs4TSkcHfBPcg= -github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7 h1:9V+YZqYy+FvDzZF16xXE7IWYlNWJKurMay7HC+ZGm0A= -github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7/go.mod h1:gB1OOPydtleVh7rcCj8fgoNfi6/4chzyP6aereNH3tA= -github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6 h1:cK66ajiEQ2+eVezj6SMetpTohM1TuR94nPXGbGGCHaI= -github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6/go.mod h1:HSfXIyNzPY6UIB37eFe76S4f/YyQPbuoovY+JhEy1x8= -github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7 h1:e4VW/f+S98RAKzHZT9+gPqFhNELSobBcgVZOTl23C/o= -github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7/go.mod h1:X1zN/DRROy1bpTCMdQqVLd4/hLaM3GbMhVURUW8F8mA= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7 h1:tB4tNw83KcajNAzaIMhkhVI2Nt8fAZd5A5ro113FEMY= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7/go.mod h1:lvpyBGkZ3tZ9iSsUIcC2EWp+0ywa7aK3BLT+FwZi+mQ= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7 h1:EqGlayejoCRXmnVC6lXl6phCm9R2+k35e0gWsO9G5DI= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7/go.mod h1:BTw+t+/E5F3ZnDai/wSOYM54WUVjSdewE7Jvwtb7o+w= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7 h1:8eUsivBQzZHqe/3FE+cqwfH+0p5Jo8PFM/QYQSmeZ+M= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7/go.mod h1:kLPQvGUmxn/fqiCrDeohwG33bq2pQpGeY62yRO6Nrh0= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7 h1:Hi0KGbrnr57bEHWM0bJ1QcBzxLrL/k2DHvGYhb8+W1w= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7/go.mod h1:wKNgWgExdjjrm4qvfbTorkvocEstaoDl4WCvGfeCy9c= +github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5 h1:C658qdjSO3wvmFXKEwbrqSD+JxBBfFseI1vIJVRLg0M= +github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5/go.mod h1:7TNNDrsoVl5OxM0UEh2uX/H/3Hq59Jw3809u4bATn/4= +github.com/aws/aws-sdk-go-v2/service/iot v1.62.1 h1:3q2RRmd6BZd0jJT4719a4e+kcvSLF0dKovfLU8X3sBE= +github.com/aws/aws-sdk-go-v2/service/iot v1.62.1/go.mod h1:ue+mjRX/ouA4Rjg/83FvjEUI2ZR/410BkstnHlSL8Lw= +github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8 h1:BCvpgvJhnJDq3YS3XSs9u54Bc6ky2+2kszNgpZDNI1s= +github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8/go.mod h1:hVrIDoP3oRDh4VuWs89rnj+1CnoEuEBQn/M18BneVOk= +github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8 h1:xMCflrGr6J1r8z00uOQMZuOq6iBwOS4zeJPZ+KbMIHE= +github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8/go.mod h1:sDC7waf+7Q3lxdvEdYY1ci58frTsWT9BVYwub5bib/A= +github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3 h1:gbdCIgfsZzwkm3C21vxciD+Zv9HP5CfSdq3yCwdRDIA= +github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3/go.mod h1:uOczxLoEa+mtK76AHYr/flGPN+Kpq6YR9ikADNLxHFA= +github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8 h1:4G+AOEXJ/rkN3mBjhCA1DcmebxNhf5gXzsBpzn+AB88= +github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8/go.mod h1:X3hx5Kcy+zbdhfM2dFIOv3USIfAxHhIkqbUoeCAljaQ= +github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9 h1:2y8YEVPTiGBPPoHBLWU+hEnbA/rLVCEWkeF9nD0ox38= +github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9/go.mod h1:8BomElFc/tYQysVPwmZXFytmn2CwnxKW51HqYD2B29Q= +github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8 h1:XdYl62Iiz0BijE0Zms+d4lrDQ8SDLTjFEICHQ6StbIM= +github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8/go.mod h1:oFlBQokWwNlEA7Vsx+U0/U/G30mYMuNqaA6UnQ2m4qY= +github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1 h1:EX8rYBovCNrTm7zANC5FjDrogliKi7d+9MtbYgjDhxQ= +github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1/go.mod h1:uBUgXTy2ibIe6dY0/7Ku5CTE7YC3FVTFzULZot29Nro= +github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3 h1:uXRHMEF5VIW6iiG2g+90lIqAHSAR9s+kh+MmU/8T7R8= +github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3/go.mod h1:ZjsHqse6ZuBieZOLY3AqZXSSLXnumtZNFpZnSMvfN6E= +github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9 h1:TJwtWqaszpQfHlN+gGvvYbTylBQ9KZaX3/OBI4OGZeI= +github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9/go.mod h1:WmoBj0ARg65jSdpLzavVmbMvhw6k1uyG1y4CKtdZXBs= +github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9 h1:HupfSCXSkQ4YD3seFb8bgbwHLsCKJNEQjEufp19LMMM= +github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9/go.mod h1:ch9RoDuhuStevvh1qn29mBKDDIAsuVHKZZUCobS0TFE= +github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9 h1:oydBzTZIhO5k6clmHGYgXxwOQKXrnMGt0ZHB7oky6cQ= +github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9/go.mod h1:ra9LVAr+KMfXAGN7F1qVbxX3+WZOCJqmem+iSY4qzbw= +github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8 h1:3X4gf83v8pjbh4e8obiwvU+ZqDl1U7am2c1ZxOVDftA= +github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8/go.mod h1:BSLLbclyWD9LyVXHKL7E/+753lkqlBIRI8yUtPJQaWY= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.9 h1:Ns4iL+x1XB1SATmwAFzuebrn/d/7v8l4XDSR1/rEmJg= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.9/go.mod h1:ANs9kBhK4Ghj9z1W+bsr3WsNaPF71qkgd6eE6Ekol/Y= +github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2 h1:IUlID9r2gZKHN+oxQ7ph9pE0nqLgL45czJGnPapvcLE= +github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2/go.mod h1:/8URO3jdXHx2trFkw8886/BvIymTacL7D8ycHuYly6M= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3 h1:zDBQUFed2z2nf/SuXoOh1MknV3qKOizFZMexi1zjRAw= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3/go.mod h1:jWFEZMgQ48dPvuAWy2zcRIq8Mx/L0eO0iR1xkGR4Ov8= +github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8 h1:Kxrp+zOb2WYS4BDRS7osCBOPIK1T7OedcOytIe2I8CY= +github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8/go.mod h1:f+ruiwPQPaXW7OnTCUn5ttZm21UvB3WKMd7PxFxaSaM= +github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8 h1:wlqWZFl1a5658FCynvBGxlZVRzwgltRkAbggFSc48Jc= +github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8/go.mod h1:qIvRShof+noy6JCXF1DyhAdT0ZTl6QIEK8miw8nE4ss= +github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8 h1:pEbokMuqyrgz8KByw2yQH5Tzhw7JRotxtHVimKcI4Dw= +github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8/go.mod h1:7BG6qQsWR6fYSCYwp4/w4EkyXn1yJ3AJeTi/uQSfCXs= +github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8 h1:z9bgL1NA0f86mMxBXuRZRCjznUK+bDslDnC0Y+SPMAI= +github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8/go.mod h1:YjWGMia/niFFH4WNCCD8JhAVQjOap5CDAPB8UJtLgfU= +github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8 h1:+lmJoqxuUoPlSfGk5JYQQivd9YFjUvRZR6RPY+Wcx48= +github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8/go.mod h1:Gg8/myP4+rgRi4+j9gQdbOEnMtwMAUUIeXo+nKCFVj8= +github.com/aws/aws-sdk-go-v2/service/location v1.42.9 h1:MjSw2vZaHX7CWujRMxmWrKsdtpvwVt00klNxTlQpzcs= +github.com/aws/aws-sdk-go-v2/service/location v1.42.9/go.mod h1:pLV2Zo7MrlA7gimwosh4miL7IRUmRC1Glj74JHTs1Ts= +github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8 h1:MepszuUAtpru75y6R81UiltsF7dNYk90PBbDQtcOt5c= +github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8/go.mod h1:i3rtKmFIMVe0TkEOU59xpUuG/IgllBnO/4xz+CrzJi0= +github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1 h1:01gzWPcmywLIDTNsuMTMkwDd56DOpaH3ORELBFiOPJ8= +github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1/go.mod h1:QmxK4noc4FpL88R5hgX00wMhJeaqwxGcXC3SxoIXoQc= +github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1 h1:BWTRwZ4JyUZl4Bo9DWp9J9SSSsq4j8Wnkb407D/AO1c= +github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1/go.mod h1:+55oP7voi8jWtWudP3C6df7b4+XEQ50rOs2/Y2P136A= +github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0 h1:uw/s4g7PlsPKV/5QHt51J3IhyrNrrKedQCa3AOASRiw= +github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0/go.mod h1:nQRm3vFS++fo+i1pixS31pDKDaWSMBjyVCOSL4po3ps= +github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0 h1:Uha+aj8TYrnnYjhnheLa3GniVzVbIbjnGKlKaVjK+HU= +github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0/go.mod h1:E7dWYdCNLQyAb8leeCcjMeG3g14nd5OO1pIYYY8drJA= +github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0 h1:L0+i3E+jALDly2q/z/CAPZTACaqZ6coA5RnKrKrWf8Y= +github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0/go.mod h1:JvKDUMzVs5Np/QYqpnYGR5o66Km2e0bfWVFBh25x33Y= +github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8 h1:gXROivyJ1SVEvTy3oRwQbP7nvmVCxr83zQ4R+74mgKI= +github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8/go.mod h1:eRrFGQ4oUTOkEJ4YSZTXbG1jdRlhQ9p7nX08phDicGw= +github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2 h1:TBq4cekBpJD7doDntY/6mSU8KyCYlh7I7i8botXmolE= +github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2/go.mod h1:xa0RiLhZTd1f+3qm/eHj1lHiKtImnzt0wXYniKkk194= +github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8 h1:FWYlWiwEi74W9ApdqK1Law+kdQ5yDfPr4gUvBzKVzNg= +github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8/go.mod h1:3n5xd9tmks4+lOZI5Qh/jVetyiO2+LIqRQlrzAa15kw= +github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1 h1:Y0not2uSNLhPDs7RGIxLFkvtR56E+TI7JfQr/8i4bhs= +github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1/go.mod h1:r/zU4+MeETICHE4Itz2We1Im23jZgJ899lVfXLopalA= +github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8 h1:62m7MivjC5e+HeETKjg3bYNI0w5GP3IJxjMIzcTkgXM= +github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8/go.mod h1:xPenzcQbhn1L8XuESeDl9y0i25h8n1yQJQmW5ROYpks= +github.com/aws/aws-sdk-go-v2/service/mq v1.27.9 h1:2iPHOuNL1uHTdhqqkiR6mfRK6nra/VFSFgjPQMXK0Bo= +github.com/aws/aws-sdk-go-v2/service/mq v1.27.9/go.mod h1:9oVLOIK2YboVZqZYVlvQZ28TdxLZWt5nPIiJqaDlRXE= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3 h1:QGerJikhYvOuyqPJT+6qyUk3T/KEJDE53mNeC27toA0= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3/go.mod h1:gHRsqVAN4KABEf4vBdi11nNY8U4vKG38SwZHoMdCEgE= +github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8 h1:KSWRl7TUuw2O+dPD3CrDCrtOVV8Z0N13Kf5sSe1J2l8= +github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8/go.mod h1:/LeVCQJBKeihOLKPtQCFgst/Lotva5fG8jLX7cwSSg4= +github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2 h1:wtg+d+NRT8yz2bMNe1ZL9HbSTfSPfr4tuRqSq61wDYI= +github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2/go.mod h1:mpOYkWvlMmQ1sF6S7YU9m5konYvctK2RR7cxNa31H54= +github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7 h1:QylOhJ/Cq8rXpdGY0TVDozlqlrioqhBGL8lr0humk/Y= +github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7/go.mod h1:JRNqD9oCs0lfhwggQ9try04MIaPU8lJ5XIufAUv49Ho= +github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3 h1:ru7v1ILijPCjR1R64RYFFpOO1MSyJqCIkikGEZYtZY8= +github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3/go.mod h1:gwQKk95S0e8fJmDMy3CQIj3dRJOOPDjVMdMd1uwgD3w= +github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8 h1:L4XrxVqV4uAPgibh6ojLqYzFxqQOUi5ZgGeqiKZIKvo= +github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8/go.mod h1:vOvJO177noMda348GUujF+fVQjcyOofT30sfbpKkCjU= +github.com/aws/aws-sdk-go-v2/service/oam v1.15.9 h1:aeOfua5whEwx6fj8+YSZEdY9ey9KHeckx00O33tQcls= +github.com/aws/aws-sdk-go-v2/service/oam v1.15.9/go.mod h1:S40vS26lQ05dLf16US8N4j+KP7hhSMAiF4bnPQY+iqk= +github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2 h1:utfI7koMw9rvggZxJwMCIp9ZC2uwCDnF860Hr/Ztxo0= +github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2/go.mod h1:06sh4z8qtZg8J5hY9stqqKXcrl3kZK9HMzgd/xXjRJI= +github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5 h1:fEZyIysXAoD0jW1FC7fV858SuFsqJJpnZSUA8auRsYU= +github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5/go.mod h1:FW7oTeY2uO9QTWrZcRV2bMo4yrwXusoLEcPZWeDHMHc= +github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8 h1:XMd8liE+LOaXNUebxvQHZA25vqUbx9XXJzL+aWpn7Ds= +github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8/go.mod h1:xa567cJgKGkSwhUsQ7tvC/DxPv5KJUE5CYldt++OYNA= +github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0 h1:VlfFFYSLuS7MPNyF7wf1gANoLQLhEj+Kq7ifVzl7gog= +github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0/go.mod h1:5ThtlWQYo2b4sghzFmzDelaJtsW7hOct5MnpbaG8ZeU= +github.com/aws/aws-sdk-go-v2/service/osis v1.14.8 h1:C5t9VoY0Rgec9zAdzXlvXXkhj+zicGc+KhnWIROOFzc= +github.com/aws/aws-sdk-go-v2/service/osis v1.14.8/go.mod h1:eyPTDZRCYMT/LOsDMiMgB4uzGcBWX3o2DpVyvrBsCOs= +github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0 h1:Km42d7UMgQRnkrI5R7vsfaYRqEmu1nbT56UdhFuR8as= +github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0/go.mod h1:W4/z6UyMkYcZ9wXH+K9NuAgORXhSSOeSf9Jy/tcnoGM= +github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3 h1:ktY4tL7IGLYYjx9PIqH+dM8gneIsFJ++Nu6n1MHu6MQ= +github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3/go.mod h1:jnbiXijUeMw/egLenN/Q2YHVo3zw3k53wtHpAOh6F6Q= +github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8 h1:XG8VNHO0HovBRoumSh6aa4lE2zvcWwYGn6liEDedeXw= +github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8/go.mod h1:vqmwWxk/hWuW3ShSSLHXYvsASrPVH+/gQfAT2lhXV4s= +github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9 h1:0CdL4x0u8iJowqsaH5eDPNXKBcFDO6+rZnF/3VX+osg= +github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9/go.mod h1:92vnR3khCkYSXvU2CumTTml73QH/QjUVTArBKjTUtT4= +github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8 h1:2/nVs5LrrkUHx7nwR0TAMW6NM0aCDFasJiwHKP4SQQo= +github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8/go.mod h1:eO3MBJmI02GF2b8/CUMWvAuspEjJWdznqa+R9Xb0JUA= +github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3 h1:MLoB8LW9cS/ER+gjexYAqOST0qOX4r7EYoMNwNJwur4= +github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3/go.mod h1:qO/EXvlmYq5Ls/ItNdqYbZgfZbyF1ugH5y9/BdZzHHE= +github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6 h1:h+cn8Fh8IFQfZMy+nA7+tNinrvQB8bmg0iXo1m+QAJ0= +github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6/go.mod h1:yuDWzNCsMu6a3yyyvTgz66Riha9Pm6oViFIjfdxmBPs= +github.com/aws/aws-sdk-go-v2/service/polly v1.45.9 h1:0k9cGm5XiN9yA3qX8PPQsici1C0cEnFxY5MCCMUGsBw= +github.com/aws/aws-sdk-go-v2/service/polly v1.45.9/go.mod h1:xKPCt/jbEOsKadnY4b0vhxoTzl8s52CyJ6CkZCiytCg= +github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8 h1:R3X3UwwZKYLCNVVeJ+WLefvrjI5HonYCMlf40BYvJ8E= +github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8/go.mod h1:4kkTK4zhY31emmt9VGgq3S+ElECNsiI5h6bqSBt71b0= +github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2 h1:qKsrjL5pTNhjsDxnn9GNMUQPrQbXsPHuv47wVorVGlw= +github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2/go.mod h1:Uirj9iOAsGJlIFg8nxXF9RsTvTv5D8yn5gUi4m7dKB4= +github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8 h1:J3qABofeUmWMZqqG+WyemyKxyYfo+Ktg7uyHF7Jz5H0= +github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8/go.mod h1:7tOE+G8Kdo5GIeU6equqEi6olyYPybBTgDc4OPshhMI= +github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1 h1:TyaxdSPqIie56hbSgLifnw5rLA4j3Dw2T3gYfhmCyFM= +github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1/go.mod h1:+I/OWby3QufWpnAQqjgLKV4ZqEiUkXJ84miM7nE/MiU= +github.com/aws/aws-sdk-go-v2/service/ram v1.29.9 h1:OCzlUYDSoCgRvIXXKsfOR3DcRc5qY0pL7l4C8n5VnS0= +github.com/aws/aws-sdk-go-v2/service/ram v1.29.9/go.mod h1:AfzjV8GA6ZIolmqP4UrZX9OXKJeCH8xQKwI12T+HbCU= +github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4 h1:4c4/PPssf19JGLM7oy9PT0e4Xdg0T484UzAgANIbnaE= +github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4/go.mod h1:bDv9F4WCfs6gGlvVCNAWgrIN4vuRdmfNafdvLjnI/Vc= +github.com/aws/aws-sdk-go-v2/service/rds v1.93.3 h1:3QUDP8cX4iV1DEzl5dWLuMxa0DDZkjzSJbi6z/w1x74= +github.com/aws/aws-sdk-go-v2/service/rds v1.93.3/go.mod h1:QEpwiX4BS6nos2d/ele6gRGalNW0Hzc1TZMmhkywQb0= +github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2 h1:9JzuUkDm6o66Jblgqg3RHeCC4eUmICmKDXwTyeZ9VEQ= +github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2/go.mod h1:Uz+PdLUo8+x/iXFrZGc+j+w/AVAfc7Qmju9XjCiQGHE= +github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5 h1:xQLNC+ens3y94XQF/AnwOhMBY2znloIKqBksGrCDH0c= +github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5/go.mod h1:ihiYNUYpUX0Q+az297JaPqZ15p9r7+LwcXPqP1u3Fyo= +github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1 h1:anb79RuKbIO8z+SgNiDGCQln5CBI3Edzp9mXTAcZuNg= +github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1/go.mod h1:u4NPdVb3te3+QB4rdjFGE9Of4V3vPqrPbTk6fAR6qf8= +github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9 h1:TXVrfsRN83O2z0pdnyhsCEZiutR6/49MjXsBhOniHR4= +github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9/go.mod h1:r7S+8caIe63Cor0D7w0iWFXFTVT1YqTCDZLPdRv4fkA= +github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1 h1:aU2V0g/F2f/monQf9546ObCOUVzV4T97zRL7QBjIbcY= +github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1/go.mod h1:iN7xxx0rr5JNw/edT/UwkH5iuELKh0n+OzCO8mTMQqQ= +github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3 h1:9gN8CVlfJRLcNpHyBJa9s6+evPQ+64et7cSDSHkWP0c= +github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3/go.mod h1:d5IKn6skI7qW9+lJ6yxMSWAsBaRfRrFvd5d768m+0H4= +github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9 h1:7FPUGi+wjKYw/EduqdEH3+NGGAuMydF9aGgkhEGmwZk= +github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9/go.mod h1:qMPl/jD9Inr5YPP4Tehm1gUq9r558c7HfxBVYYudDLI= +github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9 h1:g/ty7BdvFKYLnKGuaBOFc+vxHdCiqKqOKlK78ynmyqw= +github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9/go.mod h1:+34YBpm8pl2Zzg9ZB5z0Ix/FIcR06yUoJSr2sEOi+wI= +github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8 h1:UZGvejgPVw0Qhwt3Kua0XC+7N8aAdH62KCd1yDJJv38= +github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8/go.mod h1:xgh2UyLblHo40RL4po9e7D1iHfAsA85SxtbfdlDN7pk= +github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0 h1:NcZIXk9jGPGVG4wa+xR8gpcOk9sCR/BaMTAEYpzqs8Y= +github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0/go.mod h1:xlMODgumb0Pp8bzfpojqelDrf8SL9rb5ovwmwKJl+oU= +github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2 h1:IH+UWySP8buYbojqBKwOGOZN6zpAc4sd8gTDLEJYl74= +github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2/go.mod h1:kbxY8XfDPZYpcBqQtezB8r1DqZWgCydOSmgoKcTjvf4= +github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8 h1:U1hxHsKRnTh4tI8Ntv0MOsaOH+MdClktUjz0UDcvcPc= +github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8/go.mod h1:AitHbOsoMtRWbTE62FvieGF8JMaKcWIMsWV+MgOYn+U= +github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8 h1:gMqOTyw8VBzA6O/4jdZ7VyZd9+U4DtO/YfOayBOpwsw= +github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8/go.mod h1:405W+ejlUiDQKcVgyT8TZ5RI4zK99EPtZfshUlbt4IA= +github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8 h1:dKhXveDXJHHDRNSIvcep+3OpKkMvHW6Bpc1YvxmlvNk= +github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8/go.mod h1:h7qiFeePkUcitvF22CPyvUWadKuGTkYIJxzojt7T/do= +github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4 h1:FwXUUubNQFB4nDl1XuOJVHc0QW5hiQyzXOIUrLH2XmM= +github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4/go.mod h1:vYD7xWxRn4FA2LL0zRgiP4GQZPev0VIuKWOYPdU7LEU= +github.com/aws/aws-sdk-go-v2/service/rum v1.21.8 h1:PsjsKI4htYgVNS7SkrvDamC1pudlKdebfKKfT+B+p0k= +github.com/aws/aws-sdk-go-v2/service/rum v1.21.8/go.mod h1:2k7Pf5TV51+bdYg994/m6Pg9pDEU3/75ljg0twzfeqc= +github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1 h1:+IrM0EXV6ozLqJs3Kq2iwQGJBWmgRiYBXWETQQUMZRY= +github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1/go.mod h1:r+xl5yzMk9083rMR+sJ5TYj9Tihvf/l1oxzZXDgGj2Q= +github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2 h1:waRy4WnrQyfdAMR5HvVsftcQ+26m1Y++08B5ZHydJ98= +github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2/go.mod h1:6BuUa52of67a+ri/poTH82XiL+rTGQWUPZCmf2cfVHI= +github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8 h1:47G52E232ytagHeaPcTIxd8GaVstyT4fKS9CrVRWbXM= +github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8/go.mod h1:S8Tj7PrDEe6SceyPy1I4i7oXlaqViwk4ul7uHT9J2Eg= +github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1 h1:lYUf+JdG7N/AulNkJMBltvXf1noXA2VXEq7nh2f8ozU= +github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1/go.mod h1:LfkUcn8gnPNKpiN+A+b3zD6Gtw7Vu1LNlnBZAOd4N9E= +github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0 h1:+DtF9wWdcnKeLc4xMGX2gWkEJkR6+Zl3sUwu7G9xlTo= +github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0/go.mod h1:hzu5ncs1K7l08GCup8WRVxw/uqgw1BQLDyfVomRM3sY= +github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9 h1:isM0cEE6tsKx0nN8PN6mD5KE875ZoXpBOyuhVg9eizw= +github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9/go.mod h1:GjSCVTlF0mOfHmQCl1MKcQIwmMOX4HYkKO3twXbm8+k= +github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9 h1:/GpTD05rBAVsnlnK+8uTTystVVb/tcCumvdvUhgwDAo= +github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9/go.mod h1:IRe+k7OfDTrD2RxhMOAODUwXRBASXnLM2MX4wabsnxY= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9 h1:cyAt42tqeT06dSOziRmdt91iDylhP7aA6YJGeOkNe5g= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9/go.mod h1:By/yiMzR0yfhPaqRWE3GrT9B/Z6871z1GfWGc+vf4Y8= +github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2 h1:K19T0ydEbAyKXb6azjJVCGke1xJ/fzOG8skUhrh8vyI= +github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2/go.mod h1:ezzhWuvK3dRgRtC9vvG9z1SaHq/POpD9BEfdXnpqkqs= +github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6 h1:EZUXhlRiuZFLmk4N7++pjyJKkgs/x/fD6EsRRMj4Coo= +github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6/go.mod h1:qvFMAMHEVtP2qwu4M5VbQutgIe0S0SHuwMneTq8gpdg= +github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8 h1:GhSS70WVmuUeFaW8d5ZvHtSJHtmXq9rNGb3EWPhyzms= +github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8/go.mod h1:pe/aMwX4FiFdBCOAIGeP3y23znd52BtasZmfQRlLl2M= +github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8 h1:uDR8FMmsEd/g+eihjeXze1nJvGZOBYWJXdEutY++wnw= +github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8/go.mod h1:8ugnqCHkdv41d2Mo5F/mdPtaXauABVDYL3kV9U7LNbM= +github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8 h1:G9LHlcpsxE3028FETYM+y3DkMTR7Go9lPTP7L8emf1g= +github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8/go.mod h1:PqH0Z4nbCtd1+zDrMTxLK+v4JaYdHSDzZb+FurGamcs= +github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2 h1:Gh/WPDtrIOTpnyGpykNeh6/Ctyc7K7I0Xh8JMrRqur8= +github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2/go.mod h1:KmNFSoNNh6qNFUCfNAVf3yW+gZXgEPc//PGttodQ1KU= +github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9 h1:JzK+RjrvPO/r6MpSY8HVoAPZxMAdrXLjUG7REKfejI8= +github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9/go.mod h1:l6nMNVvoAEbRczyvXiYGChtzbm3UuZdrbMW7/FWelI0= +github.com/aws/aws-sdk-go-v2/service/ses v1.29.2 h1:ezumdYONyhe5B4OvSZxQfqfSyKW9kjekr56u1UjQmys= +github.com/aws/aws-sdk-go-v2/service/ses v1.29.2/go.mod h1:ByuC9jwCXWra9D1ME4Y6nh4mGXcFN8E3pikGlut8GHM= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1 h1:Yt8nLB7tGDz2tBACAvJpHHSMJ/JsFw4I2NqQI7wV8aE= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1/go.mod h1:cwwQDQ0T1QgDRKyGU55qWLGg8BIij8oKKaYEjR1/U8o= +github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3 h1:pq+ygah6FFS4+rNW8t1gf/EyyvSKi0MnrqZhFyMYgwU= +github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3/go.mod h1:XgAc621jHVwTQOS1gUHPPA1E2CdXwR5Pc9Pfg0+Oy0U= +github.com/aws/aws-sdk-go-v2/service/shield v1.29.8 h1:H5urm641txrisNK7AOXVVR3FdG/dGg+CpekseU5BgZk= +github.com/aws/aws-sdk-go-v2/service/shield v1.29.8/go.mod h1:fl0FdAKddek5SfmZAINtCgq0IQohtrQMpAIszgQIVjs= +github.com/aws/aws-sdk-go-v2/service/signer v1.26.8 h1:9nTp3RxyVLBMJH9N0u3EQ/WEDbA93jE6KjTQw52PA/c= +github.com/aws/aws-sdk-go-v2/service/signer v1.26.8/go.mod h1:c6Gw9xkSr+2GnDQ/s49eVp121Ahm4mZXWGjLrbzeUbA= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.9 h1:2XGaTUSuMEq0rPP7/h9s5c/v8mXVP1wtiRlF8OTHN70= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.9/go.mod h1:Nf9YEyqE51C+Dyj0DWSATxvsr39jBFIss6Jee9Hyqx4= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5 h1:gZp0bvAYAcjXOCkOURI1zqgG7qthhenNl9po+4sGL6A= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5/go.mod h1:171mrsbgz6DahPMnLJzQiH3bXXrdsWhpE9USZiM19Lk= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3 h1:QMx9lj524IOWjI1IpmcXSkHaazGBzTPgBmECzbppF5s= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3/go.mod h1:RKWoqC9FlgMCkrfVOtgfqfwdaUIaq8H93UAt4xNaR0A= +github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8 h1:PlcN/0lYOntA8seGJ0pEhVXYAXekUt2cQyIx9PV3+Y8= +github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8/go.mod h1:CGeBTRZpsHvmOrHyCceuAPseVpJsyq0eMOo0Fu+4WgE= +github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8 h1:n88gB3+H7m6/4osKsHiI0r1CfAEAB7rfDtMXuOqVcnY= +github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8/go.mod h1:51SxJSOKmflIbDvd/UadpgjRTcpE/i5gzjdzLoT258w= +github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2 h1:4siT1z3nEVxJq1jZYu1SRoct5xgbKen+ammCuZBZ2zI= +github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2/go.mod h1:KSO1+erW2SUB6Mw/Qamu1fOT5fn/mzd9G79ENbYqyRQ= +github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1 h1:3/7a5HDlxoNVrtpb4lZ0U7yEvpg7K2Ri3h7lvN1uAdM= +github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1/go.mod h1:fTVH5Ts2/fSD0LDSwP1lTkUhIZzOcZ9rvbZ2SuzO0Wo= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.8 h1:CvuUmnXI7ebaUAhbJcDy9YQx8wHR69eZ9I7q5hszt/g= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.8/go.mod h1:XDeGv1opzwm8ubxddF0cgqkZWsyOtw4lr6dxwmb6YQg= +github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8 h1:nCDnD8rVurC8E43scFw1lDHBRi1aSxAyOgfDHauTUsg= +github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8/go.mod h1:gs/HuXKm8GZigCov15NZ9pt/u9EhD5gij4/uAEEnlJM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7 h1:F2rBfNAL5UyswqoeWv9zs74N/NanhK16ydHW1pahX6E= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7/go.mod h1:JfyQ0g2JG8+Krq0EuZNnRwX0mU0HrwY/tG6JNfcqh4k= +github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8 h1:iGmu7HMw6AkqBHV9i5ROzn9otDr5S5PuLP+Ymd20gaE= +github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8/go.mod h1:JEB0wcdNUtXNIXPBHoTTpcP4ImHRnxjxtIW0JQmHPnQ= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.4 h1:EzofOvWNMtG9ELt9mPOJjLYh1hz6kN4f5hNCyTtS7Hg= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.4/go.mod h1:5Gn+d+VaaRgsjewpMvGazt0WfcFO+Md4wLOuBfGR9Bc= +github.com/aws/aws-sdk-go-v2/service/swf v1.27.10 h1:wuoRmZ5TlXJhXiwuIwCLHhPRyqM8sGeOuf69kQI9zIo= +github.com/aws/aws-sdk-go-v2/service/swf v1.27.10/go.mod h1:BhhNXbUQvQWHqCE8ClGZ35wPk0X9yf7GENgrbR+QoNk= +github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2 h1:OOYsXCw0IFrigZqnQ//QI4E98jlOovyIwk6qOvDjlu8= +github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2/go.mod h1:jw1F0BxkenHqIGQN6/CNwjQXaczGUnNygDkHL+eYaHc= +github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2 h1:yoh8AI/J8XgXUfZoSZL6RTupb4bGNSWSXc5lv8gAHeY= +github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2/go.mod h1:Hk446tKcJy9rblME6AOP4ohJzbg1OqzhcVagFxuTf7E= +github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1 h1:rPorKwVa4M69AL9nIW8uRPMz8RDgB2P6OwumayvqVUs= +github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1/go.mod h1:I9GEl0o6NjIcE984Vo0L9CR3wNdTmHxo+45k5EQa7i4= +github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2 h1:gihUoDbbvqKEe/AHK4PO54nO+OqlaCPQFAGlxEZ6R9U= +github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2/go.mod h1:4xoMzvjfpKy3mwR+9Vt1oNN914ZCbSNkzb66waQqRWU= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9 h1:9zoIQ/6NA9b70dDvhYvi4IA3jcLDEu2UEALXLsvmQkI= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9/go.mod h1:otxD6AyG1ABYxxhFX6eua+C4vntFe45igc3ake0mkuE= +github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8 h1:nnwWCjn7Vchxd141wxESqgJ9KsbH49xerYjvcxll1Zs= +github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8/go.mod h1:AuJYTHEZbO7D4AgO4cMaElCp1AzTWv1o38YyY7bgNKY= +github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1 h1:bENkaFtA6rxHAwNPjYbgwYxUHGJbL7QocCt8nKZ7d10= +github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1/go.mod h1:C7x9hpm90ZocJ9GbauHMkVMU0m7knEiKhOaa4um9tBU= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4 h1:eZXiw9DojYlhMjWBJdAXzynaY9yhXsGlGhMfQfERR2c= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4/go.mod h1:1fZ7ZXPxSF2pAinSGZCLF0iYJZZyQSXwDRAqer5I0H8= +github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3 h1:lroNijmLbYdAogjg3PYYlDSY9yho+nczMeiYYOIsLNQ= +github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3/go.mod h1:mA7e6cMF6CKPLwNqDIvRHy8IDhrlM3Kb9iqIq8bgPDE= +github.com/aws/aws-sdk-go-v2/service/waf v1.25.8 h1:21k+nb4lq/YNWOEeqs013i3fFoox9f2CUo4W736j8Us= +github.com/aws/aws-sdk-go-v2/service/waf v1.25.8/go.mod h1:gLE4P7MLLTe7s93GbDcXtaQ5Z9hz/rWvnSBmUlscnno= +github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8 h1:LG+3JxLZqa1wGrp9bCA0mP+jeqGokKEleLmk9cgnvUw= +github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8/go.mod h1:k5QM358GxnQJ19Y/XGCnY8a6pLrb2CfvC2S59UKq0ok= +github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7 h1:X+PWRlhNb8d3eEJKlcm6bq18j0RW8fEMfBHLMAXzXqQ= +github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7/go.mod h1:ALNVjXMuy6y75JfvuShLxVl66dHPHmy/Fczv9xemXas= +github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8 h1:379L5vghrrijXaVB+CEEVRNHYZJtI4SPPRliCJfxoMw= +github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8/go.mod h1:ZtiDdJzEpINAYHzpY6Cvow/Tys6EM/0UDlbCNcJ1DfA= github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2 h1:VN3Qydtdl3UlJRHVxQxSP1d8I5gtvT5zdaCCAfZST7Y= github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2/go.mod h1:Z3RLpIq4q49syd921XdsKeD584kPu89iKTEjluh7908= -github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3 h1:gYpO2qaIaGoQp9TFjSl0ZENQpXIUEUNGT2AaByo4DKE= -github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3/go.mod h1:OX0I9k3wOSsRCrdqAUOVEDLHupani0n+UJ80TY0fIWc= -github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1 h1:PrMt4dBsy0rdfuMcFYlqOQNSgHmF+gCGbV0M/8MbYd8= -github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1/go.mod h1:pwgFCLPLVoTNXQxG6LZdpXBGMr2wmVZBDci+yfuGZi8= -github.com/aws/aws-sdk-go-v2/service/xray v1.30.1 h1:BqsNRmYVd9CLJtcTwlJftM5oCsmuHcKm8ajJjYscP0Q= -github.com/aws/aws-sdk-go-v2/service/xray v1.30.1/go.mod h1:4XSKiCaqUPZUSQwLQCAzVVCEYJZKMzHF2s36fCTTirk= +github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0 h1:cqPwBQs00E6mzJWv98dOSzX8WtPtMgtqLVsLvF0iCo8= +github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0/go.mod h1:hre2JozPlHJVFfmWo5y8EBrjIFMx3xe1ZU8fnH8dRWU= +github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2 h1:ylaPCY2qs+w5e7dTSyYF+8kfG3Rh4ZGy1IF+wE1owtw= +github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2/go.mod h1:0hb1mJfmE+QtsHfNWspgPIwp4ltIP5ZaYQlLSYUVsiA= +github.com/aws/aws-sdk-go-v2/service/xray v1.30.3 h1:1YNWITeCg+dZRTFf2X+KRQDNCl/En2Zqhcs0zwrZ6r4= +github.com/aws/aws-sdk-go-v2/service/xray v1.30.3/go.mod h1:MIDlhv/eUulnYyGjNflyrKF4f77kcvfS9zTWTeUTAog= github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro= github.com/aws/smithy-go v1.22.1/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= @@ -2103,12 +2103,12 @@ github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1 github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0 h1:l16/Vrl0+x+HjHJWEjcKPwHYoxN9EC78gAFXKlH6m84= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0/go.mod h1:HAmscHyzSOfB1Dr16KLc177KNbn83wscnZC+N7WyaM8= -github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59 h1:j5ZrYJbLfZLJ9X5Bnp43z+ygN7kf6rbLCGIBGCIWWEA= -github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59/go.mod h1:jZEzCETkIzEinF749zPXsqpPmsA9P0fbMqRyoBh5UNo= -github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60 h1:WKatQsyE5ik+US0P3yCc5mDxg4HiMZcBUZBULLnXFqM= -github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60/go.mod h1:8sryF6nAn0RYRHMH9Rp6DSLu5rdP8A1C+XB/YB/K1qo= -github.com/hashicorp/awspolicyequivalence v1.6.0 h1:7aadmkalbc5ewStC6g3rljx1iNvP4QyAhg2KsHx8bU8= -github.com/hashicorp/awspolicyequivalence v1.6.0/go.mod h1:9IOaIHx+a7C0NfUNk1A93M7kHd5rJ19aoUx37LZGC14= +github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60 h1:zh3v/n0DillXuE9iMXqFsZjfMicNCVNB1+leYCjZrQw= +github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60/go.mod h1:npXAOu74D/9TTX1no1ooctXrq6hyWNRIwHrEu2zeVUo= +github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61 h1:elc7H3wq5LPGryM75+593SXaP3u3x/t3Ldn/u7R/PFs= +github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61/go.mod h1:4cqoilb6SM5sQk5huMoxKpzcxLW+2pNmbMXPijvLs8Q= +github.com/hashicorp/awspolicyequivalence v1.7.0 h1:HxwPEw2/31BqQa73PinGciTfG2uJ/ATelvDG8X1gScU= +github.com/hashicorp/awspolicyequivalence v1.7.0/go.mod h1:+oCTxQEYt+GcRalqrqTCBcJf100SQYiWQ4aENNYxYe0= github.com/hashicorp/cli v1.1.6/go.mod h1:MPon5QYlgjjo0BSoAiN0ESeT5fRzDjVRp+uioJ0piz4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= @@ -2496,8 +2496,8 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= @@ -2635,20 +2635,22 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0 h1:G47XgH32CEM1I9kZ8xrVExSxivATGHNE0tdxuqlx9MQ= -go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0/go.mod h1:aqXlYGrumc8b/n4z9eDHHoiLN4fq2DAO//wMnqdxPhg= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0 h1:g2rorZw2f1qnyfLOC7FP99argIWsN708Fjs2Zwz6SOk= +go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0/go.mod h1:QzTypGPlQn4NselMPALVKGwm/p3XKLVCB/UG2Dq3PxQ= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= -go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= -go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= -go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= -go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= +go.opentelemetry.io/otel v1.33.0 h1:/FerN9bax5LoK51X/sI0SVYrjSE0/yUL7DpxW4K3FWw= +go.opentelemetry.io/otel v1.33.0/go.mod h1:SUUkR6csvUQl+yjReHu5uM3EtVV7MBm5FHKRlNx4I8I= +go.opentelemetry.io/otel/metric v1.33.0 h1:r+JOocAyeRVXD8lZpjdQjzMadVZp2M4WmQ+5WtEnklQ= +go.opentelemetry.io/otel/metric v1.33.0/go.mod h1:L9+Fyctbp6HFTddIxClbQkjtubW6O9QS3Ann/M82u6M= go.opentelemetry.io/otel/sdk v1.22.0 h1:6coWHw9xw7EfClIC/+O31R8IY3/+EiRFHevmHafB2Gw= go.opentelemetry.io/otel/sdk v1.22.0/go.mod h1:iu7luyVGYovrRpe2fmj3CVKouQNdTOkxtLzPvPz1DOc= -go.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM= -go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8= +go.opentelemetry.io/otel/trace v1.33.0 h1:cCJuF7LRjUFso9LPnEAHJDB2pqzp+hbO8eu1qqW2d/s= +go.opentelemetry.io/otel/trace v1.33.0/go.mod h1:uIcdVUZMpTAmz0tI1z04GoVSezK37CbGV4fr1f2nBck= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= go.opentelemetry.io/proto/otlp v0.19.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= @@ -2691,8 +2693,8 @@ golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U= -golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= +golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc= +golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2838,8 +2840,8 @@ golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= -golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= -golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= +golang.org/x/net v0.34.0 h1:Mb7Mrk043xzHgnRM88suvJFwzVrRfHEHJEl5/71CKw0= +golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -3010,8 +3012,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= -golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= +golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -3032,8 +3034,8 @@ golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q= -golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= +golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg= +golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -3139,8 +3141,8 @@ golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/tools v0.10.0/go.mod h1:UJwyiVBsOA2uwvK/e5OY3GTpDUJriEd+/YlqAwLPmyM= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= -golang.org/x/tools v0.28.0 h1:WuB6qZ4RPCQo5aP3WdKZS7i595EdWqWR8vqJTlwTVK8= -golang.org/x/tools v0.28.0/go.mod h1:dcIOrVd3mfQKTgrDVQHqCPMWy6lnhfhtX3hLXYVLfRw= +golang.org/x/tools v0.29.0 h1:Xx0h3TtM9rzQpQuR4dKLrdglAmCEN5Oi+P74JdhdzXE= +golang.org/x/tools v0.29.0/go.mod h1:KMQVMRsVxU6nHCFXrBPhDB8XncLNLM0lIy/F14RP588= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch b/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch index 8f5d86d243a..a84be7aedbe 100644 --- a/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch +++ b/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add TagsSchemaTrulyComputed definition diff --git a/internal/tags/tags.go b/internal/tags/tags.go -index 40c06bb057f..247a01bba3c 100644 +index 40c06bb057..247a01bba3 100644 --- a/internal/tags/tags.go +++ b/internal/tags/tags.go @@ -37,3 +37,11 @@ var TagsSchemaForceNew = sync.OnceValue(func() *schema.Schema { diff --git a/patches/0002-Add-S3-legacy-bucket-to-resources.patch b/patches/0002-Add-S3-legacy-bucket-to-resources.patch index 490bf58cb32..2da8379adca 100644 --- a/patches/0002-Add-S3-legacy-bucket-to-resources.patch +++ b/patches/0002-Add-S3-legacy-bucket-to-resources.patch @@ -14,7 +14,7 @@ scheme for registration: see https://github.com/hashicorp/terraform-provider-aws/pull/29717. diff --git a/internal/provider/provider.go b/internal/provider/provider.go -index b048f661fe8..b6521d3f55f 100644 +index b048f661fe..b6521d3f55 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -14,6 +14,8 @@ import ( @@ -39,7 +39,7 @@ index b048f661fe8..b6521d3f55f 100644 provider.ConfigureContextFunc = func(ctx context.Context, d *schema.ResourceData) (interface{}, diag.Diagnostics) { diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go new file mode 100644 -index 00000000000..cd2a293a73e +index 0000000000..cd2a293a73 --- /dev/null +++ b/internal/service/s3legacy/bucket_legacy.go @@ -0,0 +1,3030 @@ @@ -3075,7 +3075,7 @@ index 00000000000..cd2a293a73e +} diff --git a/internal/service/s3legacy/enum.go b/internal/service/s3legacy/enum.go new file mode 100644 -index 00000000000..2e9caaae188 +index 0000000000..2e9caaae18 --- /dev/null +++ b/internal/service/s3legacy/enum.go @@ -0,0 +1,32 @@ @@ -3113,7 +3113,7 @@ index 00000000000..2e9caaae188 +} diff --git a/internal/service/s3legacy/errors.go b/internal/service/s3legacy/errors.go new file mode 100644 -index 00000000000..af03bdf5aab +index 0000000000..af03bdf5aa --- /dev/null +++ b/internal/service/s3legacy/errors.go @@ -0,0 +1,8 @@ @@ -3127,7 +3127,7 @@ index 00000000000..af03bdf5aab +) diff --git a/internal/service/s3legacy/generate.go b/internal/service/s3legacy/generate.go new file mode 100644 -index 00000000000..8e0b62b3dad +index 0000000000..8e0b62b3da --- /dev/null +++ b/internal/service/s3legacy/generate.go @@ -0,0 +1,4 @@ @@ -3137,7 +3137,7 @@ index 00000000000..8e0b62b3dad +package s3legacy diff --git a/internal/service/s3legacy/hosted_zones.go b/internal/service/s3legacy/hosted_zones.go new file mode 100644 -index 00000000000..a94403b066a +index 0000000000..a94403b066 --- /dev/null +++ b/internal/service/s3legacy/hosted_zones.go @@ -0,0 +1,45 @@ @@ -3188,7 +3188,7 @@ index 00000000000..a94403b066a +} diff --git a/internal/service/s3legacy/object.go b/internal/service/s3legacy/object.go new file mode 100644 -index 00000000000..f44b435af68 +index 0000000000..f44b435af6 --- /dev/null +++ b/internal/service/s3legacy/object.go @@ -0,0 +1,177 @@ @@ -3371,7 +3371,7 @@ index 00000000000..f44b435af68 +} diff --git a/internal/service/s3legacy/retry.go b/internal/service/s3legacy/retry.go new file mode 100644 -index 00000000000..dcf7e397596 +index 0000000000..dcf7e39759 --- /dev/null +++ b/internal/service/s3legacy/retry.go @@ -0,0 +1,30 @@ @@ -3407,7 +3407,7 @@ index 00000000000..dcf7e397596 +} diff --git a/internal/service/s3legacy/tags.go b/internal/service/s3legacy/tags.go new file mode 100644 -index 00000000000..669813747ba +index 0000000000..669813747b --- /dev/null +++ b/internal/service/s3legacy/tags.go @@ -0,0 +1,174 @@ @@ -3587,7 +3587,7 @@ index 00000000000..669813747ba +} diff --git a/internal/service/s3legacy/tags_gen.go b/internal/service/s3legacy/tags_gen.go new file mode 100644 -index 00000000000..c65bacf65d9 +index 0000000000..c65bacf65d --- /dev/null +++ b/internal/service/s3legacy/tags_gen.go @@ -0,0 +1,38 @@ @@ -3631,7 +3631,7 @@ index 00000000000..c65bacf65d9 +} diff --git a/internal/service/s3legacy/wait.go b/internal/service/s3legacy/wait.go new file mode 100644 -index 00000000000..7a548d8d6db +index 0000000000..7a548d8d6d --- /dev/null +++ b/internal/service/s3legacy/wait.go @@ -0,0 +1,18 @@ diff --git a/patches/0003-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch b/patches/0003-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch index bb9aed9caf0..8897ab70d21 100644 --- a/patches/0003-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch +++ b/patches/0003-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch @@ -10,7 +10,7 @@ appears in pulumi as `aws.s3.Bucket` and is likely the default version of the Bucket resource that users will use. diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index cd2a293a73e..b1dc400249c 100644 +index cd2a293a73..b1dc400249 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -572,6 +572,7 @@ func ResourceBucketLegacy() *schema.Resource { diff --git a/patches/0004-De-deprecate-bucket_object.patch b/patches/0004-De-deprecate-bucket_object.patch index 40898dd3e78..f85075db780 100644 --- a/patches/0004-De-deprecate-bucket_object.patch +++ b/patches/0004-De-deprecate-bucket_object.patch @@ -5,7 +5,7 @@ Subject: [PATCH] De-deprecate bucket_object diff --git a/internal/service/s3/bucket_object.go b/internal/service/s3/bucket_object.go -index 535382eae74..cdb46cd7773 100644 +index 535382eae7..cdb46cd777 100644 --- a/internal/service/s3/bucket_object.go +++ b/internal/service/s3/bucket_object.go @@ -70,7 +70,7 @@ func resourceBucketObject() *schema.Resource { diff --git a/patches/0005-Remove-lakeformation-catalog_resource-default.patch b/patches/0005-Remove-lakeformation-catalog_resource-default.patch index 9f4d8fc7c29..c72ee876688 100644 --- a/patches/0005-Remove-lakeformation-catalog_resource-default.patch +++ b/patches/0005-Remove-lakeformation-catalog_resource-default.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Remove lakeformation catalog_resource default diff --git a/internal/service/lakeformation/permissions.go b/internal/service/lakeformation/permissions.go -index f05de48b130..f22ab6cb01d 100644 +index f05de48b13..f22ab6cb01 100644 --- a/internal/service/lakeformation/permissions.go +++ b/internal/service/lakeformation/permissions.go @@ -44,8 +44,8 @@ func ResourcePermissions() *schema.Resource { diff --git a/patches/0006-Workaround-SSM-Parameter-tier-bug.patch b/patches/0006-Workaround-SSM-Parameter-tier-bug.patch index da4f9c0cdb2..d982d38fb15 100644 --- a/patches/0006-Workaround-SSM-Parameter-tier-bug.patch +++ b/patches/0006-Workaround-SSM-Parameter-tier-bug.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Workaround SSM Parameter tier bug - Disable diff suppression & counteractions diff --git a/internal/service/ssm/parameter.go b/internal/service/ssm/parameter.go -index a5fe04fa270..f8d9fca0603 100644 +index a5fe04fa27..f8d9fca060 100644 --- a/internal/service/ssm/parameter.go +++ b/internal/service/ssm/parameter.go @@ -93,15 +93,17 @@ func resourceParameter() *schema.Resource { diff --git a/patches/0007-Add-EKS-cluster-certificate_authorities-plural.patch b/patches/0007-Add-EKS-cluster-certificate_authorities-plural.patch index f5b421d2f1e..7a9bd3a0896 100644 --- a/patches/0007-Add-EKS-cluster-certificate_authorities-plural.patch +++ b/patches/0007-Add-EKS-cluster-certificate_authorities-plural.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EKS cluster certificate_authorities (plural) diff --git a/internal/service/eks/cluster.go b/internal/service/eks/cluster.go -index c0f792399f6..c2b5a975a98 100644 +index c0f792399f..c2b5a975a9 100644 --- a/internal/service/eks/cluster.go +++ b/internal/service/eks/cluster.go @@ -122,9 +122,24 @@ func resourceCluster() *schema.Resource { diff --git a/patches/0008-Workaround-Autoscaling-launch_configuration-associat.patch b/patches/0008-Workaround-Autoscaling-launch_configuration-associat.patch index c61a628eaad..aa1d85e7b4b 100644 --- a/patches/0008-Workaround-Autoscaling-launch_configuration-associat.patch +++ b/patches/0008-Workaround-Autoscaling-launch_configuration-associat.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Workaround Autoscaling launch_configuration - Disable computation of property until fixed. diff --git a/internal/service/autoscaling/launch_configuration.go b/internal/service/autoscaling/launch_configuration.go -index a46c4b4b276..d6fe751162d 100644 +index a46c4b4b27..d6fe751162 100644 --- a/internal/service/autoscaling/launch_configuration.go +++ b/internal/service/autoscaling/launch_configuration.go @@ -52,7 +52,8 @@ func resourceLaunchConfiguration() *schema.Resource { diff --git a/patches/0009-Add-ECR-credentials_data_source.patch b/patches/0009-Add-ECR-credentials_data_source.patch index 0c43df53946..2356a78f899 100644 --- a/patches/0009-Add-ECR-credentials_data_source.patch +++ b/patches/0009-Add-ECR-credentials_data_source.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add ECR credentials_data_source diff --git a/internal/provider/provider.go b/internal/provider/provider.go -index b6521d3f55f..c7c3935b946 100644 +index b6521d3f55..c7c3935b94 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -14,6 +14,8 @@ import ( @@ -31,7 +31,7 @@ index b6521d3f55f..c7c3935b946 100644 }, diff --git a/internal/service/ecr/credentials_data_source.go b/internal/service/ecr/credentials_data_source.go new file mode 100644 -index 00000000000..b6e19a72839 +index 0000000000..b6e19a7283 --- /dev/null +++ b/internal/service/ecr/credentials_data_source.go @@ -0,0 +1,68 @@ @@ -105,7 +105,7 @@ index 00000000000..b6e19a72839 +} diff --git a/internal/service/ecr/credentials_data_source_test.go b/internal/service/ecr/credentials_data_source_test.go new file mode 100644 -index 00000000000..f0f875399e0 +index 0000000000..f0f875399e --- /dev/null +++ b/internal/service/ecr/credentials_data_source_test.go @@ -0,0 +1,37 @@ diff --git a/patches/0010-Add-custom-appautoscaling-examples.patch b/patches/0010-Add-custom-appautoscaling-examples.patch index 614336dfc12..c28496c204e 100644 --- a/patches/0010-Add-custom-appautoscaling-examples.patch +++ b/patches/0010-Add-custom-appautoscaling-examples.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add custom appautoscaling examples diff --git a/website/docs/r/appautoscaling_policy.html.markdown b/website/docs/r/appautoscaling_policy.html.markdown -index 10307ebf616..642fd54cec3 100644 +index 10307ebf61..642fd54cec 100644 --- a/website/docs/r/appautoscaling_policy.html.markdown +++ b/website/docs/r/appautoscaling_policy.html.markdown @@ -196,6 +196,34 @@ resource "aws_appautoscaling_policy" "example" { @@ -44,7 +44,7 @@ index 10307ebf616..642fd54cec3 100644 This resource supports the following arguments: diff --git a/website/docs/r/appautoscaling_target.html.markdown b/website/docs/r/appautoscaling_target.html.markdown -index 18b00b2d4a9..7acfb13f10b 100644 +index 18b00b2d4a..7acfb13f10 100644 --- a/website/docs/r/appautoscaling_target.html.markdown +++ b/website/docs/r/appautoscaling_target.html.markdown @@ -82,6 +82,18 @@ resource "aws_appautoscaling_target" "ecs_target" { diff --git a/patches/0011-Add-dedicated_host-docs.patch b/patches/0011-Add-dedicated_host-docs.patch index 58963af8c83..dbd3453e9d4 100644 --- a/patches/0011-Add-dedicated_host-docs.patch +++ b/patches/0011-Add-dedicated_host-docs.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add dedicated_host docs diff --git a/website/docs/d/dedicated_host.html.markdown b/website/docs/d/dedicated_host.html.markdown new file mode 100644 -index 00000000000..9473a00c591 +index 0000000000..9473a00c59 --- /dev/null +++ b/website/docs/d/dedicated_host.html.markdown @@ -0,0 +1,75 @@ @@ -87,7 +87,7 @@ index 00000000000..9473a00c591 +``` diff --git a/website/docs/r/dedicated_host.html.markdown b/website/docs/r/dedicated_host.html.markdown new file mode 100644 -index 00000000000..01845aa221c +index 0000000000..01845aa221 --- /dev/null +++ b/website/docs/r/dedicated_host.html.markdown @@ -0,0 +1,71 @@ diff --git a/patches/0012-Revert-WAF-schema-changes.patch b/patches/0012-Revert-WAF-schema-changes.patch index 01908854b18..6ff046706ae 100644 --- a/patches/0012-Revert-WAF-schema-changes.patch +++ b/patches/0012-Revert-WAF-schema-changes.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Revert WAF schema changes - This causes far too many types to be generated downstream. diff --git a/internal/service/wafv2/schemas.go b/internal/service/wafv2/schemas.go -index 8ac8b8d5342..65f810be491 100644 +index 8ac8b8d534..65f810be49 100644 --- a/internal/service/wafv2/schemas.go +++ b/internal/service/wafv2/schemas.go @@ -56,14 +56,14 @@ func ruleGroupRootStatementSchema(level int) *schema.Schema { diff --git a/patches/0013-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch b/patches/0013-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch index 36f79884448..25573c4e2ad 100644 --- a/patches/0013-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch +++ b/patches/0013-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Catch cty panic in new The root cause is not fully understood yet but this might unblock us. diff --git a/internal/service/sns/topic_subscription.go b/internal/service/sns/topic_subscription.go -index dcef58b2333..c4cf612a344 100644 +index dcef58b233..c4cf612a34 100644 --- a/internal/service/sns/topic_subscription.go +++ b/internal/service/sns/topic_subscription.go @@ -545,9 +545,11 @@ func normalizeTopicSubscriptionDeliveryPolicy(policy string) ([]byte, error) { diff --git a/patches/0014-add-matchmaking-configuration-72.patch b/patches/0014-add-matchmaking-configuration-72.patch index 51828f61e19..b9e73871179 100644 --- a/patches/0014-add-matchmaking-configuration-72.patch +++ b/patches/0014-add-matchmaking-configuration-72.patch @@ -10,7 +10,7 @@ Subject: [PATCH] add matchmaking configuration (#72) * add resource docs diff --git a/internal/provider/provider.go b/internal/provider/provider.go -index c7c3935b946..30ebfcf0f30 100644 +index c7c3935b94..30ebfcf0f3 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -16,6 +16,7 @@ import ( @@ -33,7 +33,7 @@ index c7c3935b946..30ebfcf0f30 100644 diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go new file mode 100644 -index 00000000000..0a7c8ea635d +index 0000000000..0a7c8ea635 --- /dev/null +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -0,0 +1,386 @@ @@ -425,7 +425,7 @@ index 00000000000..0a7c8ea635d +} diff --git a/internal/service/gamelift/matchmaking_configuration_test.go b/internal/service/gamelift/matchmaking_configuration_test.go new file mode 100644 -index 00000000000..94c9a8c29bd +index 0000000000..94c9a8c29b --- /dev/null +++ b/internal/service/gamelift/matchmaking_configuration_test.go @@ -0,0 +1,267 @@ @@ -698,7 +698,7 @@ index 00000000000..94c9a8c29bd +} diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go new file mode 100644 -index 00000000000..28d15ecf5ea +index 0000000000..28d15ecf5e --- /dev/null +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -0,0 +1,163 @@ @@ -867,7 +867,7 @@ index 00000000000..28d15ecf5ea +} diff --git a/internal/service/gamelift/matchmaking_rule_set_test.go b/internal/service/gamelift/matchmaking_rule_set_test.go new file mode 100644 -index 00000000000..9dbf0395884 +index 0000000000..9dbf039588 --- /dev/null +++ b/internal/service/gamelift/matchmaking_rule_set_test.go @@ -0,0 +1,138 @@ @@ -1011,7 +1011,7 @@ index 00000000000..9dbf0395884 +} diff --git a/website/docs/r/gamelift_matchmaking_configuration.html.markdown b/website/docs/r/gamelift_matchmaking_configuration.html.markdown new file mode 100644 -index 00000000000..2d411ad301c +index 0000000000..2d411ad301 --- /dev/null +++ b/website/docs/r/gamelift_matchmaking_configuration.html.markdown @@ -0,0 +1,106 @@ @@ -1123,7 +1123,7 @@ index 00000000000..2d411ad301c +``` diff --git a/website/docs/r/gamelift_matchmaking_rule_set.html.markdown b/website/docs/r/gamelift_matchmaking_rule_set.html.markdown new file mode 100644 -index 00000000000..28013532bf1 +index 0000000000..28013532bf --- /dev/null +++ b/website/docs/r/gamelift_matchmaking_rule_set.html.markdown @@ -0,0 +1,52 @@ diff --git a/patches/0015-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch b/patches/0015-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch index ae4552d268d..b1bcf0bb459 100644 --- a/patches/0015-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch +++ b/patches/0015-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch @@ -12,7 +12,7 @@ This PR reverts our patches which will prevent future merge conflicts, and updat call sites to plumb through the proper Context objects. diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index 0a7c8ea635d..d8ee20dc65c 100644 +index 0a7c8ea635..d8ee20dc65 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -2,13 +2,13 @@ package gamelift @@ -162,7 +162,7 @@ index 0a7c8ea635d..d8ee20dc65c 100644 return nil diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go -index 28d15ecf5ea..8c1189199fb 100644 +index 28d15ecf5e..8c1189199f 100644 --- a/internal/service/gamelift/matchmaking_rule_set.go +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -2,12 +2,12 @@ package gamelift @@ -300,7 +300,7 @@ index 28d15ecf5ea..8c1189199fb 100644 return nil diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index b1dc400249c..0e1e17baa33 100644 +index b1dc400249..0e1e17baa3 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -20,6 +20,7 @@ import ( @@ -891,7 +891,7 @@ index b1dc400249c..0e1e17baa33 100644 func() (interface{}, error) { return conn.PutBucketEncryption(i) diff --git a/internal/service/s3legacy/wait.go b/internal/service/s3legacy/wait.go -index 7a548d8d6db..9031539c196 100644 +index 7a548d8d6d..9031539c19 100644 --- a/internal/service/s3legacy/wait.go +++ b/internal/service/s3legacy/wait.go @@ -13,6 +13,6 @@ const ( diff --git a/patches/0016-Revert-Update-endpointHashIPAddress.patch b/patches/0016-Revert-Update-endpointHashIPAddress.patch index aa8197d0de5..e3843a14640 100644 --- a/patches/0016-Revert-Update-endpointHashIPAddress.patch +++ b/patches/0016-Revert-Update-endpointHashIPAddress.patch @@ -9,7 +9,7 @@ This commit causes never-converging diffs due to incorrect use of a computed property in hashing. diff --git a/internal/service/route53resolver/endpoint.go b/internal/service/route53resolver/endpoint.go -index f9ecbc7cc8a..842ebac62c9 100644 +index f9ecbc7cc8..842ebac62c 100644 --- a/internal/service/route53resolver/endpoint.go +++ b/internal/service/route53resolver/endpoint.go @@ -439,7 +439,7 @@ func waitEndpointDeleted(ctx context.Context, conn *route53resolver.Client, id s diff --git a/patches/0017-Fixup-gamelift-context.patch b/patches/0017-Fixup-gamelift-context.patch index e99ba7f9f3e..f813dfc75cd 100644 --- a/patches/0017-Fixup-gamelift-context.patch +++ b/patches/0017-Fixup-gamelift-context.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fixup gamelift context diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index d8ee20dc65c..e17f71e6b66 100644 +index d8ee20dc65..e17f71e6b6 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -148,7 +148,7 @@ func ResourceMatchMakingConfiguration() *schema.Resource { @@ -18,7 +18,7 @@ index d8ee20dc65c..e17f71e6b66 100644 input := gamelift.CreateMatchmakingConfigurationInput{ AcceptanceRequired: aws.Bool(d.Get("acceptance_required").(bool)), diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go -index 8c1189199fb..254c96efc6e 100644 +index 8c1189199f..254c96efc6 100644 --- a/internal/service/gamelift/matchmaking_rule_set.go +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -60,7 +60,7 @@ func ResourceMatchmakingRuleSet() *schema.Resource { diff --git a/patches/0018-Change-default-descriptions-to-Managed-by-Pulumi.patch b/patches/0018-Change-default-descriptions-to-Managed-by-Pulumi.patch index 3a4d923e873..6dbeda9aa0f 100644 --- a/patches/0018-Change-default-descriptions-to-Managed-by-Pulumi.patch +++ b/patches/0018-Change-default-descriptions-to-Managed-by-Pulumi.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Change default descriptions to "Managed by Pulumi" diff --git a/internal/service/apigateway/api_key.go b/internal/service/apigateway/api_key.go -index 1bc1374a310..9bc6fba23ec 100644 +index 1bc1374a31..9bc6fba23e 100644 --- a/internal/service/apigateway/api_key.go +++ b/internal/service/apigateway/api_key.go @@ -55,7 +55,7 @@ func resourceAPIKey() *schema.Resource { @@ -18,7 +18,7 @@ index 1bc1374a310..9bc6fba23ec 100644 names.AttrEnabled: { Type: schema.TypeBool, diff --git a/internal/service/appsync/api_key.go b/internal/service/appsync/api_key.go -index fbdca7da916..9cdc01f8ec0 100644 +index fbdca7da91..9cdc01f8ec 100644 --- a/internal/service/appsync/api_key.go +++ b/internal/service/appsync/api_key.go @@ -49,7 +49,7 @@ func resourceAPIKey() *schema.Resource { @@ -31,7 +31,7 @@ index fbdca7da916..9cdc01f8ec0 100644 "expires": { Type: schema.TypeString, diff --git a/internal/service/cloudfront/origin_access_control.go b/internal/service/cloudfront/origin_access_control.go -index 837e79c0571..8fc82809004 100644 +index 837e79c057..8fc8280900 100644 --- a/internal/service/cloudfront/origin_access_control.go +++ b/internal/service/cloudfront/origin_access_control.go @@ -38,7 +38,7 @@ func resourceOriginAccessControl() *schema.Resource { @@ -44,7 +44,7 @@ index 837e79c0571..8fc82809004 100644 }, "etag": { diff --git a/internal/service/docdb/cluster_parameter_group.go b/internal/service/docdb/cluster_parameter_group.go -index 8a99e5b0479..361c39f731e 100644 +index 8a99e5b047..361c39f731 100644 --- a/internal/service/docdb/cluster_parameter_group.go +++ b/internal/service/docdb/cluster_parameter_group.go @@ -50,7 +50,7 @@ func resourceClusterParameterGroup() *schema.Resource { @@ -57,7 +57,7 @@ index 8a99e5b0479..361c39f731e 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/docdb/subnet_group.go b/internal/service/docdb/subnet_group.go -index 54669365473..526c40e604d 100644 +index 5466936547..526c40e604 100644 --- a/internal/service/docdb/subnet_group.go +++ b/internal/service/docdb/subnet_group.go @@ -46,7 +46,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -70,7 +70,7 @@ index 54669365473..526c40e604d 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/ec2/vpc_security_group.go b/internal/service/ec2/vpc_security_group.go -index 82b8dae6e72..a89db0b86da 100644 +index 82b8dae6e7..a89db0b86d 100644 --- a/internal/service/ec2/vpc_security_group.go +++ b/internal/service/ec2/vpc_security_group.go @@ -69,7 +69,7 @@ func resourceSecurityGroup() *schema.Resource { @@ -83,7 +83,7 @@ index 82b8dae6e72..a89db0b86da 100644 }, "egress": securityGroupRuleSetNestedBlock, diff --git a/internal/service/elasticache/parameter_group.go b/internal/service/elasticache/parameter_group.go -index 5a265a26d89..ecc1f2d6acf 100644 +index 5a265a26d8..ecc1f2d6ac 100644 --- a/internal/service/elasticache/parameter_group.go +++ b/internal/service/elasticache/parameter_group.go @@ -49,7 +49,7 @@ func resourceParameterGroup() *schema.Resource { @@ -96,7 +96,7 @@ index 5a265a26d89..ecc1f2d6acf 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/elasticache/subnet_group.go b/internal/service/elasticache/subnet_group.go -index 89920a47e3f..71f4a900d74 100644 +index 89920a47e3..71f4a900d7 100644 --- a/internal/service/elasticache/subnet_group.go +++ b/internal/service/elasticache/subnet_group.go @@ -48,7 +48,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -109,7 +109,7 @@ index 89920a47e3f..71f4a900d74 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/mediapackage/channel.go b/internal/service/mediapackage/channel.go -index 961d1f04380..710fd0b998f 100644 +index 961d1f0438..710fd0b998 100644 --- a/internal/service/mediapackage/channel.go +++ b/internal/service/mediapackage/channel.go @@ -51,7 +51,7 @@ func ResourceChannel() *schema.Resource { @@ -122,7 +122,7 @@ index 961d1f04380..710fd0b998f 100644 "hls_ingest": { Type: schema.TypeList, diff --git a/internal/service/memorydb/cluster.go b/internal/service/memorydb/cluster.go -index f3a35c84e5e..1e3027048a3 100644 +index f3a35c84e5..1e3027048a 100644 --- a/internal/service/memorydb/cluster.go +++ b/internal/service/memorydb/cluster.go @@ -79,7 +79,7 @@ func resourceCluster() *schema.Resource { @@ -135,7 +135,7 @@ index f3a35c84e5e..1e3027048a3 100644 "engine_patch_version": { Type: schema.TypeString, diff --git a/internal/service/memorydb/parameter_group.go b/internal/service/memorydb/parameter_group.go -index 625357ac1b2..c10f1daa43a 100644 +index 625357ac1b..c10f1daa43 100644 --- a/internal/service/memorydb/parameter_group.go +++ b/internal/service/memorydb/parameter_group.go @@ -54,7 +54,7 @@ func resourceParameterGroup() *schema.Resource { @@ -148,7 +148,7 @@ index 625357ac1b2..c10f1daa43a 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/memorydb/subnet_group.go b/internal/service/memorydb/subnet_group.go -index b01015569fa..1e3d84acfa1 100644 +index b01015569f..1e3d84acfa 100644 --- a/internal/service/memorydb/subnet_group.go +++ b/internal/service/memorydb/subnet_group.go @@ -49,7 +49,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -161,7 +161,7 @@ index b01015569fa..1e3d84acfa1 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/neptune/cluster_parameter_group.go b/internal/service/neptune/cluster_parameter_group.go -index b31cd660ef4..8ec5d31faed 100644 +index b31cd660ef..8ec5d31fae 100644 --- a/internal/service/neptune/cluster_parameter_group.go +++ b/internal/service/neptune/cluster_parameter_group.go @@ -49,7 +49,7 @@ func resourceClusterParameterGroup() *schema.Resource { @@ -174,7 +174,7 @@ index b31cd660ef4..8ec5d31faed 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/neptune/parameter_group.go b/internal/service/neptune/parameter_group.go -index df81d7c11bb..518b7c2f117 100644 +index df81d7c11b..518b7c2f11 100644 --- a/internal/service/neptune/parameter_group.go +++ b/internal/service/neptune/parameter_group.go @@ -55,7 +55,7 @@ func resourceParameterGroup() *schema.Resource { @@ -187,7 +187,7 @@ index df81d7c11bb..518b7c2f117 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/neptune/subnet_group.go b/internal/service/neptune/subnet_group.go -index 1d97895eeaa..45e74ae9ce8 100644 +index 1d97895eea..45e74ae9ce 100644 --- a/internal/service/neptune/subnet_group.go +++ b/internal/service/neptune/subnet_group.go @@ -45,7 +45,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -200,7 +200,7 @@ index 1d97895eeaa..45e74ae9ce8 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/rds/cluster_parameter_group.go b/internal/service/rds/cluster_parameter_group.go -index 28a4a0c6ae0..26112e8db51 100644 +index 28a4a0c6ae..26112e8db5 100644 --- a/internal/service/rds/cluster_parameter_group.go +++ b/internal/service/rds/cluster_parameter_group.go @@ -51,7 +51,7 @@ func resourceClusterParameterGroup() *schema.Resource { @@ -213,7 +213,7 @@ index 28a4a0c6ae0..26112e8db51 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/rds/option_group.go b/internal/service/rds/option_group.go -index d19358fa76e..b13859ab8e3 100644 +index d19358fa76..b13859ab8e 100644 --- a/internal/service/rds/option_group.go +++ b/internal/service/rds/option_group.go @@ -127,7 +127,7 @@ func resourceOptionGroup() *schema.Resource { @@ -226,7 +226,7 @@ index d19358fa76e..b13859ab8e3 100644 names.AttrSkipDestroy: { Type: schema.TypeBool, diff --git a/internal/service/rds/parameter_group.go b/internal/service/rds/parameter_group.go -index 0e4ca3f870e..c1e331f54fa 100644 +index 0e4ca3f870..c1e331f54f 100644 --- a/internal/service/rds/parameter_group.go +++ b/internal/service/rds/parameter_group.go @@ -53,7 +53,7 @@ func resourceParameterGroup() *schema.Resource { @@ -239,7 +239,7 @@ index 0e4ca3f870e..c1e331f54fa 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/rds/subnet_group.go b/internal/service/rds/subnet_group.go -index 646add5ad81..2731f4e425b 100644 +index 646add5ad8..2731f4e425 100644 --- a/internal/service/rds/subnet_group.go +++ b/internal/service/rds/subnet_group.go @@ -48,7 +48,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -252,7 +252,7 @@ index 646add5ad81..2731f4e425b 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/redshift/parameter_group.go b/internal/service/redshift/parameter_group.go -index 0552e455d6d..d413e1baf83 100644 +index 0552e455d6..d413e1baf8 100644 --- a/internal/service/redshift/parameter_group.go +++ b/internal/service/redshift/parameter_group.go @@ -51,7 +51,7 @@ func resourceParameterGroup() *schema.Resource { @@ -265,7 +265,7 @@ index 0552e455d6d..d413e1baf83 100644 names.AttrFamily: { Type: schema.TypeString, diff --git a/internal/service/redshift/subnet_group.go b/internal/service/redshift/subnet_group.go -index d95746d3432..47390e9d5b6 100644 +index d95746d343..47390e9d5b 100644 --- a/internal/service/redshift/subnet_group.go +++ b/internal/service/redshift/subnet_group.go @@ -46,7 +46,7 @@ func resourceSubnetGroup() *schema.Resource { @@ -278,7 +278,7 @@ index d95746d3432..47390e9d5b6 100644 names.AttrName: { Type: schema.TypeString, diff --git a/internal/service/route53/record.go b/internal/service/route53/record.go -index c190462b1f4..580e21ede58 100644 +index c3170d4965..f13dada174 100644 --- a/internal/service/route53/record.go +++ b/internal/service/route53/record.go @@ -360,7 +360,7 @@ func resourceRecordCreate(ctx context.Context, d *schema.ResourceData, meta inte @@ -290,7 +290,7 @@ index c190462b1f4..580e21ede58 100644 }, HostedZoneId: aws.String(cleanZoneID(aws.ToString(zoneRecord.HostedZone.Id))), } -@@ -664,7 +664,7 @@ func resourceRecordUpdate(ctx context.Context, d *schema.ResourceData, meta inte +@@ -670,7 +670,7 @@ func resourceRecordUpdate(ctx context.Context, d *schema.ResourceData, meta inte ResourceRecordSet: expandResourceRecordSet(d, aws.ToString(zoneRecord.HostedZone.Name)), }, }, @@ -299,7 +299,7 @@ index c190462b1f4..580e21ede58 100644 }, HostedZoneId: aws.String(cleanZoneID(aws.ToString(zoneRecord.HostedZone.Id))), } -@@ -731,7 +731,7 @@ func resourceRecordDelete(ctx context.Context, d *schema.ResourceData, meta inte +@@ -737,7 +737,7 @@ func resourceRecordDelete(ctx context.Context, d *schema.ResourceData, meta inte ResourceRecordSet: rec, }, }, @@ -309,7 +309,7 @@ index c190462b1f4..580e21ede58 100644 HostedZoneId: aws.String(zoneID), } diff --git a/internal/service/route53/zone.go b/internal/service/route53/zone.go -index 400486c2e41..74417dc9cb0 100644 +index 86b843b763..21ed69c593 100644 --- a/internal/service/route53/zone.go +++ b/internal/service/route53/zone.go @@ -52,7 +52,7 @@ func resourceZone() *schema.Resource { @@ -322,7 +322,7 @@ index 400486c2e41..74417dc9cb0 100644 }, "delegation_set_id": { diff --git a/internal/service/route53/zone_association.go b/internal/service/route53/zone_association.go -index 6bf4c1ef12f..19c08a72502 100644 +index 6bf4c1ef12..19c08a7250 100644 --- a/internal/service/route53/zone_association.go +++ b/internal/service/route53/zone_association.go @@ -74,7 +74,7 @@ func resourceZoneAssociationCreate(ctx context.Context, d *schema.ResourceData, diff --git a/patches/0019-remove-required-elements-from-schema-and-fix-tests-7.patch b/patches/0019-remove-required-elements-from-schema-and-fix-tests-7.patch index 41d4358a495..67570f9e5dd 100644 --- a/patches/0019-remove-required-elements-from-schema-and-fix-tests-7.patch +++ b/patches/0019-remove-required-elements-from-schema-and-fix-tests-7.patch @@ -6,7 +6,7 @@ Subject: [PATCH] remove required elements from schema and fix tests (#77) Co-authored-by: Lee Briggs diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index e17f71e6b66..4a0ccf149dc 100644 +index e17f71e6b6..4a0ccf149d 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -29,7 +29,7 @@ func ResourceMatchMakingConfiguration() *schema.Resource { @@ -42,7 +42,7 @@ index e17f71e6b66..4a0ccf149dc 100644 return nil diff --git a/internal/service/gamelift/matchmaking_configuration_test.go b/internal/service/gamelift/matchmaking_configuration_test.go -index 94c9a8c29bd..339f9dd6dfa 100644 +index 94c9a8c29b..339f9dd6df 100644 --- a/internal/service/gamelift/matchmaking_configuration_test.go +++ b/internal/service/gamelift/matchmaking_configuration_test.go @@ -1,6 +1,7 @@ @@ -169,7 +169,7 @@ index 94c9a8c29bd..339f9dd6dfa 100644 }) diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go -index 254c96efc6e..54b86a0426a 100644 +index 254c96efc6..54b86a0426 100644 --- a/internal/service/gamelift/matchmaking_rule_set.go +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -119,11 +119,11 @@ func resourceMatchmakingRuleSetRead(ctx context.Context, d *schema.ResourceData, @@ -187,7 +187,7 @@ index 254c96efc6e..54b86a0426a 100644 return nil diff --git a/internal/service/gamelift/matchmaking_rule_set_test.go b/internal/service/gamelift/matchmaking_rule_set_test.go -index 9dbf0395884..061e93f186b 100644 +index 9dbf039588..061e93f186 100644 --- a/internal/service/gamelift/matchmaking_rule_set_test.go +++ b/internal/service/gamelift/matchmaking_rule_set_test.go @@ -1,6 +1,7 @@ diff --git a/patches/0020-Temp-remove-cognito_identity_pool_roles_attachment-e.patch b/patches/0020-Temp-remove-cognito_identity_pool_roles_attachment-e.patch index c33e0a673a3..868c10ed8f6 100644 --- a/patches/0020-Temp-remove-cognito_identity_pool_roles_attachment-e.patch +++ b/patches/0020-Temp-remove-cognito_identity_pool_roles_attachment-e.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Temp remove cognito_identity_pool_roles_attachment example diff --git a/website/docs/r/cognito_identity_pool_roles_attachment.html.markdown b/website/docs/r/cognito_identity_pool_roles_attachment.html.markdown -index 23c0000bb68..d56a26e5f0b 100644 +index 23c0000bb6..d56a26e5f0 100644 --- a/website/docs/r/cognito_identity_pool_roles_attachment.html.markdown +++ b/website/docs/r/cognito_identity_pool_roles_attachment.html.markdown @@ -12,87 +12,6 @@ Provides an AWS Cognito Identity Pool Roles Attachment. diff --git a/patches/0021-Fix-elbv2-target-group-read-to-workaround-2517.patch b/patches/0021-Fix-elbv2-target-group-read-to-workaround-2517.patch index b1e83199e87..5ee91dbdc06 100644 --- a/patches/0021-Fix-elbv2-target-group-read-to-workaround-2517.patch +++ b/patches/0021-Fix-elbv2-target-group-read-to-workaround-2517.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix elbv2 target group read to workaround #2517 diff --git a/internal/service/elbv2/target_group.go b/internal/service/elbv2/target_group.go -index 4ebb52c2eb6..80fc8ed5b16 100644 +index 4ebb52c2eb..80fc8ed5b1 100644 --- a/internal/service/elbv2/target_group.go +++ b/internal/service/elbv2/target_group.go @@ -635,19 +635,19 @@ func resourceTargetGroupRead(ctx context.Context, d *schema.ResourceData, meta i diff --git a/patches/0022-Fix-spurrious-json-diff-for-redrive_policy.patch b/patches/0022-Fix-spurrious-json-diff-for-redrive_policy.patch index 321a4f920ae..1d2c75b27af 100644 --- a/patches/0022-Fix-spurrious-json-diff-for-redrive_policy.patch +++ b/patches/0022-Fix-spurrious-json-diff-for-redrive_policy.patch @@ -9,7 +9,7 @@ in state. Fix for https://github.com/pulumi/pulumi-aws/issues/2307. diff --git a/internal/service/sqs/queue_redrive_policy.go b/internal/service/sqs/queue_redrive_policy.go -index 3d871cf4d7e..30ced084d0d 100644 +index 3d871cf4d7..30ced084d0 100644 --- a/internal/service/sqs/queue_redrive_policy.go +++ b/internal/service/sqs/queue_redrive_policy.go @@ -32,9 +32,10 @@ func resourceQueueRedrivePolicy() *schema.Resource { diff --git a/patches/0023-Provide-context-to-conns.patch b/patches/0023-Provide-context-to-conns.patch index 5997dceaedb..0d314882f65 100644 --- a/patches/0023-Provide-context-to-conns.patch +++ b/patches/0023-Provide-context-to-conns.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Provide context to conns diff --git a/internal/service/ecr/credentials_data_source.go b/internal/service/ecr/credentials_data_source.go -index b6e19a72839..9176fa0a161 100644 +index b6e19a7283..9176fa0a16 100644 --- a/internal/service/ecr/credentials_data_source.go +++ b/internal/service/ecr/credentials_data_source.go @@ -1,6 +1,7 @@ @@ -27,7 +27,7 @@ index b6e19a72839..9176fa0a161 100644 registryID := d.Get("registry_id").(string) log.Printf("[DEBUG] Reading ECR repository credentials %s", registryID) diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index 4a0ccf149dc..72f7d31d857 100644 +index 4a0ccf149d..72f7d31d85 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -146,7 +146,7 @@ func ResourceMatchMakingConfiguration() *schema.Resource { @@ -85,7 +85,7 @@ index 4a0ccf149dc..72f7d31d857 100644 _, err := conn.DeleteMatchmakingConfiguration(&gamelift.DeleteMatchmakingConfigurationInput{ Name: aws.String(d.Id()), diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go -index 54b86a0426a..d9f2424b7a3 100644 +index 54b86a0426..d9f2424b7a 100644 --- a/internal/service/gamelift/matchmaking_rule_set.go +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -58,7 +58,7 @@ func ResourceMatchmakingRuleSet() *schema.Resource { @@ -143,7 +143,7 @@ index 54b86a0426a..d9f2424b7a3 100644 _, err := conn.DeleteMatchmakingRuleSet(&gamelift.DeleteMatchmakingRuleSetInput{ Name: aws.String(d.Id()), diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index 0e1e17baa33..dc93531e67c 100644 +index 0e1e17baa3..dc93531e67 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -673,7 +673,7 @@ func ResourceBucketLegacy() *schema.Resource { diff --git a/patches/0024-Match-the-tags-behavior-of-other-resources.patch b/patches/0024-Match-the-tags-behavior-of-other-resources.patch index 783301e6785..51b53456f2b 100644 --- a/patches/0024-Match-the-tags-behavior-of-other-resources.patch +++ b/patches/0024-Match-the-tags-behavior-of-other-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Match the "tags" behavior of other resources diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index dc93531e67c..1da08293c49 100644 +index dc93531e67..1da08293c4 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -31,6 +31,7 @@ import ( diff --git a/patches/0025-move-shim-logic-to-upstream-as-a-patch.patch b/patches/0025-move-shim-logic-to-upstream-as-a-patch.patch index 52f1fc2d4d1..bcccdba0cdd 100644 --- a/patches/0025-move-shim-logic-to-upstream-as-a-patch.patch +++ b/patches/0025-move-shim-logic-to-upstream-as-a-patch.patch @@ -6,7 +6,7 @@ Subject: [PATCH] move shim logic to upstream as a patch diff --git a/shim/shim.go b/shim/shim.go new file mode 100644 -index 00000000000..2af7c069252 +index 0000000000..2af7c06925 --- /dev/null +++ b/shim/shim.go @@ -0,0 +1,36 @@ diff --git a/patches/0026-Restore-S3ConnURICleaningDisabled.patch b/patches/0026-Restore-S3ConnURICleaningDisabled.patch index f15c2782595..9d1b9582ada 100644 --- a/patches/0026-Restore-S3ConnURICleaningDisabled.patch +++ b/patches/0026-Restore-S3ConnURICleaningDisabled.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Restore S3ConnURICleaningDisabled diff --git a/internal/conns/awsclient_extra.go b/internal/conns/awsclient_extra.go new file mode 100644 -index 00000000000..96c809fc475 +index 0000000000..96c809fc47 --- /dev/null +++ b/internal/conns/awsclient_extra.go @@ -0,0 +1,22 @@ diff --git a/patches/0027-Do-not-compute-tags_all-at-TF-level.patch b/patches/0027-Do-not-compute-tags_all-at-TF-level.patch index 87430bd6015..2cf0c3eca08 100644 --- a/patches/0027-Do-not-compute-tags_all-at-TF-level.patch +++ b/patches/0027-Do-not-compute-tags_all-at-TF-level.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Do not compute tags_all at TF level diff --git a/internal/framework/resource_with_configure.go b/internal/framework/resource_with_configure.go -index 6ece15b4f4e..89844a12330 100644 +index 6ece15b4f4..89844a1233 100644 --- a/internal/framework/resource_with_configure.go +++ b/internal/framework/resource_with_configure.go @@ -30,6 +30,11 @@ func (r *ResourceWithConfigure) Configure(_ context.Context, request resource.Co @@ -21,7 +21,7 @@ index 6ece15b4f4e..89844a12330 100644 if request.Plan.Raw.IsNull() { return diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index c6408919ddf..e57aa07e8f8 100644 +index c6408919dd..e57aa07e8f 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go @@ -435,8 +435,8 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { @@ -36,10 +36,10 @@ index c6408919ddf..e57aa07e8f8 100644 } } else { diff --git a/internal/service/appconfig/environment.go b/internal/service/appconfig/environment.go -index 78e0e9656d2..ef2377b2874 100644 +index 23d078f15a..a92046e029 100644 --- a/internal/service/appconfig/environment.go +++ b/internal/service/appconfig/environment.go -@@ -103,7 +103,7 @@ func (r *resourceEnvironment) Schema(ctx context.Context, request resource.Schem +@@ -97,7 +97,7 @@ func (r *resourceEnvironment) Schema(ctx context.Context, request resource.Schem }, }, names.AttrTags: tftags.TagsAttribute(), @@ -49,7 +49,7 @@ index 78e0e9656d2..ef2377b2874 100644 Blocks: map[string]schema.Block{ "monitor": schema.SetNestedBlock{ diff --git a/internal/service/auditmanager/assessment.go b/internal/service/auditmanager/assessment.go -index 459438b54d6..05a49d1f511 100644 +index 459438b54d..05a49d1f51 100644 --- a/internal/service/auditmanager/assessment.go +++ b/internal/service/auditmanager/assessment.go @@ -95,7 +95,7 @@ func (r *resourceAssessment) Schema(ctx context.Context, req resource.SchemaRequ @@ -62,7 +62,7 @@ index 459438b54d6..05a49d1f511 100644 Blocks: map[string]schema.Block{ "assessment_reports_destination": schema.ListNestedBlock{ diff --git a/internal/service/auditmanager/control.go b/internal/service/auditmanager/control.go -index 2204efea5ab..7c4d78f993b 100644 +index 2204efea5a..7c4d78f993 100644 --- a/internal/service/auditmanager/control.go +++ b/internal/service/auditmanager/control.go @@ -67,7 +67,7 @@ func (r *resourceControl) Schema(ctx context.Context, req resource.SchemaRequest @@ -75,7 +75,7 @@ index 2204efea5ab..7c4d78f993b 100644 Optional: true, }, diff --git a/internal/service/auditmanager/framework.go b/internal/service/auditmanager/framework.go -index bd15eca4358..1733d9a4416 100644 +index bd15eca435..1733d9a441 100644 --- a/internal/service/auditmanager/framework.go +++ b/internal/service/auditmanager/framework.go @@ -69,7 +69,7 @@ func (r *resourceFramework) Schema(ctx context.Context, req resource.SchemaReque @@ -88,7 +88,7 @@ index bd15eca4358..1733d9a4416 100644 Blocks: map[string]schema.Block{ "control_sets": schema.SetNestedBlock{ diff --git a/internal/service/batch/job_queue.go b/internal/service/batch/job_queue.go -index fc193b631bb..74497d80ff5 100644 +index fc193b631b..74497d80ff 100644 --- a/internal/service/batch/job_queue.go +++ b/internal/service/batch/job_queue.go @@ -97,7 +97,7 @@ func (r *jobQueueResource) Schema(ctx context.Context, request resource.SchemaRe @@ -101,7 +101,7 @@ index fc193b631bb..74497d80ff5 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/batch/job_queue_migrate.go b/internal/service/batch/job_queue_migrate.go -index 3d442ce4420..d4c84549589 100644 +index 3d442ce442..d4c8454958 100644 --- a/internal/service/batch/job_queue_migrate.go +++ b/internal/service/batch/job_queue_migrate.go @@ -39,7 +39,7 @@ func jobQueueSchema0(ctx context.Context) schema.Schema { @@ -114,7 +114,7 @@ index 3d442ce4420..d4c84549589 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/ec2/ec2_instance_connect_endpoint.go b/internal/service/ec2/ec2_instance_connect_endpoint.go -index 737b09ac5a5..f966d8ed3e7 100644 +index 59b4c098b6..27276abacd 100644 --- a/internal/service/ec2/ec2_instance_connect_endpoint.go +++ b/internal/service/ec2/ec2_instance_connect_endpoint.go @@ -118,7 +118,7 @@ func (r *instanceConnectEndpointResource) Schema(ctx context.Context, req resour @@ -127,7 +127,7 @@ index 737b09ac5a5..f966d8ed3e7 100644 Computed: true, PlanModifiers: []planmodifier.String{ diff --git a/internal/service/ec2/vpc_security_group_ingress_rule.go b/internal/service/ec2/vpc_security_group_ingress_rule.go -index 7f4a4c5f043..972c3723231 100644 +index 7f4a4c5f04..972c372323 100644 --- a/internal/service/ec2/vpc_security_group_ingress_rule.go +++ b/internal/service/ec2/vpc_security_group_ingress_rule.go @@ -228,7 +228,7 @@ func (r *securityGroupRuleResource) Schema(ctx context.Context, request resource @@ -140,7 +140,7 @@ index 7f4a4c5f043..972c3723231 100644 Optional: true, Validators: []validator.Int64{ diff --git a/internal/service/lexv2models/bot.go b/internal/service/lexv2models/bot.go -index 75e5b7f1b9e..8de291d05f3 100644 +index 75e5b7f1b9..8de291d05f 100644 --- a/internal/service/lexv2models/bot.go +++ b/internal/service/lexv2models/bot.go @@ -82,7 +82,7 @@ func (r *resourceBot) Schema(ctx context.Context, req resource.SchemaRequest, re @@ -153,7 +153,7 @@ index 75e5b7f1b9e..8de291d05f3 100644 ElementType: types.StringType, Optional: true, diff --git a/internal/service/opensearchserverless/collection.go b/internal/service/opensearchserverless/collection.go -index e2dfcda3c8e..e524fcad2d5 100644 +index e2dfcda3c8..e524fcad2d 100644 --- a/internal/service/opensearchserverless/collection.go +++ b/internal/service/opensearchserverless/collection.go @@ -124,7 +124,7 @@ func (r *resourceCollection) Schema(ctx context.Context, req resource.SchemaRequ @@ -166,7 +166,7 @@ index e2dfcda3c8e..e524fcad2d5 100644 Optional: true, Computed: true, diff --git a/internal/service/quicksight/namespace.go b/internal/service/quicksight/namespace.go -index 404f657e010..ceb29112cf4 100644 +index 404f657e01..ceb29112cf 100644 --- a/internal/service/quicksight/namespace.go +++ b/internal/service/quicksight/namespace.go @@ -98,7 +98,7 @@ func (r *namespaceResource) Schema(ctx context.Context, req resource.SchemaReque @@ -179,7 +179,7 @@ index 404f657e010..ceb29112cf4 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/quicksight/vpc_connection.go b/internal/service/quicksight/vpc_connection.go -index 8607c6dc0dd..eb2e74d1d60 100644 +index 8607c6dc0d..eb2e74d1d6 100644 --- a/internal/service/quicksight/vpc_connection.go +++ b/internal/service/quicksight/vpc_connection.go @@ -141,7 +141,7 @@ func (r *vpcConnectionResource) Schema(ctx context.Context, req resource.SchemaR @@ -192,7 +192,7 @@ index 8607c6dc0dd..eb2e74d1d60 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/resourceexplorer2/index.go b/internal/service/resourceexplorer2/index.go -index ff89093f18d..f8fd12370f0 100644 +index ff89093f18..f8fd12370f 100644 --- a/internal/service/resourceexplorer2/index.go +++ b/internal/service/resourceexplorer2/index.go @@ -58,7 +58,7 @@ func (r *indexResource) Schema(ctx context.Context, request resource.SchemaReque @@ -205,7 +205,7 @@ index ff89093f18d..f8fd12370f0 100644 CustomType: fwtypes.StringEnumType[awstypes.IndexType](), Required: true, diff --git a/internal/service/resourceexplorer2/view.go b/internal/service/resourceexplorer2/view.go -index 414ac271d1c..9172d354778 100644 +index 414ac271d1..9172d35477 100644 --- a/internal/service/resourceexplorer2/view.go +++ b/internal/service/resourceexplorer2/view.go @@ -81,7 +81,7 @@ func (r *viewResource) Schema(ctx context.Context, request resource.SchemaReques @@ -218,7 +218,7 @@ index 414ac271d1c..9172d354778 100644 Blocks: map[string]schema.Block{ "filters": schema.ListNestedBlock{ diff --git a/internal/service/workspaces/connection_alias.go b/internal/service/workspaces/connection_alias.go -index 789e3748850..d5a771ce81e 100644 +index 789e374885..d5a771ce81 100644 --- a/internal/service/workspaces/connection_alias.go +++ b/internal/service/workspaces/connection_alias.go @@ -75,7 +75,7 @@ func (r *connectionAliasResource) Schema(ctx context.Context, request resource.S @@ -231,7 +231,7 @@ index 789e3748850..d5a771ce81e 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/verify/diff.go b/internal/verify/diff.go -index afffb80b4a9..afb980ec65b 100644 +index afffb80b4a..afb980ec65 100644 --- a/internal/verify/diff.go +++ b/internal/verify/diff.go @@ -22,6 +22,11 @@ import ( @@ -247,7 +247,7 @@ index afffb80b4a9..afb980ec65b 100644 ignoreTagsConfig := meta.(*conns.AWSClient).IgnoreTagsConfig(ctx) diff --git a/shim/shim.go b/shim/shim.go -index 2af7c069252..ce64074bfd4 100644 +index 2af7c06925..ce64074bfd 100644 --- a/shim/shim.go +++ b/shim/shim.go @@ -20,6 +20,9 @@ func NewUpstreamProvider(ctx context.Context) (UpstreamProvider, error) { diff --git a/patches/0028-aws_eks_cluster-implement-default_addons_to_remove.patch b/patches/0028-aws_eks_cluster-implement-default_addons_to_remove.patch index c9e2bf19aab..046a15a2aa6 100644 --- a/patches/0028-aws_eks_cluster-implement-default_addons_to_remove.patch +++ b/patches/0028-aws_eks_cluster-implement-default_addons_to_remove.patch @@ -5,7 +5,7 @@ Subject: [PATCH] aws_eks_cluster: implement default_addons_to_remove diff --git a/internal/service/eks/cluster.go b/internal/service/eks/cluster.go -index c2b5a975a98..0440141a4ba 100644 +index c2b5a975a9..0440141a4b 100644 --- a/internal/service/eks/cluster.go +++ b/internal/service/eks/cluster.go @@ -183,6 +183,13 @@ func resourceCluster() *schema.Resource { @@ -37,7 +37,7 @@ index c2b5a975a98..0440141a4ba 100644 func resourceClusterRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { diff --git a/internal/service/eks/cluster_addon_removal.go b/internal/service/eks/cluster_addon_removal.go new file mode 100644 -index 00000000000..681579735e6 +index 0000000000..681579735e --- /dev/null +++ b/internal/service/eks/cluster_addon_removal.go @@ -0,0 +1,141 @@ diff --git a/patches/0029-Fix-markTagsAllNotComputedForResources-to-recognize-.patch b/patches/0029-Fix-markTagsAllNotComputedForResources-to-recognize-.patch index cc6e7091465..1a5fe1cd486 100644 --- a/patches/0029-Fix-markTagsAllNotComputedForResources-to-recognize-.patch +++ b/patches/0029-Fix-markTagsAllNotComputedForResources-to-recognize-.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix markTagsAllNotComputedForResources to recognize diff --git a/shim/shim.go b/shim/shim.go -index ce64074bfd4..e24e53fe17f 100644 +index ce64074bfd..e24e53fe17 100644 --- a/shim/shim.go +++ b/shim/shim.go @@ -2,6 +2,7 @@ package shim diff --git a/patches/0030-Optimize-startup-performance.patch b/patches/0030-Optimize-startup-performance.patch index 577e57e1f97..6dfc9baa96d 100644 --- a/patches/0030-Optimize-startup-performance.patch +++ b/patches/0030-Optimize-startup-performance.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize startup performance diff --git a/internal/provider/provider.go b/internal/provider/provider.go -index 30ebfcf0f30..4c83f4bb1c4 100644 +index 30ebfcf0f3..4c83f4bb1c 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -317,7 +317,7 @@ func New(ctx context.Context) (*schema.Provider, error) { @@ -28,7 +28,7 @@ index 30ebfcf0f30..4c83f4bb1c4 100644 // Ensure that the schema look OK. diff --git a/internal/provider/provider_tagcheck.go b/internal/provider/provider_tagcheck.go new file mode 100644 -index 00000000000..8cea6059ba2 +index 0000000000..8cea6059ba --- /dev/null +++ b/internal/provider/provider_tagcheck.go @@ -0,0 +1,37 @@ @@ -70,7 +70,7 @@ index 00000000000..8cea6059ba2 + return r.SchemaMap() +} diff --git a/shim/shim.go b/shim/shim.go -index e24e53fe17f..3378f955bb9 100644 +index e24e53fe17..3378f955bb 100644 --- a/shim/shim.go +++ b/shim/shim.go @@ -17,7 +17,7 @@ type UpstreamProvider struct { diff --git a/patches/0031-DisableTagSchemaCheck-for-PF-provider.patch b/patches/0031-DisableTagSchemaCheck-for-PF-provider.patch index 748ea6807df..ea5d6684cb7 100644 --- a/patches/0031-DisableTagSchemaCheck-for-PF-provider.patch +++ b/patches/0031-DisableTagSchemaCheck-for-PF-provider.patch @@ -5,7 +5,7 @@ Subject: [PATCH] DisableTagSchemaCheck for PF provider diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index e57aa07e8f8..a64bcd031da 100644 +index e57aa07e8f..a64bcd031d 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go @@ -422,8 +422,7 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { @@ -20,7 +20,7 @@ index e57aa07e8f8..a64bcd031da 100644 if v.IsComputed() { diff --git a/internal/provider/fwprovider/provider_tagscheck.go b/internal/provider/fwprovider/provider_tagscheck.go new file mode 100644 -index 00000000000..f790acb4e25 +index 0000000000..f790acb4e2 --- /dev/null +++ b/internal/provider/fwprovider/provider_tagscheck.go @@ -0,0 +1,43 @@ @@ -68,7 +68,7 @@ index 00000000000..f790acb4e25 + return &resp +} diff --git a/shim/shim.go b/shim/shim.go -index 3378f955bb9..b94f722d26c 100644 +index 3378f955bb..b94f722d26 100644 --- a/shim/shim.go +++ b/shim/shim.go @@ -17,6 +17,7 @@ type UpstreamProvider struct { diff --git a/patches/0032-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch b/patches/0032-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch index 9c64f0b2e0e..d2814888b9d 100644 --- a/patches/0032-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch +++ b/patches/0032-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Run scripts/patch_computed_only.sh to patch diff --git a/internal/service/docdbelastic/cluster.go b/internal/service/docdbelastic/cluster.go -index a8cdeec386a..6d8306a0a97 100644 +index a8cdeec386..6d8306a0a9 100644 --- a/internal/service/docdbelastic/cluster.go +++ b/internal/service/docdbelastic/cluster.go @@ -147,7 +147,7 @@ func (r *resourceCluster) Schema(ctx context.Context, _ resource.SchemaRequest, @@ -19,7 +19,7 @@ index a8cdeec386a..6d8306a0a97 100644 CustomType: fwtypes.SetOfStringType, Optional: true, diff --git a/internal/service/eks/pod_identity_association.go b/internal/service/eks/pod_identity_association.go -index ce583fa5c40..9fdeea49d87 100644 +index ce583fa5c4..9fdeea49d8 100644 --- a/internal/service/eks/pod_identity_association.go +++ b/internal/service/eks/pod_identity_association.go @@ -105,7 +105,7 @@ func (r *podIdentityAssociationResource) Schema(ctx context.Context, req resourc @@ -32,7 +32,7 @@ index ce583fa5c40..9fdeea49d87 100644 } } diff --git a/internal/service/s3control/access_grant.go b/internal/service/s3control/access_grant.go -index 4f7e38caed8..c3e235d110c 100644 +index 4f7e38caed..c3e235d110 100644 --- a/internal/service/s3control/access_grant.go +++ b/internal/service/s3control/access_grant.go @@ -102,7 +102,7 @@ func (r *accessGrantResource) Schema(ctx context.Context, request resource.Schem @@ -45,7 +45,7 @@ index 4f7e38caed8..c3e235d110c 100644 Blocks: map[string]schema.Block{ "access_grants_location_configuration": schema.ListNestedBlock{ diff --git a/internal/service/s3control/access_grants_instance.go b/internal/service/s3control/access_grants_instance.go -index 24ce989902a..7643c9f8671 100644 +index 24ce989902..7643c9f867 100644 --- a/internal/service/s3control/access_grants_instance.go +++ b/internal/service/s3control/access_grants_instance.go @@ -82,7 +82,7 @@ func (r *accessGrantsInstanceResource) Schema(ctx context.Context, request resou @@ -58,7 +58,7 @@ index 24ce989902a..7643c9f8671 100644 } } diff --git a/internal/service/s3control/access_grants_location.go b/internal/service/s3control/access_grants_location.go -index e29fdacea73..ebfe15e9420 100644 +index e29fdacea7..ebfe15e942 100644 --- a/internal/service/s3control/access_grants_location.go +++ b/internal/service/s3control/access_grants_location.go @@ -83,7 +83,7 @@ func (r *accessGrantsLocationResource) Schema(ctx context.Context, request resou diff --git a/patches/0033-Fail-fast-when-PF-resources-are-dropped.patch b/patches/0033-Fail-fast-when-PF-resources-are-dropped.patch index a575278c36c..b008afbd52f 100644 --- a/patches/0033-Fail-fast-when-PF-resources-are-dropped.patch +++ b/patches/0033-Fail-fast-when-PF-resources-are-dropped.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fail fast when PF resources are dropped diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index a64bcd031da..0d730c8ea43 100644 +index a64bcd031d..0d730c8ea4 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go @@ -453,9 +453,8 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { diff --git a/patches/0034-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0034-Fix-tags_all-Computed-for-PF-resources.patch index 46720243b53..8c70cbb10cf 100644 --- a/patches/0034-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0034-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/amp/scraper.go b/internal/service/amp/scraper.go -index b6d8c71ef73..f78c4502b0e 100644 +index 63ab7ce64c..86339cdb90 100644 --- a/internal/service/amp/scraper.go +++ b/internal/service/amp/scraper.go @@ -84,7 +84,7 @@ func (r *scraperResource) Schema(ctx context.Context, req resource.SchemaRequest @@ -18,7 +18,7 @@ index b6d8c71ef73..f78c4502b0e 100644 Blocks: map[string]schema.Block{ names.AttrDestination: schema.ListNestedBlock{ diff --git a/internal/service/bedrock/custom_model.go b/internal/service/bedrock/custom_model.go -index 7d1bbff3328..0b7cdf8f235 100644 +index 7d1bbff332..0b7cdf8f23 100644 --- a/internal/service/bedrock/custom_model.go +++ b/internal/service/bedrock/custom_model.go @@ -139,7 +139,7 @@ func (r *customModelResource) Schema(ctx context.Context, request resource.Schem @@ -31,7 +31,7 @@ index 7d1bbff3328..0b7cdf8f235 100644 "validation_metrics": framework.ResourceComputedListOfObjectAttribute[validatorMetricModel](ctx), }, diff --git a/internal/service/codeguruprofiler/profiling_group.go b/internal/service/codeguruprofiler/profiling_group.go -index 6e8d8de302c..af481272426 100644 +index 6e8d8de302..af48127242 100644 --- a/internal/service/codeguruprofiler/profiling_group.go +++ b/internal/service/codeguruprofiler/profiling_group.go @@ -73,7 +73,7 @@ func (r *resourceProfilingGroup) Schema(ctx context.Context, req resource.Schema @@ -44,7 +44,7 @@ index 6e8d8de302c..af481272426 100644 Blocks: map[string]schema.Block{ "agent_orchestration_config": schema.ListNestedBlock{ diff --git a/internal/service/elasticache/serverless_cache.go b/internal/service/elasticache/serverless_cache.go -index bb7f36bf1ea..fe8ed6366b7 100644 +index bb7f36bf1e..fe8ed6366b 100644 --- a/internal/service/elasticache/serverless_cache.go +++ b/internal/service/elasticache/serverless_cache.go @@ -181,7 +181,7 @@ func (r *serverlessCacheResource) Schema(ctx context.Context, request resource.S @@ -57,7 +57,7 @@ index bb7f36bf1ea..fe8ed6366b7 100644 Optional: true, }, diff --git a/internal/service/rekognition/collection.go b/internal/service/rekognition/collection.go -index a9bb3bb3278..9f68386f3a8 100644 +index a9bb3bb327..9f68386f3a 100644 --- a/internal/service/rekognition/collection.go +++ b/internal/service/rekognition/collection.go @@ -77,7 +77,7 @@ func (r *resourceCollection) Schema(ctx context.Context, req resource.SchemaRequ @@ -70,7 +70,7 @@ index a9bb3bb3278..9f68386f3a8 100644 } diff --git a/internal/service/securityhub/automation_rule.go b/internal/service/securityhub/automation_rule.go -index 979de8b5bd9..4c1f5dc7065 100644 +index 979de8b5bd..4c1f5dc706 100644 --- a/internal/service/securityhub/automation_rule.go +++ b/internal/service/securityhub/automation_rule.go @@ -78,7 +78,7 @@ func (r *automationRuleResource) Schema(ctx context.Context, request resource.Sc @@ -83,7 +83,7 @@ index 979de8b5bd9..4c1f5dc7065 100644 Blocks: map[string]schema.Block{ names.AttrActions: schema.SetNestedBlock{ diff --git a/internal/service/securitylake/data_lake.go b/internal/service/securitylake/data_lake.go -index 43fdbadef0f..c894d522a4f 100644 +index 43fdbadef0..c894d522a4 100644 --- a/internal/service/securitylake/data_lake.go +++ b/internal/service/securitylake/data_lake.go @@ -75,7 +75,7 @@ func (r *dataLakeResource) Schema(ctx context.Context, request resource.SchemaRe @@ -96,7 +96,7 @@ index 43fdbadef0f..c894d522a4f 100644 Blocks: map[string]schema.Block{ names.AttrConfiguration: schema.ListNestedBlock{ diff --git a/internal/service/ssmcontacts/rotation.go b/internal/service/ssmcontacts/rotation.go -index 11948143a78..e8f145f886b 100644 +index 11948143a7..e8f145f886 100644 --- a/internal/service/ssmcontacts/rotation.go +++ b/internal/service/ssmcontacts/rotation.go @@ -72,7 +72,7 @@ func (r *resourceRotation) Schema(ctx context.Context, request resource.SchemaRe @@ -109,7 +109,7 @@ index 11948143a78..e8f145f886b 100644 Required: true, }, diff --git a/internal/service/ssoadmin/application.go b/internal/service/ssoadmin/application.go -index 63a02f6ed6b..ae5c3b3b8a4 100644 +index 63a02f6ed6..ae5c3b3b8a 100644 --- a/internal/service/ssoadmin/application.go +++ b/internal/service/ssoadmin/application.go @@ -96,7 +96,7 @@ func (r *resourceApplication) Schema(ctx context.Context, req resource.SchemaReq @@ -122,7 +122,7 @@ index 63a02f6ed6b..ae5c3b3b8a4 100644 Blocks: map[string]schema.Block{ "portal_options": schema.ListNestedBlock{ diff --git a/internal/service/ssoadmin/trusted_token_issuer.go b/internal/service/ssoadmin/trusted_token_issuer.go -index 2d53c30eb35..cac1815b0f9 100644 +index 2d53c30eb3..cac1815b0f 100644 --- a/internal/service/ssoadmin/trusted_token_issuer.go +++ b/internal/service/ssoadmin/trusted_token_issuer.go @@ -86,7 +86,7 @@ func (r *resourceTrustedTokenIssuer) Schema(ctx context.Context, req resource.Sc diff --git a/patches/0035-Disable-retry-for-KMS-access-denied-in-lambda.patch b/patches/0035-Disable-retry-for-KMS-access-denied-in-lambda.patch index f6f0664e31e..8c3a69a6d96 100644 --- a/patches/0035-Disable-retry-for-KMS-access-denied-in-lambda.patch +++ b/patches/0035-Disable-retry-for-KMS-access-denied-in-lambda.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Disable retry for KMS access denied in lambda diff --git a/internal/service/lambda/service_package_extra.go b/internal/service/lambda/service_package_extra.go new file mode 100644 -index 00000000000..79867519db5 +index 0000000000..79867519db --- /dev/null +++ b/internal/service/lambda/service_package_extra.go @@ -0,0 +1,34 @@ @@ -45,7 +45,7 @@ index 00000000000..79867519db5 + } +} diff --git a/internal/service/lambda/service_package_gen.go b/internal/service/lambda/service_package_gen.go -index 08cd796328f..178d5ba23ea 100644 +index 08cd796328..178d5ba23e 100644 --- a/internal/service/lambda/service_package_gen.go +++ b/internal/service/lambda/service_package_gen.go @@ -160,6 +160,7 @@ func (p *servicePackage) NewClient(ctx context.Context, config map[string]any) ( diff --git a/patches/0036-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch b/patches/0036-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch index ec59306f9e6..64dd90c24a0 100644 --- a/patches/0036-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch +++ b/patches/0036-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Patch ACM retry to not retry after LimitExceededException diff --git a/internal/service/acm/service_package_extra.go b/internal/service/acm/service_package_extra.go new file mode 100644 -index 00000000000..b432bed386e +index 0000000000..b432bed386 --- /dev/null +++ b/internal/service/acm/service_package_extra.go @@ -0,0 +1,21 @@ @@ -33,7 +33,7 @@ index 00000000000..b432bed386e + } +} diff --git a/internal/service/acm/service_package_gen.go b/internal/service/acm/service_package_gen.go -index 90c139864a7..da16c6a6b59 100644 +index 90c139864a..da16c6a6b5 100644 --- a/internal/service/acm/service_package_gen.go +++ b/internal/service/acm/service_package_gen.go @@ -63,6 +63,7 @@ func (p *servicePackage) NewClient(ctx context.Context, config map[string]any) ( diff --git a/patches/0037-Restore-legacy-bucket.patch b/patches/0037-Restore-legacy-bucket.patch index 58b2cc7ee6c..4cf7f006a80 100644 --- a/patches/0037-Restore-legacy-bucket.patch +++ b/patches/0037-Restore-legacy-bucket.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Restore legacy bucket diff --git a/internal/provider/provider.go b/internal/provider/provider.go -index 4c83f4bb1c4..2ec4c986be4 100644 +index 4c83f4bb1c..2ec4c986be 100644 --- a/internal/provider/provider.go +++ b/internal/provider/provider.go @@ -17,7 +17,6 @@ import ( @@ -36,7 +36,7 @@ index 4c83f4bb1c4..2ec4c986be4 100644 diff --git a/internal/provider/service_packages_all.go b/internal/provider/service_packages_all.go new file mode 100644 -index 00000000000..51ca53f883b +index 0000000000..51ca53f883 --- /dev/null +++ b/internal/provider/service_packages_all.go @@ -0,0 +1,12 @@ @@ -54,7 +54,7 @@ index 00000000000..51ca53f883b +} diff --git a/internal/service/s3/service_package_bwcompat.go b/internal/service/s3/service_package_bwcompat.go new file mode 100644 -index 00000000000..4278d1e70ae +index 0000000000..4278d1e70a --- /dev/null +++ b/internal/service/s3/service_package_bwcompat.go @@ -0,0 +1,57 @@ @@ -116,7 +116,7 @@ index 00000000000..4278d1e70ae + return conn, nil +} diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index 1da08293c49..76ce85df25f 100644 +index 1da08293c4..76ce85df25 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -19,7 +19,6 @@ import ( @@ -146,7 +146,7 @@ index 1da08293c49..76ce85df25f 100644 arn := arn.ARN{ diff --git a/internal/service/s3legacy/object.go b/internal/service/s3legacy/object.go -index f44b435af68..58f6e95d83c 100644 +index f44b435af6..58f6e95d83 100644 --- a/internal/service/s3legacy/object.go +++ b/internal/service/s3legacy/object.go @@ -2,10 +2,10 @@ package s3legacy @@ -163,7 +163,7 @@ index f44b435af68..58f6e95d83c 100644 // DeleteAllObjectVersions deletes all versions of a specified key from an S3 bucket. diff --git a/internal/service/s3legacy/retry.go b/internal/service/s3legacy/retry.go -index dcf7e397596..f578947ae6b 100644 +index dcf7e39759..f578947ae6 100644 --- a/internal/service/s3legacy/retry.go +++ b/internal/service/s3legacy/retry.go @@ -1,10 +1,10 @@ @@ -181,7 +181,7 @@ index dcf7e397596..f578947ae6b 100644 // FORK: Adding the retryOnAWSCode to the fork for the old AWS S3 Logic diff --git a/internal/service/s3legacy/service_package.go b/internal/service/s3legacy/service_package.go new file mode 100644 -index 00000000000..5d2ea27364e +index 0000000000..5d2ea27364 --- /dev/null +++ b/internal/service/s3legacy/service_package.go @@ -0,0 +1,78 @@ @@ -264,7 +264,7 @@ index 00000000000..5d2ea27364e +// }), nil +// } diff --git a/internal/service/s3legacy/tags.go b/internal/service/s3legacy/tags.go -index 669813747ba..b727c546400 100644 +index 669813747b..b727c54640 100644 --- a/internal/service/s3legacy/tags.go +++ b/internal/service/s3legacy/tags.go @@ -11,7 +11,6 @@ import ( @@ -277,7 +277,7 @@ index 669813747ba..b727c546400 100644 "github.com/hashicorp/terraform-provider-aws/internal/tfresource" diff --git a/internal/service/s3legacy/tfawserr_shim.go b/internal/service/s3legacy/tfawserr_shim.go new file mode 100644 -index 00000000000..b8b0660d7a2 +index 0000000000..b8b0660d7a --- /dev/null +++ b/internal/service/s3legacy/tfawserr_shim.go @@ -0,0 +1,40 @@ diff --git a/patches/0038-Patch-osis_pipeline-tags-flags.patch b/patches/0038-Patch-osis_pipeline-tags-flags.patch index 8f3aef7c15b..2b4d6154086 100644 --- a/patches/0038-Patch-osis_pipeline-tags-flags.patch +++ b/patches/0038-Patch-osis_pipeline-tags-flags.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch osis_pipeline tags flags diff --git a/internal/service/osis/pipeline.go b/internal/service/osis/pipeline.go -index 38c3e79eeed..ab46177b407 100644 +index 38c3e79eee..ab46177b40 100644 --- a/internal/service/osis/pipeline.go +++ b/internal/service/osis/pipeline.go @@ -100,7 +100,7 @@ func (r *pipelineResource) Schema(ctx context.Context, request resource.SchemaRe diff --git a/patches/0039-Allow-creating-lambdas-without-code-related-properti.patch b/patches/0039-Allow-creating-lambdas-without-code-related-properti.patch index 149811ce524..dc0e8fad919 100644 --- a/patches/0039-Allow-creating-lambdas-without-code-related-properti.patch +++ b/patches/0039-Allow-creating-lambdas-without-code-related-properti.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow creating lambdas without code related properties diff --git a/internal/service/lambda/function.go b/internal/service/lambda/function.go -index 5126ae9dd51..6f372e18a6d 100644 +index 5126ae9dd5..6f372e18a6 100644 --- a/internal/service/lambda/function.go +++ b/internal/service/lambda/function.go @@ -172,9 +172,9 @@ func resourceFunction() *schema.Resource { diff --git a/patches/0040-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch b/patches/0040-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch index 53d407a4e98..84a1398ae76 100644 --- a/patches/0040-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch +++ b/patches/0040-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Do not Compute tags_all of diff --git a/internal/service/bedrock/provisioned_model_throughput.go b/internal/service/bedrock/provisioned_model_throughput.go -index 792d41b9fd4..d308ef4566f 100644 +index 792d41b9fd..d308ef4566 100644 --- a/internal/service/bedrock/provisioned_model_throughput.go +++ b/internal/service/bedrock/provisioned_model_throughput.go @@ -86,7 +86,7 @@ func (r *resourceProvisionedModelThroughput) Schema(ctx context.Context, request diff --git a/patches/0041-fix-legacy-bucket-context.patch b/patches/0041-fix-legacy-bucket-context.patch index a01cd61a382..9460fe26c4b 100644 --- a/patches/0041-fix-legacy-bucket-context.patch +++ b/patches/0041-fix-legacy-bucket-context.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix legacy bucket context diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index 76ce85df25f..2fed6dc3e39 100644 +index 76ce85df25..2fed6dc3e3 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -903,7 +903,7 @@ func resourceBucketLegacyRead(ctx context.Context, d *schema.ResourceData, meta diff --git a/patches/0042-securitylake_subscriber-tags_all-patch.patch b/patches/0042-securitylake_subscriber-tags_all-patch.patch index e3c6195be5f..6e7634a11df 100644 --- a/patches/0042-securitylake_subscriber-tags_all-patch.patch +++ b/patches/0042-securitylake_subscriber-tags_all-patch.patch @@ -5,7 +5,7 @@ Subject: [PATCH] securitylake_subscriber tags_all patch diff --git a/internal/service/securitylake/subscriber.go b/internal/service/securitylake/subscriber.go -index a1bbedb7ebc..9b560564ef5 100644 +index a1bbedb7eb..9b560564ef 100644 --- a/internal/service/securitylake/subscriber.go +++ b/internal/service/securitylake/subscriber.go @@ -99,7 +99,7 @@ func (r *subscriberResource) Schema(ctx context.Context, request resource.Schema diff --git a/patches/0043-Patch-tags-ComputedOnly-for-m2-resources.patch b/patches/0043-Patch-tags-ComputedOnly-for-m2-resources.patch index 23800801930..78bc12a19dc 100644 --- a/patches/0043-Patch-tags-ComputedOnly-for-m2-resources.patch +++ b/patches/0043-Patch-tags-ComputedOnly-for-m2-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch tags ComputedOnly for m2 resources diff --git a/internal/service/m2/application.go b/internal/service/m2/application.go -index 9aa103e5bbc..c3b73b02dea 100644 +index 9aa103e5bb..c3b73b02de 100644 --- a/internal/service/m2/application.go +++ b/internal/service/m2/application.go @@ -105,7 +105,7 @@ func (r *applicationResource) Schema(ctx context.Context, request resource.Schem @@ -18,7 +18,7 @@ index 9aa103e5bbc..c3b73b02dea 100644 Blocks: map[string]schema.Block{ "definition": schema.ListNestedBlock{ diff --git a/internal/service/m2/environment.go b/internal/service/m2/environment.go -index b279fc058c4..1c77bdd4396 100644 +index b279fc058c..1c77bdd439 100644 --- a/internal/service/m2/environment.go +++ b/internal/service/m2/environment.go @@ -174,7 +174,7 @@ func (r *environmentResource) Schema(ctx context.Context, request resource.Schem diff --git a/patches/0044-restore-ECRConn.patch b/patches/0044-restore-ECRConn.patch index 0bcb0110faf..b1db0353348 100644 --- a/patches/0044-restore-ECRConn.patch +++ b/patches/0044-restore-ECRConn.patch @@ -5,7 +5,7 @@ Subject: [PATCH] restore ECRConn diff --git a/internal/conns/awsclient_extra.go b/internal/conns/awsclient_extra.go -index 96c809fc475..57bf4c7c944 100644 +index 96c809fc47..57bf4c7c94 100644 --- a/internal/conns/awsclient_extra.go +++ b/internal/conns/awsclient_extra.go @@ -6,7 +6,10 @@ package conns diff --git a/patches/0045-update-testing-types.patch b/patches/0045-update-testing-types.patch index 101ccc76221..fb927226afd 100644 --- a/patches/0045-update-testing-types.patch +++ b/patches/0045-update-testing-types.patch @@ -5,7 +5,7 @@ Subject: [PATCH] update testing types diff --git a/internal/service/ecr/credentials_data_source_test.go b/internal/service/ecr/credentials_data_source_test.go -index f0f875399e0..eef205d1036 100644 +index f0f875399e..eef205d103 100644 --- a/internal/service/ecr/credentials_data_source_test.go +++ b/internal/service/ecr/credentials_data_source_test.go @@ -5,14 +5,16 @@ import ( @@ -35,7 +35,7 @@ index f0f875399e0..eef205d1036 100644 -`, acctest.RandInt()) +`, sdkacctest.RandInt()) diff --git a/internal/service/gamelift/matchmaking_configuration_test.go b/internal/service/gamelift/matchmaking_configuration_test.go -index 339f9dd6dfa..6453fa75a0c 100644 +index 339f9dd6df..6453fa75a0 100644 --- a/internal/service/gamelift/matchmaking_configuration_test.go +++ b/internal/service/gamelift/matchmaking_configuration_test.go @@ -9,9 +9,10 @@ import ( @@ -87,7 +87,7 @@ index 339f9dd6dfa..6453fa75a0c 100644 name := rs.Primary.Attributes["name"] out, err := conn.DescribeMatchmakingConfigurationsWithContext(ctx, &gamelift.DescribeMatchmakingConfigurationsInput{ diff --git a/internal/service/gamelift/matchmaking_rule_set_test.go b/internal/service/gamelift/matchmaking_rule_set_test.go -index 061e93f186b..4295987ae67 100644 +index 061e93f186..4295987ae6 100644 --- a/internal/service/gamelift/matchmaking_rule_set_test.go +++ b/internal/service/gamelift/matchmaking_rule_set_test.go @@ -10,7 +10,7 @@ import ( diff --git a/patches/0046-restore-ecr-NewConn.patch b/patches/0046-restore-ecr-NewConn.patch index 45db60f4eca..53ba8fbe6ce 100644 --- a/patches/0046-restore-ecr-NewConn.patch +++ b/patches/0046-restore-ecr-NewConn.patch @@ -6,7 +6,7 @@ Subject: [PATCH] restore ecr NewConn diff --git a/internal/service/ecr/service_package_extra.go b/internal/service/ecr/service_package_extra.go new file mode 100644 -index 00000000000..7175d0cb71b +index 0000000000..7175d0cb71 --- /dev/null +++ b/internal/service/ecr/service_package_extra.go @@ -0,0 +1,16 @@ diff --git a/patches/0047-update-apn-info.patch b/patches/0047-update-apn-info.patch index de6dc4c6d0f..b7e066c4ab2 100644 --- a/patches/0047-update-apn-info.patch +++ b/patches/0047-update-apn-info.patch @@ -5,7 +5,7 @@ Subject: [PATCH] update apn info diff --git a/internal/conns/config.go b/internal/conns/config.go -index 771456c71f7..2f807a732e1 100644 +index 771456c71f..2f807a732e 100644 --- a/internal/conns/config.go +++ b/internal/conns/config.go @@ -23,7 +23,6 @@ import ( diff --git a/patches/0048-non-idempotent-sns-topic-creation.patch b/patches/0048-non-idempotent-sns-topic-creation.patch index 3700abab508..60ceed88e65 100644 --- a/patches/0048-non-idempotent-sns-topic-creation.patch +++ b/patches/0048-non-idempotent-sns-topic-creation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] non-idempotent sns topic creation diff --git a/internal/service/sns/topic.go b/internal/service/sns/topic.go -index 4829f6aaa7d..18895e43f40 100644 +index 4829f6aaa7..18895e43f4 100644 --- a/internal/service/sns/topic.go +++ b/internal/service/sns/topic.go @@ -9,6 +9,7 @@ import ( diff --git a/patches/0049-Normalize-retentionDays-in-aws_controltower_landing_.patch b/patches/0049-Normalize-retentionDays-in-aws_controltower_landing_.patch index 2d9babf7e0c..e4327673466 100644 --- a/patches/0049-Normalize-retentionDays-in-aws_controltower_landing_.patch +++ b/patches/0049-Normalize-retentionDays-in-aws_controltower_landing_.patch @@ -14,7 +14,7 @@ According to https://docs.aws.amazon.com/controltower/latest/userguide/lz-api-la preferred one. diff --git a/internal/service/controltower/landing_zone.go b/internal/service/controltower/landing_zone.go -index de5706bba98..c213c677f80 100644 +index de5706bba9..c213c677f8 100644 --- a/internal/service/controltower/landing_zone.go +++ b/internal/service/controltower/landing_zone.go @@ -5,8 +5,10 @@ package controltower @@ -134,7 +134,7 @@ index de5706bba98..c213c677f80 100644 +} diff --git a/internal/service/controltower/landing_zone_internals_test.go b/internal/service/controltower/landing_zone_internals_test.go new file mode 100644 -index 00000000000..7c97e09ce2a +index 0000000000..7c97e09ce2 --- /dev/null +++ b/internal/service/controltower/landing_zone_internals_test.go @@ -0,0 +1,50 @@ diff --git a/patches/0050-Revert-r-aws_db_proxy-Change-auth-from-TypeList-to-T.patch b/patches/0050-Revert-r-aws_db_proxy-Change-auth-from-TypeList-to-T.patch index 957be2afc82..293e071e30b 100644 --- a/patches/0050-Revert-r-aws_db_proxy-Change-auth-from-TypeList-to-T.patch +++ b/patches/0050-Revert-r-aws_db_proxy-Change-auth-from-TypeList-to-T.patch @@ -10,7 +10,7 @@ Beyond a mechanical revert, during v5.74.0 release resolution there were some co resolved in favor of upstream. diff --git a/internal/service/rds/proxy.go b/internal/service/rds/proxy.go -index 008ebc180ff..c326774548c 100644 +index 008ebc180f..c326774548 100644 --- a/internal/service/rds/proxy.go +++ b/internal/service/rds/proxy.go @@ -19,7 +19,6 @@ import ( @@ -57,7 +57,7 @@ index 008ebc180ff..c326774548c 100644 DebugLogging: aws.Bool(d.Get("debug_logging").(bool)), NewDBProxyName: aws.String(nName.(string)), diff --git a/internal/service/rds/proxy_test.go b/internal/service/rds/proxy_test.go -index 884f83084b8..0856302c30f 100644 +index 884f83084b..0856302c30 100644 --- a/internal/service/rds/proxy_test.go +++ b/internal/service/rds/proxy_test.go @@ -40,12 +40,13 @@ func TestAccRDSProxy_basic(t *testing.T) { diff --git a/patches/0051-Fix-panic-in-aws_directory_service_directory-Read.patch b/patches/0051-Fix-panic-in-aws_directory_service_directory-Read.patch index 7ac5bf033ef..89b92773fcb 100644 --- a/patches/0051-Fix-panic-in-aws_directory_service_directory-Read.patch +++ b/patches/0051-Fix-panic-in-aws_directory_service_directory-Read.patch @@ -10,7 +10,7 @@ One case where this seems to happen (but difficult to reproduce) is importing a https://github.com/pulumi/pulumi-aws/issues/1152 diff --git a/internal/service/ds/directory.go b/internal/service/ds/directory.go -index 641208f5196..ac46bd960bc 100644 +index 641208f519..ac46bd960b 100644 --- a/internal/service/ds/directory.go +++ b/internal/service/ds/directory.go @@ -300,6 +300,11 @@ func resourceDirectoryRead(ctx context.Context, d *schema.ResourceData, meta int @@ -42,7 +42,7 @@ index 641208f5196..ac46bd960bc 100644 d.Set(names.AttrSize, dir.Size) diff --git a/internal/service/ds/directory_internal_test.go b/internal/service/ds/directory_internal_test.go new file mode 100644 -index 00000000000..a5107ef3e13 +index 0000000000..a5107ef3e1 --- /dev/null +++ b/internal/service/ds/directory_internal_test.go @@ -0,0 +1,22 @@ diff --git a/patches/0052-Patch-tags-ComputedOnly-on-bedrockagent-and-other-mo.patch b/patches/0052-Patch-tags-ComputedOnly-on-bedrockagent-and-other-mo.patch index b09d851510d..6e1a7d96443 100644 --- a/patches/0052-Patch-tags-ComputedOnly-on-bedrockagent-and-other-mo.patch +++ b/patches/0052-Patch-tags-ComputedOnly-on-bedrockagent-and-other-mo.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch tags ComputedOnly on bedrockagent and other modules diff --git a/internal/service/bcmdataexports/export.go b/internal/service/bcmdataexports/export.go -index 18133c74399..ea9f2d088fb 100644 +index 18133c7439..ea9f2d088f 100644 --- a/internal/service/bcmdataexports/export.go +++ b/internal/service/bcmdataexports/export.go @@ -170,7 +170,7 @@ func (r *resourceExport) Schema(ctx context.Context, req resource.SchemaRequest, @@ -18,10 +18,10 @@ index 18133c74399..ea9f2d088fb 100644 Blocks: map[string]schema.Block{ "export": schema.ListNestedBlock{ diff --git a/internal/service/bedrockagent/agent.go b/internal/service/bedrockagent/agent.go -index ffd74308562..2ddfed3ebdd 100644 +index 723a946fd5..343f154e1d 100644 --- a/internal/service/bedrockagent/agent.go +++ b/internal/service/bedrockagent/agent.go -@@ -170,7 +170,7 @@ func (r *agentResource) Schema(ctx context.Context, request resource.SchemaReque +@@ -171,7 +171,7 @@ func (r *agentResource) Schema(ctx context.Context, request resource.SchemaReque }, }, names.AttrTags: tftags.TagsAttribute(), @@ -31,7 +31,7 @@ index ffd74308562..2ddfed3ebdd 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/bedrockagent/agent_alias.go b/internal/service/bedrockagent/agent_alias.go -index 2572b9419c9..185d0ca643e 100644 +index 2572b9419c..185d0ca643 100644 --- a/internal/service/bedrockagent/agent_alias.go +++ b/internal/service/bedrockagent/agent_alias.go @@ -97,7 +97,7 @@ func (r *agentAliasResource) Schema(ctx context.Context, request resource.Schema @@ -44,7 +44,7 @@ index 2572b9419c9..185d0ca643e 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/bedrockagent/knowledge_base.go b/internal/service/bedrockagent/knowledge_base.go -index b243a08bca4..3fa7be70517 100644 +index b243a08bca..3fa7be7051 100644 --- a/internal/service/bedrockagent/knowledge_base.go +++ b/internal/service/bedrockagent/knowledge_base.go @@ -89,7 +89,7 @@ func (r *knowledgeBaseResource) Schema(ctx context.Context, request resource.Sch @@ -57,7 +57,7 @@ index b243a08bca4..3fa7be70517 100644 CustomType: timetypes.RFC3339Type{}, Computed: true, diff --git a/internal/service/globalaccelerator/cross_account_attachment.go b/internal/service/globalaccelerator/cross_account_attachment.go -index 2f9aef10f49..ad4a7584b8f 100644 +index 2f9aef10f4..ad4a7584b8 100644 --- a/internal/service/globalaccelerator/cross_account_attachment.go +++ b/internal/service/globalaccelerator/cross_account_attachment.go @@ -72,7 +72,7 @@ func (r *crossAccountAttachmentResource) Schema(ctx context.Context, request res diff --git a/patches/0053-Fix-tags_all-Computed-for-aws_datazone_domain.patch b/patches/0053-Fix-tags_all-Computed-for-aws_datazone_domain.patch index 9fddfb9abbc..13c39e93a03 100644 --- a/patches/0053-Fix-tags_all-Computed-for-aws_datazone_domain.patch +++ b/patches/0053-Fix-tags_all-Computed-for-aws_datazone_domain.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for aws_datazone_domain diff --git a/internal/service/datazone/domain.go b/internal/service/datazone/domain.go -index 4331ce43967..e28275fd831 100644 +index 4331ce4396..e28275fd83 100644 --- a/internal/service/datazone/domain.go +++ b/internal/service/datazone/domain.go @@ -98,7 +98,7 @@ func (r *resourceDomain) Schema(ctx context.Context, req resource.SchemaRequest, diff --git a/patches/0054-Parallelize-Lambda-Function-resource-operations.patch b/patches/0054-Parallelize-Lambda-Function-resource-operations.patch index 1df3cb96ee8..4c69e01d7b7 100644 --- a/patches/0054-Parallelize-Lambda-Function-resource-operations.patch +++ b/patches/0054-Parallelize-Lambda-Function-resource-operations.patch @@ -10,7 +10,7 @@ We think this was an optimization for a special edge case that drastically worsens the UX for the majority of users. diff --git a/internal/service/lambda/function.go b/internal/service/lambda/function.go -index 6f372e18a6d..94285306ef7 100644 +index 6f372e18a6..94285306ef 100644 --- a/internal/service/lambda/function.go +++ b/internal/service/lambda/function.go @@ -36,7 +36,6 @@ import ( diff --git a/patches/0055-Create-Logging-Middleware-for-Lambda-service-that-do.patch b/patches/0055-Create-Logging-Middleware-for-Lambda-service-that-do.patch index 07ef0fc6bfa..5e742fbdb28 100644 --- a/patches/0055-Create-Logging-Middleware-for-Lambda-service-that-do.patch +++ b/patches/0055-Create-Logging-Middleware-for-Lambda-service-that-do.patch @@ -13,7 +13,7 @@ calls. diff --git a/internal/service/lambda/request_response_logger.go b/internal/service/lambda/request_response_logger.go new file mode 100644 -index 00000000000..737faef4a73 +index 0000000000..737faef4a7 --- /dev/null +++ b/internal/service/lambda/request_response_logger.go @@ -0,0 +1,109 @@ @@ -127,7 +127,7 @@ index 00000000000..737faef4a73 + return out, metadata, err +} diff --git a/internal/service/lambda/service_package_extra.go b/internal/service/lambda/service_package_extra.go -index 79867519db5..f58db8ce421 100644 +index 79867519db..f58db8ce42 100644 --- a/internal/service/lambda/service_package_extra.go +++ b/internal/service/lambda/service_package_extra.go @@ -5,6 +5,7 @@ import ( diff --git a/patches/0056-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0056-Fix-tags_all-Computed-for-PF-resources.patch index 96fc49c82e7..597542b03d0 100644 --- a/patches/0056-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0056-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/paymentcryptography/key.go b/internal/service/paymentcryptography/key.go -index 0124fc86278..27f405de7ca 100644 +index 0124fc8627..27f405de7c 100644 --- a/internal/service/paymentcryptography/key.go +++ b/internal/service/paymentcryptography/key.go @@ -117,7 +117,7 @@ func (r *resourceKey) Schema(ctx context.Context, request resource.SchemaRequest diff --git a/patches/0057-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0057-Fix-tags_all-Computed-for-PF-resources.patch index b22b9aed8c6..806753ca2fb 100644 --- a/patches/0057-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0057-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/appfabric/app_authorization.go b/internal/service/appfabric/app_authorization.go -index 4a13fe036e1..716e2c75a61 100644 +index 4a13fe036e..716e2c75a6 100644 --- a/internal/service/appfabric/app_authorization.go +++ b/internal/service/appfabric/app_authorization.go @@ -109,7 +109,7 @@ func (r *appAuthorizationResource) Schema(ctx context.Context, request resource. @@ -18,7 +18,7 @@ index 4a13fe036e1..716e2c75a61 100644 CustomType: timetypes.RFC3339Type{}, Computed: true, diff --git a/internal/service/appfabric/app_bundle.go b/internal/service/appfabric/app_bundle.go -index 3bca6523df8..aae9b30c5f4 100644 +index 3bca6523df..aae9b30c5f 100644 --- a/internal/service/appfabric/app_bundle.go +++ b/internal/service/appfabric/app_bundle.go @@ -61,7 +61,7 @@ func (r *appBundleResource) Schema(ctx context.Context, request resource.SchemaR @@ -31,7 +31,7 @@ index 3bca6523df8..aae9b30c5f4 100644 } } diff --git a/internal/service/ec2/ec2_capacity_block_reservation.go b/internal/service/ec2/ec2_capacity_block_reservation.go -index d7698584344..2c255a5dcc0 100644 +index d769858434..2c255a5dcc 100644 --- a/internal/service/ec2/ec2_capacity_block_reservation.go +++ b/internal/service/ec2/ec2_capacity_block_reservation.go @@ -146,7 +146,7 @@ func (r *capacityBlockReservationResource) Schema(ctx context.Context, _ resourc @@ -44,7 +44,7 @@ index d7698584344..2c255a5dcc0 100644 Computed: true, PlanModifiers: []planmodifier.String{ diff --git a/internal/service/fms/resource_set.go b/internal/service/fms/resource_set.go -index 3f27edc87fb..38b96593e82 100644 +index 3f27edc87f..38b96593e8 100644 --- a/internal/service/fms/resource_set.go +++ b/internal/service/fms/resource_set.go @@ -105,7 +105,7 @@ func (r *resourceResourceSet) Schema(ctx context.Context, req resource.SchemaReq @@ -57,7 +57,7 @@ index 3f27edc87fb..38b96593e82 100644 Blocks: map[string]schema.Block{ "resource_set": resourceSetLNB, diff --git a/internal/service/guardduty/malware_protection_plan.go b/internal/service/guardduty/malware_protection_plan.go -index f7b9d00088a..eb1883c627a 100644 +index f7b9d00088..eb1883c627 100644 --- a/internal/service/guardduty/malware_protection_plan.go +++ b/internal/service/guardduty/malware_protection_plan.go @@ -87,7 +87,7 @@ func (r *resourceMalwareProtectionPlan) Schema(ctx context.Context, req resource diff --git a/patches/0058-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0058-Fix-tags_all-Computed-for-PF-resources.patch index b8b8adc24ae..d63a63ce46f 100644 --- a/patches/0058-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0058-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/drs/replication_configuration_template.go b/internal/service/drs/replication_configuration_template.go -index 976dba4ac18..648f2b50030 100644 +index 976dba4ac1..648f2b5003 100644 --- a/internal/service/drs/replication_configuration_template.go +++ b/internal/service/drs/replication_configuration_template.go @@ -103,7 +103,7 @@ func (r *replicationConfigurationTemplateResource) Schema(ctx context.Context, r @@ -18,7 +18,7 @@ index 976dba4ac18..648f2b50030 100644 "use_dedicated_replication_server": schema.BoolAttribute{ Required: true, diff --git a/internal/service/elasticache/reserved_cache_node.go b/internal/service/elasticache/reserved_cache_node.go -index c2ed403da01..794d9302caf 100644 +index c2ed403da0..794d9302ca 100644 --- a/internal/service/elasticache/reserved_cache_node.go +++ b/internal/service/elasticache/reserved_cache_node.go @@ -113,7 +113,7 @@ func (r *resourceReservedCacheNode) Schema(ctx context.Context, request resource @@ -31,7 +31,7 @@ index c2ed403da01..794d9302caf 100644 Computed: true, }, diff --git a/internal/service/pinpointsmsvoicev2/opt_out_list.go b/internal/service/pinpointsmsvoicev2/opt_out_list.go -index 9ed0e93e62d..ba7a696501c 100644 +index 9ed0e93e62..ba7a696501 100644 --- a/internal/service/pinpointsmsvoicev2/opt_out_list.go +++ b/internal/service/pinpointsmsvoicev2/opt_out_list.go @@ -62,7 +62,7 @@ func (r *optOutListResource) Schema(ctx context.Context, request resource.Schema @@ -44,7 +44,7 @@ index 9ed0e93e62d..ba7a696501c 100644 } } diff --git a/internal/service/pinpointsmsvoicev2/phone_number.go b/internal/service/pinpointsmsvoicev2/phone_number.go -index e68971a30d9..68d4fd34476 100644 +index e68971a30d..68d4fd3447 100644 --- a/internal/service/pinpointsmsvoicev2/phone_number.go +++ b/internal/service/pinpointsmsvoicev2/phone_number.go @@ -124,7 +124,7 @@ func (r *phoneNumberResource) Schema(ctx context.Context, request resource.Schem diff --git a/patches/0059-Patch-tags-ComputedOnly-for-appfabric-networkmonitor.patch b/patches/0059-Patch-tags-ComputedOnly-for-appfabric-networkmonitor.patch index 5658cd57724..263d847e28e 100644 --- a/patches/0059-Patch-tags-ComputedOnly-for-appfabric-networkmonitor.patch +++ b/patches/0059-Patch-tags-ComputedOnly-for-appfabric-networkmonitor.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Patch tags ComputedOnly for appfabric, networkmonitor, diff --git a/internal/service/appfabric/ingestion.go b/internal/service/appfabric/ingestion.go -index a8c231c98b5..5ab01903840 100644 +index a8c231c98b..5ab0190384 100644 --- a/internal/service/appfabric/ingestion.go +++ b/internal/service/appfabric/ingestion.go @@ -81,7 +81,7 @@ func (r *ingestionResource) Schema(ctx context.Context, request resource.SchemaR @@ -19,7 +19,7 @@ index a8c231c98b5..5ab01903840 100644 Required: true, Validators: []validator.String{ diff --git a/internal/service/appfabric/ingestion_destination.go b/internal/service/appfabric/ingestion_destination.go -index 0bd92bba6b3..6bdbed06895 100644 +index 0bd92bba6b..6bdbed0689 100644 --- a/internal/service/appfabric/ingestion_destination.go +++ b/internal/service/appfabric/ingestion_destination.go @@ -85,7 +85,7 @@ func (r *ingestionDestinationResource) Schema(ctx context.Context, request resou @@ -32,7 +32,7 @@ index 0bd92bba6b3..6bdbed06895 100644 Blocks: map[string]schema.Block{ "destination_configuration": schema.ListNestedBlock{ diff --git a/internal/service/networkfirewall/tls_inspection_configuration.go b/internal/service/networkfirewall/tls_inspection_configuration.go -index 713684155c5..e99aa43c394 100644 +index 713684155c..e99aa43c39 100644 --- a/internal/service/networkfirewall/tls_inspection_configuration.go +++ b/internal/service/networkfirewall/tls_inspection_configuration.go @@ -118,7 +118,7 @@ func (r *tlsInspectionConfigurationResource) Schema(ctx context.Context, request @@ -45,7 +45,7 @@ index 713684155c5..e99aa43c394 100644 "update_token": schema.StringAttribute{ Computed: true, diff --git a/internal/service/networkmonitor/monitor.go b/internal/service/networkmonitor/monitor.go -index 83bf8577dac..fba50e09bcf 100644 +index 83bf8577da..fba50e09bc 100644 --- a/internal/service/networkmonitor/monitor.go +++ b/internal/service/networkmonitor/monitor.go @@ -74,7 +74,7 @@ func (r *monitorResource) Schema(ctx context.Context, request resource.SchemaReq @@ -58,7 +58,7 @@ index 83bf8577dac..fba50e09bcf 100644 } } diff --git a/internal/service/networkmonitor/probe.go b/internal/service/networkmonitor/probe.go -index 8fefba9ca3e..598cca0f802 100644 +index 8fefba9ca3..598cca0f80 100644 --- a/internal/service/networkmonitor/probe.go +++ b/internal/service/networkmonitor/probe.go @@ -109,7 +109,7 @@ func (r *probeResource) Schema(ctx context.Context, request resource.SchemaReque diff --git a/patches/0060-Fix-resourceMatchmakingConfigurationUpdate.patch b/patches/0060-Fix-resourceMatchmakingConfigurationUpdate.patch index 825213c301f..147f653fcde 100644 --- a/patches/0060-Fix-resourceMatchmakingConfigurationUpdate.patch +++ b/patches/0060-Fix-resourceMatchmakingConfigurationUpdate.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix resourceMatchmakingConfigurationUpdate diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index 72f7d31d857..89ecad9db08 100644 +index 72f7d31d85..89ecad9db0 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -309,7 +309,7 @@ func resourceMatchmakingConfigurationUpdate(ctx context.Context, d *schema.Resou diff --git a/patches/0061-Patch-ComputedOnly-for-rekognition-stream_processor.patch b/patches/0061-Patch-ComputedOnly-for-rekognition-stream_processor.patch index 9d2b6728eda..84a335c9ae6 100644 --- a/patches/0061-Patch-ComputedOnly-for-rekognition-stream_processor.patch +++ b/patches/0061-Patch-ComputedOnly-for-rekognition-stream_processor.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch ComputedOnly for rekognition/stream_processor diff --git a/internal/service/rekognition/stream_processor.go b/internal/service/rekognition/stream_processor.go -index ee87c845736..9a730f53911 100644 +index ee87c84573..9a730f5391 100644 --- a/internal/service/rekognition/stream_processor.go +++ b/internal/service/rekognition/stream_processor.go @@ -136,7 +136,7 @@ func (r *resourceStreamProcessor) Schema(ctx context.Context, req resource.Schem diff --git a/patches/0062-Patch-tags_all-Computed-for-chatbot-timestreaminflux.patch b/patches/0062-Patch-tags_all-Computed-for-chatbot-timestreaminflux.patch index 4af2cf9a7ed..93e3a002508 100644 --- a/patches/0062-Patch-tags_all-Computed-for-chatbot-timestreaminflux.patch +++ b/patches/0062-Patch-tags_all-Computed-for-chatbot-timestreaminflux.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch tags_all Computed for chatbot, timestreaminfluxdb diff --git a/internal/service/chatbot/slack_channel_configuration.go b/internal/service/chatbot/slack_channel_configuration.go -index a878965774f..3ea3c705c3c 100644 +index a878965774..3ea3c705c3 100644 --- a/internal/service/chatbot/slack_channel_configuration.go +++ b/internal/service/chatbot/slack_channel_configuration.go @@ -105,7 +105,7 @@ func (r *slackChannelConfigurationResource) Schema(ctx context.Context, request @@ -18,7 +18,7 @@ index a878965774f..3ea3c705c3c 100644 Optional: true, Computed: true, diff --git a/internal/service/chatbot/teams_channel_configuration.go b/internal/service/chatbot/teams_channel_configuration.go -index c472864a124..2db6c0504ac 100644 +index c472864a12..2db6c0504a 100644 --- a/internal/service/chatbot/teams_channel_configuration.go +++ b/internal/service/chatbot/teams_channel_configuration.go @@ -102,7 +102,7 @@ func (r *teamsChannelConfigurationResource) Schema(ctx context.Context, request @@ -31,7 +31,7 @@ index c472864a124..2db6c0504ac 100644 Required: true, }, diff --git a/internal/service/timestreaminfluxdb/db_instance.go b/internal/service/timestreaminfluxdb/db_instance.go -index 9f97622504e..baf1fae1b5d 100644 +index 9f97622504..baf1fae1b5 100644 --- a/internal/service/timestreaminfluxdb/db_instance.go +++ b/internal/service/timestreaminfluxdb/db_instance.go @@ -188,7 +188,7 @@ func (r *resourceDBInstance) Schema(ctx context.Context, req resource.SchemaRequ diff --git a/patches/0063-Patch-tags_all-computed-for-aws_rds_integration.patch b/patches/0063-Patch-tags_all-computed-for-aws_rds_integration.patch index 972e9ce77a3..18e64ec74ed 100644 --- a/patches/0063-Patch-tags_all-computed-for-aws_rds_integration.patch +++ b/patches/0063-Patch-tags_all-computed-for-aws_rds_integration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Patch tags_all computed for aws_rds_integration diff --git a/internal/service/rds/integration.go b/internal/service/rds/integration.go -index 8304fb4c06a..c751c5ad198 100644 +index 36fb262604..3044229a0d 100644 --- a/internal/service/rds/integration.go +++ b/internal/service/rds/integration.go -@@ -100,7 +100,7 @@ func (r *integrationResource) Schema(ctx context.Context, request resource.Schem +@@ -108,7 +108,7 @@ func (r *integrationResource) Schema(ctx context.Context, request resource.Schem }, }, names.AttrTags: tftags.TagsAttribute(), diff --git a/patches/0064-Adapt-gamelift-matchmaking-resources.patch b/patches/0064-Adapt-gamelift-matchmaking-resources.patch index 8a6f31345d6..e9c8dda6570 100644 --- a/patches/0064-Adapt-gamelift-matchmaking-resources.patch +++ b/patches/0064-Adapt-gamelift-matchmaking-resources.patch @@ -7,7 +7,7 @@ Upstream has made changes that do not allow a resource to use both sdkv1 & sdkv2 resources. This updates the gamelift resources to v2. diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index 89ecad9db08..5811f1f8849 100644 +index 89ecad9db0..5811f1f884 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -5,17 +5,20 @@ import ( @@ -255,7 +255,7 @@ index 89ecad9db08..5811f1f8849 100644 for _, awsProperty := range awsProperties { property := map[string]string{ diff --git a/internal/service/gamelift/matchmaking_configuration_test.go b/internal/service/gamelift/matchmaking_configuration_test.go -index 6453fa75a0c..a5394fb536b 100644 +index 6453fa75a0..a5394fb536 100644 --- a/internal/service/gamelift/matchmaking_configuration_test.go +++ b/internal/service/gamelift/matchmaking_configuration_test.go @@ -6,8 +6,8 @@ import ( @@ -428,7 +428,7 @@ index 6453fa75a0c..a5394fb536b 100644 resource "aws_gamelift_game_session_queue" "test" { name = %[2]q diff --git a/internal/service/gamelift/matchmaking_rule_set.go b/internal/service/gamelift/matchmaking_rule_set.go -index d9f2424b7a3..5b34ab8669b 100644 +index d9f2424b7a..5b34ab8669 100644 --- a/internal/service/gamelift/matchmaking_rule_set.go +++ b/internal/service/gamelift/matchmaking_rule_set.go @@ -4,18 +4,20 @@ import ( @@ -539,7 +539,7 @@ index d9f2424b7a3..5b34ab8669b 100644 } if err != nil { diff --git a/internal/service/gamelift/matchmaking_rule_set_test.go b/internal/service/gamelift/matchmaking_rule_set_test.go -index 4295987ae67..7554a3029ca 100644 +index 4295987ae6..7554a3029c 100644 --- a/internal/service/gamelift/matchmaking_rule_set_test.go +++ b/internal/service/gamelift/matchmaking_rule_set_test.go @@ -6,20 +6,21 @@ import ( @@ -645,7 +645,7 @@ index 4295987ae67..7554a3029ca 100644 return nil } diff --git a/names/data/names_data.hcl b/names/data/names_data.hcl -index f1c599be532..79517f2f617 100644 +index f1c599be53..79517f2f61 100644 --- a/names/data/names_data.hcl +++ b/names/data/names_data.hcl @@ -3882,7 +3882,8 @@ service "fsx" { diff --git a/patches/0065-Patch-Tags-for-bedrock-and-pinpoint.patch b/patches/0065-Patch-Tags-for-bedrock-and-pinpoint.patch index 8ba35adffb5..656648ef662 100644 --- a/patches/0065-Patch-Tags-for-bedrock-and-pinpoint.patch +++ b/patches/0065-Patch-Tags-for-bedrock-and-pinpoint.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch Tags for bedrock and pinpoint diff --git a/internal/service/bedrock/guardrail.go b/internal/service/bedrock/guardrail.go -index 7d83ca812a6..a9abb0d2ee9 100644 +index 7d83ca812a..a9abb0d2ee 100644 --- a/internal/service/bedrock/guardrail.go +++ b/internal/service/bedrock/guardrail.go @@ -122,7 +122,7 @@ func (r *resourceGuardrail) Schema(ctx context.Context, req resource.SchemaReque @@ -18,7 +18,7 @@ index 7d83ca812a6..a9abb0d2ee9 100644 Computed: true, PlanModifiers: []planmodifier.String{ diff --git a/internal/service/pinpoint/email_template.go b/internal/service/pinpoint/email_template.go -index e20b0d1c103..dd70f5a4171 100644 +index e20b0d1c10..dd70f5a417 100644 --- a/internal/service/pinpoint/email_template.go +++ b/internal/service/pinpoint/email_template.go @@ -63,7 +63,7 @@ func (r *resourceEmailTemplate) Schema(ctx context.Context, req resource.SchemaR diff --git a/patches/0066-Legacy-bucket-Read-now-sets-acl-and-force_destroy-de.patch b/patches/0066-Legacy-bucket-Read-now-sets-acl-and-force_destroy-de.patch index 90444a57299..bfabbd51150 100644 --- a/patches/0066-Legacy-bucket-Read-now-sets-acl-and-force_destroy-de.patch +++ b/patches/0066-Legacy-bucket-Read-now-sets-acl-and-force_destroy-de.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Legacy bucket Read now sets acl and force_destroy defaults diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go -index 2fed6dc3e39..2e2ffe77b0a 100644 +index 2fed6dc3e3..2e2ffe77b0 100644 --- a/internal/service/s3legacy/bucket_legacy.go +++ b/internal/service/s3legacy/bucket_legacy.go @@ -34,6 +34,10 @@ import ( diff --git a/patches/0067-Add-pluralized-lifecycle_policies-to-EFS-file-system.patch b/patches/0067-Add-pluralized-lifecycle_policies-to-EFS-file-system.patch index 748a04630c0..a7680db7c2b 100644 --- a/patches/0067-Add-pluralized-lifecycle_policies-to-EFS-file-system.patch +++ b/patches/0067-Add-pluralized-lifecycle_policies-to-EFS-file-system.patch @@ -12,7 +12,7 @@ version to only return at most one element we're able to fix this panic without introducing breaking changes. diff --git a/internal/service/efs/file_system_data_source.go b/internal/service/efs/file_system_data_source.go -index 680f0fb3ccd..a4ed1a053a8 100644 +index 680f0fb3cc..a4ed1a053a 100644 --- a/internal/service/efs/file_system_data_source.go +++ b/internal/service/efs/file_system_data_source.go @@ -63,6 +63,28 @@ func dataSourceFileSystem() *schema.Resource { diff --git a/patches/0068-Fix-tags_all-Computed-for-aws_backup_logically_air_g.patch b/patches/0068-Fix-tags_all-Computed-for-aws_backup_logically_air_g.patch index 8ebc838afd1..a6e523f15bc 100644 --- a/patches/0068-Fix-tags_all-Computed-for-aws_backup_logically_air_g.patch +++ b/patches/0068-Fix-tags_all-Computed-for-aws_backup_logically_air_g.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix tags_all Computed for diff --git a/internal/service/backup/logically_air_gapped_vault.go b/internal/service/backup/logically_air_gapped_vault.go -index 6363263403b..820d6a6c59a 100644 +index 6363263403..820d6a6c59 100644 --- a/internal/service/backup/logically_air_gapped_vault.go +++ b/internal/service/backup/logically_air_gapped_vault.go @@ -88,7 +88,7 @@ func (r *logicallyAirGappedVaultResource) Schema(ctx context.Context, request re diff --git a/patches/0069-Patch-ComputedOnly-for-route53profiles-and-more.patch b/patches/0069-Patch-ComputedOnly-for-route53profiles-and-more.patch index 8565495bf5c..23b139da351 100644 --- a/patches/0069-Patch-ComputedOnly-for-route53profiles-and-more.patch +++ b/patches/0069-Patch-ComputedOnly-for-route53profiles-and-more.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch ComputedOnly for route53profiles and more diff --git a/internal/service/backup/restore_testing_plan.go b/internal/service/backup/restore_testing_plan.go -index 7d9155b5f0d..c93f05adc54 100644 +index 7d9155b5f0..c93f05adc5 100644 --- a/internal/service/backup/restore_testing_plan.go +++ b/internal/service/backup/restore_testing_plan.go @@ -89,7 +89,7 @@ func (r *restoreTestingPlanResource) Schema(ctx context.Context, request resourc @@ -18,7 +18,7 @@ index 7d9155b5f0d..c93f05adc54 100644 Blocks: map[string]schema.Block{ "recovery_point_selection": schema.ListNestedBlock{ diff --git a/internal/service/pinpointsmsvoicev2/configuration_set.go b/internal/service/pinpointsmsvoicev2/configuration_set.go -index b4bd9f9d399..61334ec5280 100644 +index b4bd9f9d39..61334ec528 100644 --- a/internal/service/pinpointsmsvoicev2/configuration_set.go +++ b/internal/service/pinpointsmsvoicev2/configuration_set.go @@ -75,7 +75,7 @@ func (r *configurationSetResource) Schema(ctx context.Context, request resource. @@ -31,7 +31,7 @@ index b4bd9f9d399..61334ec5280 100644 } } diff --git a/internal/service/route53profiles/association.go b/internal/service/route53profiles/association.go -index ed90c77ffae..748ef5cbf82 100644 +index ed90c77ffa..748ef5cbf8 100644 --- a/internal/service/route53profiles/association.go +++ b/internal/service/route53profiles/association.go @@ -113,7 +113,7 @@ func (r *resourceAssociation) Schema(ctx context.Context, req resource.SchemaReq @@ -44,7 +44,7 @@ index ed90c77ffae..748ef5cbf82 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/route53profiles/profile.go b/internal/service/route53profiles/profile.go -index b65485fd1b2..529f1589f85 100644 +index b65485fd1b..529f1589f8 100644 --- a/internal/service/route53profiles/profile.go +++ b/internal/service/route53profiles/profile.go @@ -94,7 +94,7 @@ func (r *resourceProfile) Schema(ctx context.Context, req resource.SchemaRequest diff --git a/patches/0070-Adjust-matchmaking_configuration-resource-IgnoreTags.patch b/patches/0070-Adjust-matchmaking_configuration-resource-IgnoreTags.patch index 6cbe1a6bb08..12b9336a661 100644 --- a/patches/0070-Adjust-matchmaking_configuration-resource-IgnoreTags.patch +++ b/patches/0070-Adjust-matchmaking_configuration-resource-IgnoreTags.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Adjust matchmaking_configuration resource IgnoreTagsConfig diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go -index 5811f1f8849..3af285382cd 100644 +index 5811f1f884..3af285382c 100644 --- a/internal/service/gamelift/matchmaking_configuration.go +++ b/internal/service/gamelift/matchmaking_configuration.go @@ -206,7 +206,7 @@ func resourceMatchmakingConfigurationCreate(ctx context.Context, d *schema.Resou diff --git a/patches/0071-Restore-conns-factory-for-SDKv1-Go-clients-used-by-p.patch b/patches/0071-Restore-conns-factory-for-SDKv1-Go-clients-used-by-p.patch index b189e5cb168..6925f503fe4 100644 --- a/patches/0071-Restore-conns-factory-for-SDKv1-Go-clients-used-by-p.patch +++ b/patches/0071-Restore-conns-factory-for-SDKv1-Go-clients-used-by-p.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Restore conns factory for SDKv1 Go clients used by patches diff --git a/internal/conns/awsclient_extra.go b/internal/conns/awsclient_extra.go -index 57bf4c7c944..09b4279db3a 100644 +index 57bf4c7c94..09b4279db3 100644 --- a/internal/conns/awsclient_extra.go +++ b/internal/conns/awsclient_extra.go @@ -5,9 +5,12 @@ package conns diff --git a/patches/0072-Patch-imagebuilder-and-resiliencehub-tagging.patch b/patches/0072-Patch-imagebuilder-and-resiliencehub-tagging.patch index e9dccb637de..8ce09b7d874 100644 --- a/patches/0072-Patch-imagebuilder-and-resiliencehub-tagging.patch +++ b/patches/0072-Patch-imagebuilder-and-resiliencehub-tagging.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch imagebuilder and resiliencehub tagging diff --git a/internal/service/imagebuilder/lifecycle_policy.go b/internal/service/imagebuilder/lifecycle_policy.go -index de77993cb4f..aba05a03c0a 100644 +index de77993cb4..aba05a03c0 100644 --- a/internal/service/imagebuilder/lifecycle_policy.go +++ b/internal/service/imagebuilder/lifecycle_policy.go @@ -89,7 +89,7 @@ func (r *lifecyclePolicyResource) Schema(ctx context.Context, request resource.S @@ -18,7 +18,7 @@ index de77993cb4f..aba05a03c0a 100644 Blocks: map[string]schema.Block{ "policy_detail": schema.SetNestedBlock{ diff --git a/internal/service/resiliencehub/resiliency_policy.go b/internal/service/resiliencehub/resiliency_policy.go -index 9f349c81ffb..4feca02f5e0 100644 +index 9f349c81ff..4feca02f5e 100644 --- a/internal/service/resiliencehub/resiliency_policy.go +++ b/internal/service/resiliencehub/resiliency_policy.go @@ -130,7 +130,7 @@ func (r *resourceResiliencyPolicy) Schema(ctx context.Context, req resource.Sche diff --git a/patches/0073-Restore-AWS-Go-SDK-v1-session.patch b/patches/0073-Restore-AWS-Go-SDK-v1-session.patch index 9ef94e144c2..a33d79e6d85 100644 --- a/patches/0073-Restore-AWS-Go-SDK-v1-session.patch +++ b/patches/0073-Restore-AWS-Go-SDK-v1-session.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Restore AWS Go SDK v1 session diff --git a/internal/conns/awsclient.go b/internal/conns/awsclient.go -index 0d4c6c6d6c7..1adf9943c40 100644 +index 0d4c6c6d6c..1adf9943c4 100644 --- a/internal/conns/awsclient.go +++ b/internal/conns/awsclient.go @@ -305,6 +305,7 @@ func (c *AWSClient) apiClientConfig(ctx context.Context, servicePackageName stri diff --git a/patches/0074-Patch-out-PF-tags-for-ssmquicksetup.patch b/patches/0074-Patch-out-PF-tags-for-ssmquicksetup.patch index 97ea26896b8..1087c298884 100644 --- a/patches/0074-Patch-out-PF-tags-for-ssmquicksetup.patch +++ b/patches/0074-Patch-out-PF-tags-for-ssmquicksetup.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch out PF tags for ssmquicksetup diff --git a/internal/service/ssmquicksetup/configuration_manager.go b/internal/service/ssmquicksetup/configuration_manager.go -index 34b650949e3..572dfae156c 100644 +index 34b650949e..572dfae156 100644 --- a/internal/service/ssmquicksetup/configuration_manager.go +++ b/internal/service/ssmquicksetup/configuration_manager.go @@ -79,7 +79,7 @@ func (r *resourceConfigurationManager) Schema(ctx context.Context, req resource. diff --git a/patches/0075-Patch-computed-only-tags-for-iot-billing_group.patch b/patches/0075-Patch-computed-only-tags-for-iot-billing_group.patch index 845cf017b23..e0df313da9f 100644 --- a/patches/0075-Patch-computed-only-tags-for-iot-billing_group.patch +++ b/patches/0075-Patch-computed-only-tags-for-iot-billing_group.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Patch computed only tags for iot/billing_group diff --git a/internal/service/iot/billing_group.go b/internal/service/iot/billing_group.go -index 90d64baff5a..dd84f3acb33 100644 +index 90d64baff5..dd84f3acb3 100644 --- a/internal/service/iot/billing_group.go +++ b/internal/service/iot/billing_group.go @@ -75,7 +75,7 @@ func (r *resourceBillingGroup) Schema(ctx context.Context, request resource.Sche diff --git a/patches/0076-Fix-tags_all-Computed-for-aws_vpc_block_public_acces.patch b/patches/0076-Fix-tags_all-Computed-for-aws_vpc_block_public_acces.patch index 0e2469d8324..74890eab597 100644 --- a/patches/0076-Fix-tags_all-Computed-for-aws_vpc_block_public_acces.patch +++ b/patches/0076-Fix-tags_all-Computed-for-aws_vpc_block_public_acces.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix tags_all Computed for diff --git a/internal/service/ec2/vpc_block_public_access_exclusion.go b/internal/service/ec2/vpc_block_public_access_exclusion.go -index cb828701ab5..b05fb21336b 100644 +index cb828701ab..b05fb21336 100644 --- a/internal/service/ec2/vpc_block_public_access_exclusion.go +++ b/internal/service/ec2/vpc_block_public_access_exclusion.go @@ -71,7 +71,7 @@ func (r *vpcBlockPublicAccessExclusionResource) Schema(ctx context.Context, requ diff --git a/patches/0077-Fix-tags_all-Computed-for-CodeConnections-Host-and-C.patch b/patches/0077-Fix-tags_all-Computed-for-CodeConnections-Host-and-C.patch index 48b6cf0b12a..c688586ec77 100644 --- a/patches/0077-Fix-tags_all-Computed-for-CodeConnections-Host-and-C.patch +++ b/patches/0077-Fix-tags_all-Computed-for-CodeConnections-Host-and-C.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for CodeConnections Host and Connection diff --git a/internal/service/codeconnections/connection.go b/internal/service/codeconnections/connection.go -index 1beba6fd2c3..0b8e5597e55 100644 +index 1beba6fd2c..0b8e5597e5 100644 --- a/internal/service/codeconnections/connection.go +++ b/internal/service/codeconnections/connection.go @@ -108,7 +108,7 @@ func (r *connectionResource) Schema(ctx context.Context, req resource.SchemaRequ @@ -18,7 +18,7 @@ index 1beba6fd2c3..0b8e5597e55 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/codeconnections/host.go b/internal/service/codeconnections/host.go -index 2f086c0465b..d4adfd7f282 100644 +index 2f086c0465..d4adfd7f28 100644 --- a/internal/service/codeconnections/host.go +++ b/internal/service/codeconnections/host.go @@ -87,7 +87,7 @@ func (r *hostResource) Schema(ctx context.Context, req resource.SchemaRequest, r diff --git a/patches/0078-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0078-Fix-tags_all-Computed-for-PF-resources.patch index 4f31881e528..c7b97222c73 100644 --- a/patches/0078-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0078-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/bedrock/inference_profile.go b/internal/service/bedrock/inference_profile.go -index eb2348bc68f..305435e1b7f 100644 +index eb2348bc68..305435e1b7 100644 --- a/internal/service/bedrock/inference_profile.go +++ b/internal/service/bedrock/inference_profile.go @@ -119,7 +119,7 @@ func (r *resourceInferenceProfile) Schema(ctx context.Context, req resource.Sche @@ -18,11 +18,11 @@ index eb2348bc68f..305435e1b7f 100644 Blocks: map[string]schema.Block{ "model_source": schema.ListNestedBlock{ diff --git a/internal/service/logs/anomaly_detector.go b/internal/service/logs/anomaly_detector.go -index 788672e044f..e637e203c33 100644 +index c67de9372f..45fda2c8e8 100644 --- a/internal/service/logs/anomaly_detector.go +++ b/internal/service/logs/anomaly_detector.go -@@ -95,7 +95,7 @@ func (r *resourceAnomalyDetector) Schema(ctx context.Context, req resource.Schem - }, +@@ -89,7 +89,7 @@ func (r *anomalyDetectorResource) Schema(ctx context.Context, request resource.S + ElementType: types.StringType, }, names.AttrTags: tftags.TagsAttribute(), - names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), @@ -31,7 +31,7 @@ index 788672e044f..e637e203c33 100644 } } diff --git a/internal/service/servicecatalogappregistry/application.go b/internal/service/servicecatalogappregistry/application.go -index 2844029f5c8..735bfe81bb5 100644 +index 2844029f5c..735bfe81bb 100644 --- a/internal/service/servicecatalogappregistry/application.go +++ b/internal/service/servicecatalogappregistry/application.go @@ -70,7 +70,7 @@ func (r *resourceApplication) Schema(ctx context.Context, req resource.SchemaReq @@ -44,7 +44,7 @@ index 2844029f5c8..735bfe81bb5 100644 } } diff --git a/internal/service/servicecatalogappregistry/attribute_group.go b/internal/service/servicecatalogappregistry/attribute_group.go -index e1719b8cfa1..4e28fbd51a4 100644 +index e1719b8cfa..4e28fbd51a 100644 --- a/internal/service/servicecatalogappregistry/attribute_group.go +++ b/internal/service/servicecatalogappregistry/attribute_group.go @@ -76,7 +76,7 @@ func (r *resourceAttributeGroup) Schema(ctx context.Context, req resource.Schema diff --git a/patches/0079-Speed-up-providerlint-by-re-using-build-cache-and-ig.patch b/patches/0079-Speed-up-providerlint-by-re-using-build-cache-and-ig.patch index 3105de016d8..a02f28e5df3 100644 --- a/patches/0079-Speed-up-providerlint-by-re-using-build-cache-and-ig.patch +++ b/patches/0079-Speed-up-providerlint-by-re-using-build-cache-and-ig.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Speed up providerlint by re-using build cache and ignoring diff --git a/GNUmakefile b/GNUmakefile -index 9b4adecff8d..32137c89195 100644 +index 9437f5349b..a3a42bd888 100644 --- a/GNUmakefile +++ b/GNUmakefile -@@ -326,9 +326,10 @@ prereq-go: ## If $(GO_VER) is not installed, install it +@@ -338,9 +338,10 @@ prereq-go: ## If $(GO_VER) is not installed, install it provider-lint: ## [CI] ProviderLint Checks / providerlint @echo "make: ProviderLint Checks / providerlint..." diff --git a/patches/0080-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0080-Fix-tags_all-Computed-for-PF-resources.patch index ba52063d7e3..f3d05160d44 100644 --- a/patches/0080-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0080-Fix-tags_all-Computed-for-PF-resources.patch @@ -5,12 +5,12 @@ Subject: [PATCH] Fix tags_all Computed for PF resources diff --git a/internal/service/apigateway/domain_name_access_association.go b/internal/service/apigateway/domain_name_access_association.go -index c1945339731..6b6c8681583 100644 +index 0e3c8f3db6..de0e5e7d4a 100644 --- a/internal/service/apigateway/domain_name_access_association.go +++ b/internal/service/apigateway/domain_name_access_association.go -@@ -74,7 +74,7 @@ func (r *domainNameAccessAssociationResource) Schema(ctx context.Context, reques +@@ -75,7 +75,7 @@ func (r *domainNameAccessAssociationResource) Schema(ctx context.Context, reques }, - names.AttrID: framework.IDAttribute(), + names.AttrID: framework.IDAttributeDeprecatedWithAlternate(path.Root(names.AttrARN)), names.AttrTags: tftags.TagsAttribute(), - names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), + names.AttrTagsAll: tftags.TagsAttribute(), @@ -18,7 +18,7 @@ index c1945339731..6b6c8681583 100644 } } diff --git a/internal/service/cloudfront/vpc_origin.go b/internal/service/cloudfront/vpc_origin.go -index c5ccae5b51a..b3eb73bb756 100644 +index c5ccae5b51..b3eb73bb75 100644 --- a/internal/service/cloudfront/vpc_origin.go +++ b/internal/service/cloudfront/vpc_origin.go @@ -60,7 +60,7 @@ func (r *vpcOriginResource) Schema(ctx context.Context, request resource.SchemaR @@ -31,7 +31,7 @@ index c5ccae5b51a..b3eb73bb756 100644 Blocks: map[string]schema.Block{ "vpc_origin_endpoint_config": schema.ListNestedBlock{ diff --git a/internal/service/memorydb/multi_region_cluster.go b/internal/service/memorydb/multi_region_cluster.go -index 42b0fc1d42e..e3b5b68ca07 100644 +index 42b0fc1d42..e3b5b68ca0 100644 --- a/internal/service/memorydb/multi_region_cluster.go +++ b/internal/service/memorydb/multi_region_cluster.go @@ -126,7 +126,7 @@ func (r *multiRegionClusterResource) Schema(ctx context.Context, request resourc @@ -44,7 +44,7 @@ index 42b0fc1d42e..e3b5b68ca07 100644 Optional: true, Computed: true, diff --git a/internal/service/networkmanager/dx_gateway_attachment.go b/internal/service/networkmanager/dx_gateway_attachment.go -index 508ce646c35..23637d8c5eb 100644 +index 508ce646c3..23637d8c5e 100644 --- a/internal/service/networkmanager/dx_gateway_attachment.go +++ b/internal/service/networkmanager/dx_gateway_attachment.go @@ -111,7 +111,7 @@ func (r *directConnectGatewayAttachmentResource) Schema(ctx context.Context, req @@ -57,7 +57,7 @@ index 508ce646c35..23637d8c5eb 100644 Blocks: map[string]schema.Block{ names.AttrTimeouts: timeouts.Block(ctx, timeouts.Opts{ diff --git a/internal/service/rds/cluster_snapshot_copy.go b/internal/service/rds/cluster_snapshot_copy.go -index f9044db1ed7..db79f0c198d 100644 +index f9044db1ed..db79f0c198 100644 --- a/internal/service/rds/cluster_snapshot_copy.go +++ b/internal/service/rds/cluster_snapshot_copy.go @@ -146,7 +146,7 @@ func (r *resourceClusterSnapshotCopy) Schema(ctx context.Context, req resource.S diff --git a/patches/0081-Patch-tags-for-logs-cleanrooms-vpclattice.patch b/patches/0081-Patch-tags-for-logs-cleanrooms-vpclattice.patch new file mode 100644 index 00000000000..7bd4e4d1595 --- /dev/null +++ b/patches/0081-Patch-tags-for-logs-cleanrooms-vpclattice.patch @@ -0,0 +1,71 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Anton Tayanovskyy +Date: Fri, 10 Jan 2025 14:24:40 -0500 +Subject: [PATCH] Patch tags for logs, cleanrooms, vpclattice + + +diff --git a/internal/service/cleanrooms/membership.go b/internal/service/cleanrooms/membership.go +index a72d635b53..bce2d9829f 100644 +--- a/internal/service/cleanrooms/membership.go ++++ b/internal/service/cleanrooms/membership.go +@@ -115,7 +115,7 @@ func (r *resourceMembership) Schema(ctx context.Context, _ resource.SchemaReques + }, + }, + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + "update_time": schema.StringAttribute{ + CustomType: timetypes.RFC3339Type{}, + Computed: true, +diff --git a/internal/service/logs/delivery.go b/internal/service/logs/delivery.go +index 579c64372b..3d6f7fabee 100644 +--- a/internal/service/logs/delivery.go ++++ b/internal/service/logs/delivery.go +@@ -91,7 +91,7 @@ func (r *deliveryResource) Schema(ctx context.Context, request resource.SchemaRe + }, + "s3_delivery_configuration": framework.ResourceOptionalComputedListOfObjectAttribute[s3DeliveryConfigurationModel](ctx), + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + }, + } + } +diff --git a/internal/service/logs/delivery_destination.go b/internal/service/logs/delivery_destination.go +index 593acce875..27eedb895c 100644 +--- a/internal/service/logs/delivery_destination.go ++++ b/internal/service/logs/delivery_destination.go +@@ -73,7 +73,7 @@ func (r *deliveryDestinationResource) Schema(ctx context.Context, request resour + }, + }, + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + }, + Blocks: map[string]schema.Block{ + "delivery_destination_configuration": schema.ListNestedBlock{ +diff --git a/internal/service/logs/delivery_source.go b/internal/service/logs/delivery_source.go +index a051dfcd0f..97d47e535d 100644 +--- a/internal/service/logs/delivery_source.go ++++ b/internal/service/logs/delivery_source.go +@@ -83,7 +83,7 @@ func (r *deliverySourceResource) Schema(ctx context.Context, request resource.Sc + }, + }, + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + }, + } + } +diff --git a/internal/service/vpclattice/resource_gateway.go b/internal/service/vpclattice/resource_gateway.go +index be786deea2..6606a8a474 100644 +--- a/internal/service/vpclattice/resource_gateway.go ++++ b/internal/service/vpclattice/resource_gateway.go +@@ -97,7 +97,7 @@ func (r *resourceGatewayResource) Schema(ctx context.Context, request resource.S + }, + }, + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + names.AttrVPCID: schema.StringAttribute{ + Required: true, + PlanModifiers: []planmodifier.String{ diff --git a/provider/cmd/pulumi-resource-aws/bridge-metadata.json b/provider/cmd/pulumi-resource-aws/bridge-metadata.json index ac378905a34..acd4564b154 100644 --- a/provider/cmd/pulumi-resource-aws/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-aws/bridge-metadata.json @@ -4328,6 +4328,15 @@ } } }, + "aws_bedrockagent_agent_collaborator": { + "current": "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", + "majorVersion": 6, + "fields": { + "agent_descriptor": { + "maxItemsOne": true + } + } + }, "aws_bedrockagent_agent_knowledge_base_association": { "current": "aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation", "majorVersion": 6 @@ -5673,6 +5682,42 @@ } } }, + "aws_cleanrooms_membership": { + "current": "aws:cleanrooms/membership:Membership", + "majorVersion": 6, + "fields": { + "default_result_configuration": { + "maxItemsOne": true, + "elem": { + "fields": { + "output_configuration": { + "maxItemsOne": true, + "elem": { + "fields": { + "s3": { + "maxItemsOne": true + } + } + } + } + } + } + }, + "member_abilities": { + "maxItemsOne": false + }, + "payment_configuration": { + "maxItemsOne": true, + "elem": { + "fields": { + "query_compute": { + "maxItemsOne": true + } + } + } + } + } + }, "aws_cloud9_environment_ec2": { "current": "aws:cloud9/environmentEC2:EnvironmentEC2", "majorVersion": 6 @@ -5947,6 +5992,9 @@ "function_association": { "maxItemsOne": false }, + "grpc_config": { + "maxItemsOne": true + }, "lambda_function_association": { "maxItemsOne": false }, @@ -5998,6 +6046,9 @@ "function_association": { "maxItemsOne": false }, + "grpc_config": { + "maxItemsOne": true + }, "lambda_function_association": { "maxItemsOne": false }, @@ -6827,6 +6878,35 @@ "current": "aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy", "majorVersion": 6 }, + "aws_cloudwatch_log_delivery": { + "current": "aws:cloudwatch/logDelivery:LogDelivery", + "majorVersion": 6, + "fields": { + "record_fields": { + "maxItemsOne": false + }, + "s3_delivery_configuration": { + "maxItemsOne": false + } + } + }, + "aws_cloudwatch_log_delivery_destination": { + "current": "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", + "majorVersion": 6, + "fields": { + "delivery_destination_configuration": { + "maxItemsOne": true + } + } + }, + "aws_cloudwatch_log_delivery_destination_policy": { + "current": "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", + "majorVersion": 6 + }, + "aws_cloudwatch_log_delivery_source": { + "current": "aws:cloudwatch/logDeliverySource:LogDeliverySource", + "majorVersion": 6 + }, "aws_cloudwatch_log_destination": { "current": "aws:cloudwatch/logDestination:LogDestination", "majorVersion": 6 @@ -6839,6 +6919,10 @@ "current": "aws:cloudwatch/logGroup:LogGroup", "majorVersion": 6 }, + "aws_cloudwatch_log_index_policy": { + "current": "aws:cloudwatch/logIndexPolicy:LogIndexPolicy", + "majorVersion": 6 + }, "aws_cloudwatch_log_metric_filter": { "current": "aws:cloudwatch/logMetricFilter:LogMetricFilter", "majorVersion": 6, @@ -6961,6 +7045,9 @@ "current": "aws:codebuild/fleet:Fleet", "majorVersion": 6, "fields": { + "compute_configuration": { + "maxItemsOne": true + }, "scaling_configuration": { "maxItemsOne": true, "elem": { @@ -7844,6 +7931,9 @@ "email_configuration": { "maxItemsOne": true }, + "email_mfa_configuration": { + "maxItemsOne": true + }, "lambda_config": { "maxItemsOne": true, "elem": { @@ -7876,6 +7966,16 @@ } } }, + "sign_in_policy": { + "maxItemsOne": true, + "elem": { + "fields": { + "allowed_first_auth_factors": { + "maxItemsOne": false + } + } + } + }, "sms_configuration": { "maxItemsOne": true }, @@ -7903,6 +8003,9 @@ }, "verification_message_template": { "maxItemsOne": true + }, + "web_authn_configuration": { + "maxItemsOne": true } } }, @@ -11550,6 +11653,9 @@ "launch_template": { "maxItemsOne": true }, + "node_repair_config": { + "maxItemsOne": true + }, "remote_access": { "maxItemsOne": true, "elem": { @@ -156881,6 +156987,16 @@ } } } + }, + "override_provider": { + "maxItemsOne": true, + "elem": { + "fields": { + "default_tags": { + "maxItemsOne": true + } + } + } } } }, @@ -161945,6 +162061,18 @@ } } }, + "aws_vpclattice_resource_gateway": { + "current": "aws:vpclattice/resourceGateway:ResourceGateway", + "majorVersion": 6, + "fields": { + "security_group_ids": { + "maxItemsOne": false + }, + "subnet_ids": { + "maxItemsOne": false + } + } + }, "aws_vpclattice_resource_policy": { "current": "aws:vpclattice/resourcePolicy:ResourcePolicy", "majorVersion": 6 @@ -225127,6 +225255,15 @@ "current": "aws:cloudwatch/getEventBus:getEventBus", "majorVersion": 6 }, + "aws_cloudwatch_event_buses": { + "current": "aws:cloudwatch/getEventBuses:getEventBuses", + "majorVersion": 6, + "fields": { + "event_buses": { + "maxItemsOne": false + } + } + }, "aws_cloudwatch_event_connection": { "current": "aws:cloudwatch/getEventConnection:getEventConnection", "majorVersion": 6 @@ -225219,6 +225356,9 @@ "current": "aws:codebuild/getFleet:getFleet", "majorVersion": 6, "fields": { + "compute_configuration": { + "maxItemsOne": false + }, "scaling_configuration": { "maxItemsOne": false, "elem": { @@ -227410,6 +227550,15 @@ } } }, + "aws_ecs_clusters": { + "current": "aws:ecs/getClusters:getClusters", + "majorVersion": 6, + "fields": { + "cluster_arns": { + "maxItemsOne": false + } + } + }, "aws_ecs_container_definition": { "current": "aws:ecs/getContainerDefinition:getContainerDefinition", "majorVersion": 6 @@ -274380,6 +274529,22 @@ } } }, + "aws_route53_records": { + "current": "aws:route53/getRecords:getRecords", + "majorVersion": 6, + "fields": { + "resource_record_sets": { + "maxItemsOne": false, + "elem": { + "fields": { + "resource_records": { + "maxItemsOne": false + } + } + } + } + } + }, "aws_route53_resolver_endpoint": { "current": "aws:route53/getResolverEndpoint:getResolverEndpoint", "majorVersion": 6, @@ -275679,6 +275844,9 @@ "private_dns_names": { "maxItemsOne": false }, + "service_regions": { + "maxItemsOne": false + }, "supported_ip_address_types": { "maxItemsOne": false } @@ -276299,6 +276467,7 @@ "aws:bedrock/agentAgent:AgentAgent": 1, "aws:bedrock/agentAgentActionGroup:AgentAgentActionGroup": 1, "aws:bedrock/agentAgentAlias:AgentAgentAlias": 1, + "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator": 1, "aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation": 1, "aws:bedrock/agentDataSource:AgentDataSource": 1, "aws:bedrock/agentKnowledgeBase:AgentKnowledgeBase": 1, @@ -276339,6 +276508,7 @@ "aws:chimesdkmediapipelines/mediaInsightsPipelineConfiguration:MediaInsightsPipelineConfiguration": 0, "aws:cleanrooms/collaboration:Collaboration": 0, "aws:cleanrooms/configuredTable:ConfiguredTable": 0, + "aws:cleanrooms/membership:Membership": 1, "aws:cloud9/environmentEC2:EnvironmentEC2": 0, "aws:cloud9/environmentMembership:EnvironmentMembership": 0, "aws:cloudcontrol/resource:Resource": 0, @@ -276386,9 +276556,14 @@ "aws:cloudwatch/logAccountPolicy:LogAccountPolicy": 0, "aws:cloudwatch/logAnomalyDetector:LogAnomalyDetector": 1, "aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy": 0, + "aws:cloudwatch/logDelivery:LogDelivery": 1, + "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination": 1, + "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy": 1, + "aws:cloudwatch/logDeliverySource:LogDeliverySource": 1, "aws:cloudwatch/logDestination:LogDestination": 0, "aws:cloudwatch/logDestinationPolicy:LogDestinationPolicy": 0, "aws:cloudwatch/logGroup:LogGroup": 0, + "aws:cloudwatch/logIndexPolicy:LogIndexPolicy": 1, "aws:cloudwatch/logMetricFilter:LogMetricFilter": 0, "aws:cloudwatch/logResourcePolicy:LogResourcePolicy": 0, "aws:cloudwatch/logStream:LogStream": 0, @@ -277564,6 +277739,7 @@ "aws:vpclattice/authPolicy:AuthPolicy": 0, "aws:vpclattice/listener:Listener": 0, "aws:vpclattice/listenerRule:ListenerRule": 0, + "aws:vpclattice/resourceGateway:ResourceGateway": 1, "aws:vpclattice/resourcePolicy:ResourcePolicy": 0, "aws:vpclattice/service:Service": 0, "aws:vpclattice/serviceNetwork:ServiceNetwork": 0, @@ -277689,6 +277865,7 @@ "aws:cloudhsmv2/getCluster:getCluster": 0, "aws:cloudtrail/getServiceAccount:getServiceAccount": 0, "aws:cloudwatch/getEventBus:getEventBus": 0, + "aws:cloudwatch/getEventBuses:getEventBuses": 1, "aws:cloudwatch/getEventConnection:getEventConnection": 0, "aws:cloudwatch/getEventSource:getEventSource": 0, "aws:cloudwatch/getLogDataProtectionPolicyDocument:getLogDataProtectionPolicyDocument": 0, @@ -277847,6 +278024,7 @@ "aws:ecr/getRepositoryCreationTemplate:getRepositoryCreationTemplate": 0, "aws:ecrpublic/getAuthorizationToken:getAuthorizationToken": 0, "aws:ecs/getCluster:getCluster": 0, + "aws:ecs/getClusters:getClusters": 1, "aws:ecs/getContainerDefinition:getContainerDefinition": 0, "aws:ecs/getService:getService": 0, "aws:ecs/getTaskDefinition:getTaskDefinition": 0, @@ -278096,6 +278274,7 @@ "aws:route53/getDelegationSet:getDelegationSet": 0, "aws:route53/getProfilesProfiles:getProfilesProfiles": 1, "aws:route53/getQueryLogConfig:getQueryLogConfig": 0, + "aws:route53/getRecords:getRecords": 1, "aws:route53/getResolverEndpoint:getResolverEndpoint": 0, "aws:route53/getResolverFirewallConfig:getResolverFirewallConfig": 0, "aws:route53/getResolverFirewallDomainList:getResolverFirewallDomainList": 0, diff --git a/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json b/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json index ceea0f06773..d1273ac4dc7 100644 --- a/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json +++ b/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json @@ -1 +1 @@ -{"auto-settings":{"resources":{"aws_batch_job_definition":{"maxItemsOneOverrides":{"eks_properties.$.pod_properties.$.containers":true}},"aws_eks_cluster":{"maxItemsOneOverrides":{"certificate_authority":true}},"aws_lexv2models_slot":{"maxItemsOneOverrides":{"value_elicitation_setting.$.prompt_specification.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.prompt_specification.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.continue_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.continue_response.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.still_waiting_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.still_waiting_response.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.waiting_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.waiting_response.$.message_group.$.variation.$.custom_payload":false}},"aws_lexv2models_slot_type":{"maxItemsOneOverrides":{"composite_slot_type_setting":true,"external_source_setting":true,"external_source_setting.$.grammar_slot_type_setting":true,"external_source_setting.$.grammar_slot_type_setting.$.source":true,"slot_type_values":true}},"aws_sagemaker_app_image_config":{"maxItemsOneOverrides":{"kernel_gateway_image_config.$.kernel_spec":true}},"aws_securitylake_subscriber":{"maxItemsOneOverrides":{"source":true}},"aws_wafv2_web_acl":{"maxItemsOneOverrides":{"association_config.$.request_body.$.api_gateway":false,"association_config.$.request_body.$.app_runner_service":false,"association_config.$.request_body.$.cloudfront":false,"association_config.$.request_body.$.cognito_user_pool":false,"association_config.$.request_body.$.verified_access_instance":false}}},"datasources":{"aws_efs_file_system":{"maxItemsOneOverrides":{"lifecycle_policy":true}},"aws_quicksight_analysis":{"renames":["aws:quicksight/getAnalysis:getAnalysis"]},"aws_vpc_ipam_pool":{"renames":["aws:ec2/getVpcIamPool:getVpcIamPool"]},"aws_vpc_ipam_pool_cidrs":{"renames":["aws:ec2/getVpcIamPoolCidrs:getVpcIamPoolCidrs"]},"aws_vpc_ipam_pools":{"renames":["aws:ec2/getVpcIamPools:getVpcIamPools"]}}},"mux":{"resources":{"aws:accessanalyzer/analyzer:Analyzer":0,"aws:accessanalyzer/archiveRule:ArchiveRule":0,"aws:account/alternativeContact:AlternativeContact":0,"aws:account/primaryContact:PrimaryContact":0,"aws:account/region:Region":0,"aws:acm/certificate:Certificate":0,"aws:acm/certificateValidation:CertificateValidation":0,"aws:acmpca/certificate:Certificate":0,"aws:acmpca/certificateAuthority:CertificateAuthority":0,"aws:acmpca/certificateAuthorityCertificate:CertificateAuthorityCertificate":0,"aws:acmpca/permission:Permission":0,"aws:acmpca/policy:Policy":0,"aws:alb/listener:Listener":0,"aws:alb/listenerCertificate:ListenerCertificate":0,"aws:alb/listenerRule:ListenerRule":0,"aws:alb/loadBalancer:LoadBalancer":0,"aws:alb/targetGroup:TargetGroup":0,"aws:alb/targetGroupAttachment:TargetGroupAttachment":0,"aws:amp/alertManagerDefinition:AlertManagerDefinition":0,"aws:amp/ruleGroupNamespace:RuleGroupNamespace":0,"aws:amp/scraper:Scraper":1,"aws:amp/workspace:Workspace":0,"aws:amplify/app:App":0,"aws:amplify/backendEnvironment:BackendEnvironment":0,"aws:amplify/branch:Branch":0,"aws:amplify/domainAssociation:DomainAssociation":0,"aws:amplify/webhook:Webhook":0,"aws:apigateway/account:Account":1,"aws:apigateway/apiKey:ApiKey":0,"aws:apigateway/authorizer:Authorizer":0,"aws:apigateway/basePathMapping:BasePathMapping":0,"aws:apigateway/clientCertificate:ClientCertificate":0,"aws:apigateway/deployment:Deployment":0,"aws:apigateway/documentationPart:DocumentationPart":0,"aws:apigateway/documentationVersion:DocumentationVersion":0,"aws:apigateway/domainName:DomainName":0,"aws:apigateway/domainNameAccessAssociation:DomainNameAccessAssociation":1,"aws:apigateway/integration:Integration":0,"aws:apigateway/integrationResponse:IntegrationResponse":0,"aws:apigateway/method:Method":0,"aws:apigateway/methodResponse:MethodResponse":0,"aws:apigateway/methodSettings:MethodSettings":0,"aws:apigateway/model:Model":0,"aws:apigateway/requestValidator:RequestValidator":0,"aws:apigateway/resource:Resource":0,"aws:apigateway/response:Response":0,"aws:apigateway/restApi:RestApi":0,"aws:apigateway/restApiPolicy:RestApiPolicy":0,"aws:apigateway/stage:Stage":0,"aws:apigateway/usagePlan:UsagePlan":0,"aws:apigateway/usagePlanKey:UsagePlanKey":0,"aws:apigateway/vpcLink:VpcLink":0,"aws:apigatewayv2/api:Api":0,"aws:apigatewayv2/apiMapping:ApiMapping":0,"aws:apigatewayv2/authorizer:Authorizer":0,"aws:apigatewayv2/deployment:Deployment":0,"aws:apigatewayv2/domainName:DomainName":0,"aws:apigatewayv2/integration:Integration":0,"aws:apigatewayv2/integrationResponse:IntegrationResponse":0,"aws:apigatewayv2/model:Model":0,"aws:apigatewayv2/route:Route":0,"aws:apigatewayv2/routeResponse:RouteResponse":0,"aws:apigatewayv2/stage:Stage":0,"aws:apigatewayv2/vpcLink:VpcLink":0,"aws:appautoscaling/policy:Policy":0,"aws:appautoscaling/scheduledAction:ScheduledAction":0,"aws:appautoscaling/target:Target":0,"aws:appconfig/application:Application":0,"aws:appconfig/configurationProfile:ConfigurationProfile":0,"aws:appconfig/deployment:Deployment":0,"aws:appconfig/deploymentStrategy:DeploymentStrategy":0,"aws:appconfig/environment:Environment":1,"aws:appconfig/eventIntegration:EventIntegration":0,"aws:appconfig/extension:Extension":0,"aws:appconfig/extensionAssociation:ExtensionAssociation":0,"aws:appconfig/hostedConfigurationVersion:HostedConfigurationVersion":0,"aws:appfabric/appAuthorization:AppAuthorization":1,"aws:appfabric/appAuthorizationConnection:AppAuthorizationConnection":1,"aws:appfabric/appBundle:AppBundle":1,"aws:appfabric/ingestion:Ingestion":1,"aws:appfabric/ingestionDestination:IngestionDestination":1,"aws:appflow/connectorProfile:ConnectorProfile":0,"aws:appflow/flow:Flow":0,"aws:appintegrations/dataIntegration:DataIntegration":0,"aws:applicationinsights/application:Application":0,"aws:appmesh/gatewayRoute:GatewayRoute":0,"aws:appmesh/mesh:Mesh":0,"aws:appmesh/route:Route":0,"aws:appmesh/virtualGateway:VirtualGateway":0,"aws:appmesh/virtualNode:VirtualNode":0,"aws:appmesh/virtualRouter:VirtualRouter":0,"aws:appmesh/virtualService:VirtualService":0,"aws:apprunner/autoScalingConfigurationVersion:AutoScalingConfigurationVersion":0,"aws:apprunner/connection:Connection":0,"aws:apprunner/customDomainAssociation:CustomDomainAssociation":0,"aws:apprunner/defaultAutoScalingConfigurationVersion:DefaultAutoScalingConfigurationVersion":1,"aws:apprunner/deployment:Deployment":1,"aws:apprunner/observabilityConfiguration:ObservabilityConfiguration":0,"aws:apprunner/service:Service":0,"aws:apprunner/vpcConnector:VpcConnector":0,"aws:apprunner/vpcIngressConnection:VpcIngressConnection":0,"aws:appstream/directoryConfig:DirectoryConfig":0,"aws:appstream/fleet:Fleet":0,"aws:appstream/fleetStackAssociation:FleetStackAssociation":0,"aws:appstream/imageBuilder:ImageBuilder":0,"aws:appstream/stack:Stack":0,"aws:appstream/user:User":0,"aws:appstream/userStackAssociation:UserStackAssociation":0,"aws:appsync/apiCache:ApiCache":0,"aws:appsync/apiKey:ApiKey":0,"aws:appsync/dataSource:DataSource":0,"aws:appsync/domainName:DomainName":0,"aws:appsync/domainNameApiAssociation:DomainNameApiAssociation":0,"aws:appsync/function:Function":0,"aws:appsync/graphQLApi:GraphQLApi":0,"aws:appsync/resolver:Resolver":0,"aws:appsync/sourceApiAssociation:SourceApiAssociation":1,"aws:appsync/type:Type":0,"aws:athena/dataCatalog:DataCatalog":0,"aws:athena/database:Database":0,"aws:athena/namedQuery:NamedQuery":0,"aws:athena/preparedStatement:PreparedStatement":0,"aws:athena/workgroup:Workgroup":0,"aws:auditmanager/accountRegistration:AccountRegistration":1,"aws:auditmanager/assessment:Assessment":1,"aws:auditmanager/assessmentDelegation:AssessmentDelegation":1,"aws:auditmanager/assessmentReport:AssessmentReport":1,"aws:auditmanager/control:Control":1,"aws:auditmanager/framework:Framework":1,"aws:auditmanager/frameworkShare:FrameworkShare":1,"aws:auditmanager/organizationAdminAccountRegistration:OrganizationAdminAccountRegistration":1,"aws:autoscaling/attachment:Attachment":0,"aws:autoscaling/group:Group":0,"aws:autoscaling/lifecycleHook:LifecycleHook":0,"aws:autoscaling/notification:Notification":0,"aws:autoscaling/policy:Policy":0,"aws:autoscaling/schedule:Schedule":0,"aws:autoscaling/tag:Tag":0,"aws:autoscaling/trafficSourceAttachment:TrafficSourceAttachment":0,"aws:autoscalingplans/scalingPlan:ScalingPlan":0,"aws:backup/framework:Framework":0,"aws:backup/globalSettings:GlobalSettings":0,"aws:backup/logicallyAirGappedVault:LogicallyAirGappedVault":1,"aws:backup/plan:Plan":0,"aws:backup/regionSettings:RegionSettings":0,"aws:backup/reportPlan:ReportPlan":0,"aws:backup/restoreTestingPlan:RestoreTestingPlan":1,"aws:backup/restoreTestingSelection:RestoreTestingSelection":1,"aws:backup/selection:Selection":0,"aws:backup/vault:Vault":0,"aws:backup/vaultLockConfiguration:VaultLockConfiguration":0,"aws:backup/vaultNotifications:VaultNotifications":0,"aws:backup/vaultPolicy:VaultPolicy":0,"aws:batch/computeEnvironment:ComputeEnvironment":0,"aws:batch/jobDefinition:JobDefinition":0,"aws:batch/jobQueue:JobQueue":1,"aws:batch/schedulingPolicy:SchedulingPolicy":0,"aws:bcmdata/export:Export":1,"aws:bedrock/agentAgent:AgentAgent":1,"aws:bedrock/agentAgentActionGroup:AgentAgentActionGroup":1,"aws:bedrock/agentAgentAlias:AgentAgentAlias":1,"aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation":1,"aws:bedrock/agentDataSource:AgentDataSource":1,"aws:bedrock/agentKnowledgeBase:AgentKnowledgeBase":1,"aws:bedrock/customModel:CustomModel":1,"aws:bedrock/guardrail:Guardrail":1,"aws:bedrock/guardrailVersion:GuardrailVersion":1,"aws:bedrock/inferenceProfile:InferenceProfile":1,"aws:bedrock/provisionedModelThroughput:ProvisionedModelThroughput":1,"aws:bedrockmodel/invocationLoggingConfiguration:InvocationLoggingConfiguration":1,"aws:budgets/budget:Budget":0,"aws:budgets/budgetAction:BudgetAction":0,"aws:cfg/aggregateAuthorization:AggregateAuthorization":0,"aws:cfg/configurationAggregator:ConfigurationAggregator":0,"aws:cfg/conformancePack:ConformancePack":0,"aws:cfg/deliveryChannel:DeliveryChannel":0,"aws:cfg/organizationConformancePack:OrganizationConformancePack":0,"aws:cfg/organizationCustomPolicyRule:OrganizationCustomPolicyRule":0,"aws:cfg/organizationCustomRule:OrganizationCustomRule":0,"aws:cfg/organizationManagedRule:OrganizationManagedRule":0,"aws:cfg/recorder:Recorder":0,"aws:cfg/recorderStatus:RecorderStatus":0,"aws:cfg/remediationConfiguration:RemediationConfiguration":0,"aws:cfg/retentionConfiguration:RetentionConfiguration":1,"aws:cfg/rule:Rule":0,"aws:chatbot/slackChannelConfiguration:SlackChannelConfiguration":1,"aws:chatbot/teamsChannelConfiguration:TeamsChannelConfiguration":1,"aws:chime/sdkvoiceGlobalSettings:SdkvoiceGlobalSettings":0,"aws:chime/sdkvoiceSipMediaApplication:SdkvoiceSipMediaApplication":0,"aws:chime/sdkvoiceSipRule:SdkvoiceSipRule":0,"aws:chime/sdkvoiceVoiceProfileDomain:SdkvoiceVoiceProfileDomain":0,"aws:chime/voiceConnector:VoiceConnector":0,"aws:chime/voiceConnectorGroup:VoiceConnectorGroup":0,"aws:chime/voiceConnectorLogging:VoiceConnectorLogging":0,"aws:chime/voiceConnectorOrganization:VoiceConnectorOrganization":0,"aws:chime/voiceConnectorStreaming:VoiceConnectorStreaming":0,"aws:chime/voiceConnectorTermination:VoiceConnectorTermination":0,"aws:chime/voiceConnectorTerminationCredentials:VoiceConnectorTerminationCredentials":0,"aws:chimesdkmediapipelines/mediaInsightsPipelineConfiguration:MediaInsightsPipelineConfiguration":0,"aws:cleanrooms/collaboration:Collaboration":0,"aws:cleanrooms/configuredTable:ConfiguredTable":0,"aws:cloud9/environmentEC2:EnvironmentEC2":0,"aws:cloud9/environmentMembership:EnvironmentMembership":0,"aws:cloudcontrol/resource:Resource":0,"aws:cloudformation/cloudFormationType:CloudFormationType":0,"aws:cloudformation/stack:Stack":0,"aws:cloudformation/stackInstances:StackInstances":0,"aws:cloudformation/stackSet:StackSet":0,"aws:cloudformation/stackSetInstance:StackSetInstance":0,"aws:cloudfront/cachePolicy:CachePolicy":0,"aws:cloudfront/continuousDeploymentPolicy:ContinuousDeploymentPolicy":1,"aws:cloudfront/distribution:Distribution":0,"aws:cloudfront/fieldLevelEncryptionConfig:FieldLevelEncryptionConfig":0,"aws:cloudfront/fieldLevelEncryptionProfile:FieldLevelEncryptionProfile":0,"aws:cloudfront/function:Function":0,"aws:cloudfront/keyGroup:KeyGroup":0,"aws:cloudfront/keyValueStore:KeyValueStore":1,"aws:cloudfront/keyvaluestoreKey:KeyvaluestoreKey":1,"aws:cloudfront/monitoringSubscription:MonitoringSubscription":0,"aws:cloudfront/originAccessControl:OriginAccessControl":0,"aws:cloudfront/originAccessIdentity:OriginAccessIdentity":0,"aws:cloudfront/originRequestPolicy:OriginRequestPolicy":0,"aws:cloudfront/publicKey:PublicKey":0,"aws:cloudfront/realtimeLogConfig:RealtimeLogConfig":0,"aws:cloudfront/responseHeadersPolicy:ResponseHeadersPolicy":0,"aws:cloudfront/vpcOrigin:VpcOrigin":1,"aws:cloudhsmv2/cluster:Cluster":0,"aws:cloudhsmv2/hsm:Hsm":0,"aws:cloudsearch/domain:Domain":0,"aws:cloudsearch/domainServiceAccessPolicy:DomainServiceAccessPolicy":0,"aws:cloudtrail/eventDataStore:EventDataStore":0,"aws:cloudtrail/organizationDelegatedAdminAccount:OrganizationDelegatedAdminAccount":1,"aws:cloudtrail/trail:Trail":0,"aws:cloudwatch/compositeAlarm:CompositeAlarm":0,"aws:cloudwatch/dashboard:Dashboard":0,"aws:cloudwatch/eventApiDestination:EventApiDestination":0,"aws:cloudwatch/eventArchive:EventArchive":0,"aws:cloudwatch/eventBus:EventBus":0,"aws:cloudwatch/eventBusPolicy:EventBusPolicy":0,"aws:cloudwatch/eventConnection:EventConnection":0,"aws:cloudwatch/eventEndpoint:EventEndpoint":0,"aws:cloudwatch/eventPermission:EventPermission":0,"aws:cloudwatch/eventRule:EventRule":0,"aws:cloudwatch/eventTarget:EventTarget":0,"aws:cloudwatch/internetMonitor:InternetMonitor":0,"aws:cloudwatch/logAccountPolicy:LogAccountPolicy":0,"aws:cloudwatch/logAnomalyDetector:LogAnomalyDetector":1,"aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy":0,"aws:cloudwatch/logDestination:LogDestination":0,"aws:cloudwatch/logDestinationPolicy:LogDestinationPolicy":0,"aws:cloudwatch/logGroup:LogGroup":0,"aws:cloudwatch/logMetricFilter:LogMetricFilter":0,"aws:cloudwatch/logResourcePolicy:LogResourcePolicy":0,"aws:cloudwatch/logStream:LogStream":0,"aws:cloudwatch/logSubscriptionFilter:LogSubscriptionFilter":0,"aws:cloudwatch/metricAlarm:MetricAlarm":0,"aws:cloudwatch/metricStream:MetricStream":0,"aws:cloudwatch/queryDefinition:QueryDefinition":0,"aws:codeartifact/domain:Domain":0,"aws:codeartifact/domainPermissions:DomainPermissions":0,"aws:codeartifact/repository:Repository":0,"aws:codeartifact/repositoryPermissionsPolicy:RepositoryPermissionsPolicy":0,"aws:codebuild/fleet:Fleet":0,"aws:codebuild/project:Project":0,"aws:codebuild/reportGroup:ReportGroup":0,"aws:codebuild/resourcePolicy:ResourcePolicy":0,"aws:codebuild/sourceCredential:SourceCredential":0,"aws:codebuild/webhook:Webhook":0,"aws:codecatalyst/devEnvironment:DevEnvironment":0,"aws:codecatalyst/project:Project":0,"aws:codecatalyst/sourceRepository:SourceRepository":0,"aws:codecommit/approvalRuleTemplate:ApprovalRuleTemplate":0,"aws:codecommit/approvalRuleTemplateAssociation:ApprovalRuleTemplateAssociation":0,"aws:codecommit/repository:Repository":0,"aws:codecommit/trigger:Trigger":0,"aws:codeconnections/connection:Connection":1,"aws:codeconnections/host:Host":1,"aws:codedeploy/application:Application":0,"aws:codedeploy/deploymentConfig:DeploymentConfig":0,"aws:codedeploy/deploymentGroup:DeploymentGroup":0,"aws:codeguruprofiler/profilingGroup:ProfilingGroup":1,"aws:codegurureviewer/repositoryAssociation:RepositoryAssociation":0,"aws:codepipeline/customActionType:CustomActionType":0,"aws:codepipeline/pipeline:Pipeline":0,"aws:codepipeline/webhook:Webhook":0,"aws:codestarconnections/connection:Connection":0,"aws:codestarconnections/host:Host":0,"aws:codestarnotifications/notificationRule:NotificationRule":0,"aws:cognito/identityPool:IdentityPool":0,"aws:cognito/identityPoolProviderPrincipalTag:IdentityPoolProviderPrincipalTag":0,"aws:cognito/identityPoolRoleAttachment:IdentityPoolRoleAttachment":0,"aws:cognito/identityProvider:IdentityProvider":0,"aws:cognito/managedUserPoolClient:ManagedUserPoolClient":1,"aws:cognito/resourceServer:ResourceServer":0,"aws:cognito/riskConfiguration:RiskConfiguration":0,"aws:cognito/user:User":0,"aws:cognito/userGroup:UserGroup":0,"aws:cognito/userInGroup:UserInGroup":0,"aws:cognito/userPool:UserPool":0,"aws:cognito/userPoolClient:UserPoolClient":1,"aws:cognito/userPoolDomain:UserPoolDomain":0,"aws:cognito/userPoolUICustomization:UserPoolUICustomization":0,"aws:comprehend/documentClassifier:DocumentClassifier":0,"aws:comprehend/entityRecognizer:EntityRecognizer":0,"aws:computeoptimizer/enrollmentStatus:EnrollmentStatus":1,"aws:computeoptimizer/recommendationPreferences:RecommendationPreferences":1,"aws:connect/botAssociation:BotAssociation":0,"aws:connect/contactFlow:ContactFlow":0,"aws:connect/contactFlowModule:ContactFlowModule":0,"aws:connect/hoursOfOperation:HoursOfOperation":0,"aws:connect/instance:Instance":0,"aws:connect/instanceStorageConfig:InstanceStorageConfig":0,"aws:connect/lambdaFunctionAssociation:LambdaFunctionAssociation":0,"aws:connect/phoneNumber:PhoneNumber":0,"aws:connect/queue:Queue":0,"aws:connect/quickConnect:QuickConnect":0,"aws:connect/routingProfile:RoutingProfile":0,"aws:connect/securityProfile:SecurityProfile":0,"aws:connect/user:User":0,"aws:connect/userHierarchyGroup:UserHierarchyGroup":0,"aws:connect/userHierarchyStructure:UserHierarchyStructure":0,"aws:connect/vocabulary:Vocabulary":0,"aws:controltower/controlTowerControl:ControlTowerControl":0,"aws:controltower/landingZone:LandingZone":0,"aws:costexplorer/anomalyMonitor:AnomalyMonitor":0,"aws:costexplorer/anomalySubscription:AnomalySubscription":0,"aws:costexplorer/costAllocationTag:CostAllocationTag":0,"aws:costexplorer/costCategory:CostCategory":0,"aws:costoptimizationhub/enrollmentStatus:EnrollmentStatus":1,"aws:costoptimizationhub/preferences:Preferences":1,"aws:cur/reportDefinition:ReportDefinition":0,"aws:customerprofiles/domain:Domain":0,"aws:customerprofiles/profile:Profile":0,"aws:dataexchange/dataSet:DataSet":0,"aws:dataexchange/revision:Revision":0,"aws:datapipeline/pipeline:Pipeline":0,"aws:datapipeline/pipelineDefinition:PipelineDefinition":0,"aws:datasync/agent:Agent":0,"aws:datasync/efsLocation:EfsLocation":0,"aws:datasync/fsxOpenZfsFileSystem:FsxOpenZfsFileSystem":0,"aws:datasync/locationAzureBlob:LocationAzureBlob":0,"aws:datasync/locationFsxLustre:LocationFsxLustre":0,"aws:datasync/locationFsxOntapFileSystem:LocationFsxOntapFileSystem":0,"aws:datasync/locationFsxWindows:LocationFsxWindows":0,"aws:datasync/locationHdfs:LocationHdfs":0,"aws:datasync/locationObjectStorage:LocationObjectStorage":0,"aws:datasync/locationSmb:LocationSmb":0,"aws:datasync/nfsLocation:NfsLocation":0,"aws:datasync/s3Location:S3Location":0,"aws:datasync/task:Task":0,"aws:datazone/assetType:AssetType":1,"aws:datazone/domain:Domain":1,"aws:datazone/environment:Environment":1,"aws:datazone/environmentBlueprintConfiguration:EnvironmentBlueprintConfiguration":1,"aws:datazone/environmentProfile:EnvironmentProfile":1,"aws:datazone/formType:FormType":1,"aws:datazone/glossary:Glossary":1,"aws:datazone/glossaryTerm:GlossaryTerm":1,"aws:datazone/project:Project":1,"aws:datazone/userProfile:UserProfile":1,"aws:dax/cluster:Cluster":0,"aws:dax/parameterGroup:ParameterGroup":0,"aws:dax/subnetGroup:SubnetGroup":0,"aws:detective/graph:Graph":0,"aws:detective/invitationAccepter:InvitationAccepter":0,"aws:detective/member:Member":0,"aws:detective/organizationAdminAccount:OrganizationAdminAccount":0,"aws:detective/organizationConfiguration:OrganizationConfiguration":0,"aws:devicefarm/devicePool:DevicePool":0,"aws:devicefarm/instanceProfile:InstanceProfile":0,"aws:devicefarm/networkProfile:NetworkProfile":0,"aws:devicefarm/project:Project":0,"aws:devicefarm/testGridProject:TestGridProject":0,"aws:devicefarm/upload:Upload":0,"aws:devopsguru/eventSourcesConfig:EventSourcesConfig":1,"aws:devopsguru/notificationChannel:NotificationChannel":1,"aws:devopsguru/resourceCollection:ResourceCollection":1,"aws:devopsguru/serviceIntegration:ServiceIntegration":1,"aws:directconnect/bgpPeer:BgpPeer":0,"aws:directconnect/connection:Connection":0,"aws:directconnect/connectionAssociation:ConnectionAssociation":0,"aws:directconnect/connectionConfirmation:ConnectionConfirmation":0,"aws:directconnect/gateway:Gateway":0,"aws:directconnect/gatewayAssociation:GatewayAssociation":0,"aws:directconnect/gatewayAssociationProposal:GatewayAssociationProposal":0,"aws:directconnect/hostedConnection:HostedConnection":0,"aws:directconnect/hostedPrivateVirtualInterface:HostedPrivateVirtualInterface":0,"aws:directconnect/hostedPrivateVirtualInterfaceAccepter:HostedPrivateVirtualInterfaceAccepter":0,"aws:directconnect/hostedPublicVirtualInterface:HostedPublicVirtualInterface":0,"aws:directconnect/hostedPublicVirtualInterfaceAccepter:HostedPublicVirtualInterfaceAccepter":0,"aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface":0,"aws:directconnect/hostedTransitVirtualInterfaceAcceptor:HostedTransitVirtualInterfaceAcceptor":0,"aws:directconnect/linkAggregationGroup:LinkAggregationGroup":0,"aws:directconnect/macsecKeyAssociation:MacsecKeyAssociation":0,"aws:directconnect/privateVirtualInterface:PrivateVirtualInterface":0,"aws:directconnect/publicVirtualInterface:PublicVirtualInterface":0,"aws:directconnect/transitVirtualInterface:TransitVirtualInterface":0,"aws:directoryservice/conditionalForwader:ConditionalForwader":0,"aws:directoryservice/directory:Directory":0,"aws:directoryservice/logService:LogService":0,"aws:directoryservice/radiusSettings:RadiusSettings":0,"aws:directoryservice/serviceRegion:ServiceRegion":0,"aws:directoryservice/sharedDirectory:SharedDirectory":0,"aws:directoryservice/sharedDirectoryAccepter:SharedDirectoryAccepter":0,"aws:directoryservice/trust:Trust":1,"aws:dlm/lifecyclePolicy:LifecyclePolicy":0,"aws:dms/certificate:Certificate":0,"aws:dms/endpoint:Endpoint":0,"aws:dms/eventSubscription:EventSubscription":0,"aws:dms/replicationConfig:ReplicationConfig":0,"aws:dms/replicationInstance:ReplicationInstance":0,"aws:dms/replicationSubnetGroup:ReplicationSubnetGroup":0,"aws:dms/replicationTask:ReplicationTask":0,"aws:dms/s3Endpoint:S3Endpoint":0,"aws:docdb/cluster:Cluster":0,"aws:docdb/clusterInstance:ClusterInstance":0,"aws:docdb/clusterParameterGroup:ClusterParameterGroup":0,"aws:docdb/clusterSnapshot:ClusterSnapshot":0,"aws:docdb/elasticCluster:ElasticCluster":1,"aws:docdb/eventSubscription:EventSubscription":0,"aws:docdb/globalCluster:GlobalCluster":0,"aws:docdb/subnetGroup:SubnetGroup":0,"aws:drs/replicationConfigurationTemplate:ReplicationConfigurationTemplate":1,"aws:dynamodb/contributorInsights:ContributorInsights":0,"aws:dynamodb/globalTable:GlobalTable":0,"aws:dynamodb/kinesisStreamingDestination:KinesisStreamingDestination":0,"aws:dynamodb/resourcePolicy:ResourcePolicy":1,"aws:dynamodb/table:Table":0,"aws:dynamodb/tableExport:TableExport":0,"aws:dynamodb/tableItem:TableItem":0,"aws:dynamodb/tableReplica:TableReplica":0,"aws:dynamodb/tag:Tag":0,"aws:ebs/defaultKmsKey:DefaultKmsKey":0,"aws:ebs/encryptionByDefault:EncryptionByDefault":0,"aws:ebs/fastSnapshotRestore:FastSnapshotRestore":1,"aws:ebs/snapshot:Snapshot":0,"aws:ebs/snapshotBlockPublicAccess:SnapshotBlockPublicAccess":0,"aws:ebs/snapshotCopy:SnapshotCopy":0,"aws:ebs/snapshotImport:SnapshotImport":0,"aws:ebs/volume:Volume":0,"aws:ec2/ami:Ami":0,"aws:ec2/amiCopy:AmiCopy":0,"aws:ec2/amiFromInstance:AmiFromInstance":0,"aws:ec2/amiLaunchPermission:AmiLaunchPermission":0,"aws:ec2/availabilityZoneGroup:AvailabilityZoneGroup":0,"aws:ec2/capacityBlockReservation:CapacityBlockReservation":1,"aws:ec2/capacityReservation:CapacityReservation":0,"aws:ec2/carrierGateway:CarrierGateway":0,"aws:ec2/customerGateway:CustomerGateway":0,"aws:ec2/dedicatedHost:DedicatedHost":0,"aws:ec2/defaultNetworkAcl:DefaultNetworkAcl":0,"aws:ec2/defaultRouteTable:DefaultRouteTable":0,"aws:ec2/defaultSecurityGroup:DefaultSecurityGroup":0,"aws:ec2/defaultSubnet:DefaultSubnet":0,"aws:ec2/defaultVpc:DefaultVpc":0,"aws:ec2/defaultVpcDhcpOptions:DefaultVpcDhcpOptions":0,"aws:ec2/egressOnlyInternetGateway:EgressOnlyInternetGateway":0,"aws:ec2/eip:Eip":0,"aws:ec2/eipAssociation:EipAssociation":0,"aws:ec2/eipDomainName:EipDomainName":1,"aws:ec2/fleet:Fleet":0,"aws:ec2/flowLog:FlowLog":0,"aws:ec2/imageBlockPublicAccess:ImageBlockPublicAccess":0,"aws:ec2/instance:Instance":0,"aws:ec2/instanceMetadataDefaults:InstanceMetadataDefaults":1,"aws:ec2/internetGateway:InternetGateway":0,"aws:ec2/internetGatewayAttachment:InternetGatewayAttachment":0,"aws:ec2/keyPair:KeyPair":0,"aws:ec2/launchConfiguration:LaunchConfiguration":0,"aws:ec2/launchTemplate:LaunchTemplate":0,"aws:ec2/localGatewayRoute:LocalGatewayRoute":0,"aws:ec2/localGatewayRouteTableVpcAssociation:LocalGatewayRouteTableVpcAssociation":0,"aws:ec2/mainRouteTableAssociation:MainRouteTableAssociation":0,"aws:ec2/managedPrefixList:ManagedPrefixList":0,"aws:ec2/managedPrefixListEntry:ManagedPrefixListEntry":0,"aws:ec2/natGateway:NatGateway":0,"aws:ec2/networkAcl:NetworkAcl":0,"aws:ec2/networkAclAssociation:NetworkAclAssociation":0,"aws:ec2/networkAclRule:NetworkAclRule":0,"aws:ec2/networkInsightsAnalysis:NetworkInsightsAnalysis":0,"aws:ec2/networkInsightsPath:NetworkInsightsPath":0,"aws:ec2/networkInterface:NetworkInterface":0,"aws:ec2/networkInterfaceAttachment:NetworkInterfaceAttachment":0,"aws:ec2/networkInterfaceSecurityGroupAttachment:NetworkInterfaceSecurityGroupAttachment":0,"aws:ec2/peeringConnectionOptions:PeeringConnectionOptions":0,"aws:ec2/placementGroup:PlacementGroup":0,"aws:ec2/proxyProtocolPolicy:ProxyProtocolPolicy":0,"aws:ec2/route:Route":0,"aws:ec2/routeTable:RouteTable":0,"aws:ec2/routeTableAssociation:RouteTableAssociation":0,"aws:ec2/securityGroup:SecurityGroup":0,"aws:ec2/securityGroupAssociation:SecurityGroupAssociation":0,"aws:ec2/securityGroupRule:SecurityGroupRule":0,"aws:ec2/serialConsoleAccess:SerialConsoleAccess":0,"aws:ec2/snapshotCreateVolumePermission:SnapshotCreateVolumePermission":0,"aws:ec2/spotDatafeedSubscription:SpotDatafeedSubscription":0,"aws:ec2/spotFleetRequest:SpotFleetRequest":0,"aws:ec2/spotInstanceRequest:SpotInstanceRequest":0,"aws:ec2/subnet:Subnet":0,"aws:ec2/subnetCidrReservation:SubnetCidrReservation":0,"aws:ec2/tag:Tag":0,"aws:ec2/trafficMirrorFilter:TrafficMirrorFilter":0,"aws:ec2/trafficMirrorFilterRule:TrafficMirrorFilterRule":0,"aws:ec2/trafficMirrorSession:TrafficMirrorSession":0,"aws:ec2/trafficMirrorTarget:TrafficMirrorTarget":0,"aws:ec2/volumeAttachment:VolumeAttachment":0,"aws:ec2/vpc:Vpc":0,"aws:ec2/vpcBlockPublicAccessExclusion:VpcBlockPublicAccessExclusion":1,"aws:ec2/vpcBlockPublicAccessOptions:VpcBlockPublicAccessOptions":1,"aws:ec2/vpcDhcpOptions:VpcDhcpOptions":0,"aws:ec2/vpcDhcpOptionsAssociation:VpcDhcpOptionsAssociation":0,"aws:ec2/vpcEndpoint:VpcEndpoint":0,"aws:ec2/vpcEndpointConnectionAccepter:VpcEndpointConnectionAccepter":0,"aws:ec2/vpcEndpointConnectionNotification:VpcEndpointConnectionNotification":0,"aws:ec2/vpcEndpointPolicy:VpcEndpointPolicy":0,"aws:ec2/vpcEndpointRouteTableAssociation:VpcEndpointRouteTableAssociation":0,"aws:ec2/vpcEndpointService:VpcEndpointService":0,"aws:ec2/vpcEndpointServiceAllowedPrinciple:VpcEndpointServiceAllowedPrinciple":0,"aws:ec2/vpcEndpointSubnetAssociation:VpcEndpointSubnetAssociation":0,"aws:ec2/vpcIpam:VpcIpam":0,"aws:ec2/vpcIpamOrganizationAdminAccount:VpcIpamOrganizationAdminAccount":0,"aws:ec2/vpcIpamPool:VpcIpamPool":0,"aws:ec2/vpcIpamPoolCidr:VpcIpamPoolCidr":0,"aws:ec2/vpcIpamPoolCidrAllocation:VpcIpamPoolCidrAllocation":0,"aws:ec2/vpcIpamPreviewNextCidr:VpcIpamPreviewNextCidr":0,"aws:ec2/vpcIpamResourceDiscovery:VpcIpamResourceDiscovery":0,"aws:ec2/vpcIpamResourceDiscoveryAssociation:VpcIpamResourceDiscoveryAssociation":0,"aws:ec2/vpcIpamScope:VpcIpamScope":0,"aws:ec2/vpcIpv4CidrBlockAssociation:VpcIpv4CidrBlockAssociation":0,"aws:ec2/vpcIpv6CidrBlockAssociation:VpcIpv6CidrBlockAssociation":0,"aws:ec2/vpcNetworkPerformanceMetricSubscription:VpcNetworkPerformanceMetricSubscription":0,"aws:ec2/vpcPeeringConnection:VpcPeeringConnection":0,"aws:ec2/vpcPeeringConnectionAccepter:VpcPeeringConnectionAccepter":0,"aws:ec2/vpnConnection:VpnConnection":0,"aws:ec2/vpnConnectionRoute:VpnConnectionRoute":0,"aws:ec2/vpnGateway:VpnGateway":0,"aws:ec2/vpnGatewayAttachment:VpnGatewayAttachment":0,"aws:ec2/vpnGatewayRoutePropagation:VpnGatewayRoutePropagation":0,"aws:ec2clientvpn/authorizationRule:AuthorizationRule":0,"aws:ec2clientvpn/endpoint:Endpoint":0,"aws:ec2clientvpn/networkAssociation:NetworkAssociation":0,"aws:ec2clientvpn/route:Route":0,"aws:ec2transitgateway/connect:Connect":0,"aws:ec2transitgateway/connectPeer:ConnectPeer":0,"aws:ec2transitgateway/defaultRouteTableAssociation:DefaultRouteTableAssociation":1,"aws:ec2transitgateway/defaultRouteTablePropagation:DefaultRouteTablePropagation":1,"aws:ec2transitgateway/instanceConnectEndpoint:InstanceConnectEndpoint":1,"aws:ec2transitgateway/instanceState:InstanceState":0,"aws:ec2transitgateway/multicastDomain:MulticastDomain":0,"aws:ec2transitgateway/multicastDomainAssociation:MulticastDomainAssociation":0,"aws:ec2transitgateway/multicastGroupMember:MulticastGroupMember":0,"aws:ec2transitgateway/multicastGroupSource:MulticastGroupSource":0,"aws:ec2transitgateway/peeringAttachment:PeeringAttachment":0,"aws:ec2transitgateway/peeringAttachmentAccepter:PeeringAttachmentAccepter":0,"aws:ec2transitgateway/policyTable:PolicyTable":0,"aws:ec2transitgateway/policyTableAssociation:PolicyTableAssociation":0,"aws:ec2transitgateway/prefixListReference:PrefixListReference":0,"aws:ec2transitgateway/route:Route":0,"aws:ec2transitgateway/routeTable:RouteTable":0,"aws:ec2transitgateway/routeTableAssociation:RouteTableAssociation":0,"aws:ec2transitgateway/routeTablePropagation:RouteTablePropagation":0,"aws:ec2transitgateway/transitGateway:TransitGateway":0,"aws:ec2transitgateway/vpcAttachment:VpcAttachment":0,"aws:ec2transitgateway/vpcAttachmentAccepter:VpcAttachmentAccepter":0,"aws:ecr/accountSetting:AccountSetting":1,"aws:ecr/lifecyclePolicy:LifecyclePolicy":0,"aws:ecr/pullThroughCacheRule:PullThroughCacheRule":0,"aws:ecr/registryPolicy:RegistryPolicy":0,"aws:ecr/registryScanningConfiguration:RegistryScanningConfiguration":0,"aws:ecr/replicationConfiguration:ReplicationConfiguration":0,"aws:ecr/repository:Repository":0,"aws:ecr/repositoryCreationTemplate:RepositoryCreationTemplate":0,"aws:ecr/repositoryPolicy:RepositoryPolicy":0,"aws:ecrpublic/repository:Repository":0,"aws:ecrpublic/repositoryPolicy:RepositoryPolicy":0,"aws:ecs/accountSettingDefault:AccountSettingDefault":0,"aws:ecs/capacityProvider:CapacityProvider":0,"aws:ecs/cluster:Cluster":0,"aws:ecs/clusterCapacityProviders:ClusterCapacityProviders":0,"aws:ecs/service:Service":0,"aws:ecs/tag:Tag":0,"aws:ecs/taskDefinition:TaskDefinition":0,"aws:ecs/taskSet:TaskSet":0,"aws:efs/accessPoint:AccessPoint":0,"aws:efs/backupPolicy:BackupPolicy":0,"aws:efs/fileSystem:FileSystem":0,"aws:efs/fileSystemPolicy:FileSystemPolicy":0,"aws:efs/mountTarget:MountTarget":0,"aws:efs/replicationConfiguration:ReplicationConfiguration":0,"aws:eks/accessEntry:AccessEntry":0,"aws:eks/accessPolicyAssociation:AccessPolicyAssociation":0,"aws:eks/addon:Addon":0,"aws:eks/cluster:Cluster":0,"aws:eks/fargateProfile:FargateProfile":0,"aws:eks/identityProviderConfig:IdentityProviderConfig":0,"aws:eks/nodeGroup:NodeGroup":0,"aws:eks/podIdentityAssociation:PodIdentityAssociation":1,"aws:elasticache/cluster:Cluster":0,"aws:elasticache/globalReplicationGroup:GlobalReplicationGroup":0,"aws:elasticache/parameterGroup:ParameterGroup":0,"aws:elasticache/replicationGroup:ReplicationGroup":0,"aws:elasticache/reservedCacheNode:ReservedCacheNode":1,"aws:elasticache/serverlessCache:ServerlessCache":1,"aws:elasticache/subnetGroup:SubnetGroup":0,"aws:elasticache/user:User":0,"aws:elasticache/userGroup:UserGroup":0,"aws:elasticache/userGroupAssociation:UserGroupAssociation":0,"aws:elasticbeanstalk/application:Application":0,"aws:elasticbeanstalk/applicationVersion:ApplicationVersion":0,"aws:elasticbeanstalk/configurationTemplate:ConfigurationTemplate":0,"aws:elasticbeanstalk/environment:Environment":0,"aws:elasticsearch/domain:Domain":0,"aws:elasticsearch/domainPolicy:DomainPolicy":0,"aws:elasticsearch/domainSamlOptions:DomainSamlOptions":0,"aws:elasticsearch/vpcEndpoint:VpcEndpoint":0,"aws:elastictranscoder/pipeline:Pipeline":0,"aws:elastictranscoder/preset:Preset":0,"aws:elb/appCookieStickinessPolicy:AppCookieStickinessPolicy":0,"aws:elb/attachment:Attachment":0,"aws:elb/listenerPolicy:ListenerPolicy":0,"aws:elb/loadBalancer:LoadBalancer":0,"aws:elb/loadBalancerBackendServerPolicy:LoadBalancerBackendServerPolicy":0,"aws:elb/loadBalancerCookieStickinessPolicy:LoadBalancerCookieStickinessPolicy":0,"aws:elb/loadBalancerPolicy:LoadBalancerPolicy":0,"aws:elb/sslNegotiationPolicy:SslNegotiationPolicy":0,"aws:emr/blockPublicAccessConfiguration:BlockPublicAccessConfiguration":0,"aws:emr/cluster:Cluster":0,"aws:emr/instanceFleet:InstanceFleet":0,"aws:emr/instanceGroup:InstanceGroup":0,"aws:emr/managedScalingPolicy:ManagedScalingPolicy":0,"aws:emr/securityConfiguration:SecurityConfiguration":0,"aws:emr/studio:Studio":0,"aws:emr/studioSessionMapping:StudioSessionMapping":0,"aws:emrcontainers/jobTemplate:JobTemplate":0,"aws:emrcontainers/virtualCluster:VirtualCluster":0,"aws:emrserverless/application:Application":0,"aws:evidently/feature:Feature":0,"aws:evidently/launch:Launch":0,"aws:evidently/project:Project":0,"aws:evidently/segment:Segment":0,"aws:finspace/kxCluster:KxCluster":0,"aws:finspace/kxDatabase:KxDatabase":0,"aws:finspace/kxDataview:KxDataview":0,"aws:finspace/kxEnvironment:KxEnvironment":0,"aws:finspace/kxScalingGroup:KxScalingGroup":0,"aws:finspace/kxUser:KxUser":0,"aws:finspace/kxVolume:KxVolume":0,"aws:fis/experimentTemplate:ExperimentTemplate":0,"aws:fms/adminAccount:AdminAccount":0,"aws:fms/policy:Policy":0,"aws:fms/resourceSet:ResourceSet":1,"aws:fsx/backup:Backup":0,"aws:fsx/dataRepositoryAssociation:DataRepositoryAssociation":0,"aws:fsx/fileCache:FileCache":0,"aws:fsx/lustreFileSystem:LustreFileSystem":0,"aws:fsx/ontapFileSystem:OntapFileSystem":0,"aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine":0,"aws:fsx/ontapVolume:OntapVolume":0,"aws:fsx/openZfsFileSystem:OpenZfsFileSystem":0,"aws:fsx/openZfsSnapshot:OpenZfsSnapshot":0,"aws:fsx/openZfsVolume:OpenZfsVolume":0,"aws:fsx/windowsFileSystem:WindowsFileSystem":0,"aws:gamelift/alias:Alias":0,"aws:gamelift/build:Build":0,"aws:gamelift/fleet:Fleet":0,"aws:gamelift/gameServerGroup:GameServerGroup":0,"aws:gamelift/gameSessionQueue:GameSessionQueue":0,"aws:gamelift/matchmakingConfiguration:MatchmakingConfiguration":0,"aws:gamelift/matchmakingRuleSet:MatchmakingRuleSet":0,"aws:gamelift/script:Script":0,"aws:glacier/vault:Vault":0,"aws:glacier/vaultLock:VaultLock":0,"aws:globalaccelerator/accelerator:Accelerator":0,"aws:globalaccelerator/crossAccountAttachment:CrossAccountAttachment":1,"aws:globalaccelerator/customRoutingAccelerator:CustomRoutingAccelerator":0,"aws:globalaccelerator/customRoutingEndpointGroup:CustomRoutingEndpointGroup":0,"aws:globalaccelerator/customRoutingListener:CustomRoutingListener":0,"aws:globalaccelerator/endpointGroup:EndpointGroup":0,"aws:globalaccelerator/listener:Listener":0,"aws:glue/catalogDatabase:CatalogDatabase":0,"aws:glue/catalogTable:CatalogTable":0,"aws:glue/catalogTableOptimizer:CatalogTableOptimizer":1,"aws:glue/classifier:Classifier":0,"aws:glue/connection:Connection":0,"aws:glue/crawler:Crawler":0,"aws:glue/dataCatalogEncryptionSettings:DataCatalogEncryptionSettings":0,"aws:glue/dataQualityRuleset:DataQualityRuleset":0,"aws:glue/devEndpoint:DevEndpoint":0,"aws:glue/job:Job":0,"aws:glue/mLTransform:MLTransform":0,"aws:glue/partition:Partition":0,"aws:glue/partitionIndex:PartitionIndex":0,"aws:glue/registry:Registry":0,"aws:glue/resourcePolicy:ResourcePolicy":0,"aws:glue/schema:Schema":0,"aws:glue/securityConfiguration:SecurityConfiguration":0,"aws:glue/trigger:Trigger":0,"aws:glue/userDefinedFunction:UserDefinedFunction":0,"aws:glue/workflow:Workflow":0,"aws:grafana/licenseAssociation:LicenseAssociation":0,"aws:grafana/roleAssociation:RoleAssociation":0,"aws:grafana/workspace:Workspace":0,"aws:grafana/workspaceApiKey:WorkspaceApiKey":0,"aws:grafana/workspaceSamlConfiguration:WorkspaceSamlConfiguration":0,"aws:grafana/workspaceServiceAccount:WorkspaceServiceAccount":1,"aws:grafana/workspaceServiceAccountToken:WorkspaceServiceAccountToken":1,"aws:guardduty/detector:Detector":0,"aws:guardduty/detectorFeature:DetectorFeature":0,"aws:guardduty/filter:Filter":0,"aws:guardduty/iPSet:IPSet":0,"aws:guardduty/inviteAccepter:InviteAccepter":0,"aws:guardduty/malwareProtectionPlan:MalwareProtectionPlan":1,"aws:guardduty/member:Member":0,"aws:guardduty/organizationAdminAccount:OrganizationAdminAccount":0,"aws:guardduty/organizationConfiguration:OrganizationConfiguration":0,"aws:guardduty/organizationConfigurationFeature:OrganizationConfigurationFeature":0,"aws:guardduty/publishingDestination:PublishingDestination":0,"aws:guardduty/threatIntelSet:ThreatIntelSet":0,"aws:iam/accessKey:AccessKey":0,"aws:iam/accountAlias:AccountAlias":0,"aws:iam/accountPasswordPolicy:AccountPasswordPolicy":0,"aws:iam/group:Group":0,"aws:iam/groupMembership:GroupMembership":0,"aws:iam/groupPoliciesExclusive:GroupPoliciesExclusive":1,"aws:iam/groupPolicy:GroupPolicy":0,"aws:iam/groupPolicyAttachment:GroupPolicyAttachment":0,"aws:iam/groupPolicyAttachmentsExclusive:GroupPolicyAttachmentsExclusive":1,"aws:iam/instanceProfile:InstanceProfile":0,"aws:iam/openIdConnectProvider:OpenIdConnectProvider":0,"aws:iam/organizationsFeatures:OrganizationsFeatures":1,"aws:iam/policy:Policy":0,"aws:iam/policyAttachment:PolicyAttachment":0,"aws:iam/role:Role":0,"aws:iam/rolePoliciesExclusive:RolePoliciesExclusive":1,"aws:iam/rolePolicy:RolePolicy":0,"aws:iam/rolePolicyAttachment:RolePolicyAttachment":0,"aws:iam/rolePolicyAttachmentsExclusive:RolePolicyAttachmentsExclusive":1,"aws:iam/samlProvider:SamlProvider":0,"aws:iam/securityTokenServicePreferences:SecurityTokenServicePreferences":0,"aws:iam/serverCertificate:ServerCertificate":0,"aws:iam/serviceLinkedRole:ServiceLinkedRole":0,"aws:iam/serviceSpecificCredential:ServiceSpecificCredential":0,"aws:iam/signingCertificate:SigningCertificate":0,"aws:iam/sshKey:SshKey":0,"aws:iam/user:User":0,"aws:iam/userGroupMembership:UserGroupMembership":0,"aws:iam/userLoginProfile:UserLoginProfile":0,"aws:iam/userPoliciesExclusive:UserPoliciesExclusive":1,"aws:iam/userPolicy:UserPolicy":0,"aws:iam/userPolicyAttachment:UserPolicyAttachment":0,"aws:iam/userPolicyAttachmentsExclusive:UserPolicyAttachmentsExclusive":1,"aws:iam/virtualMfaDevice:VirtualMfaDevice":0,"aws:identitystore/group:Group":0,"aws:identitystore/groupMembership:GroupMembership":0,"aws:identitystore/user:User":0,"aws:imagebuilder/component:Component":0,"aws:imagebuilder/containerRecipe:ContainerRecipe":0,"aws:imagebuilder/distributionConfiguration:DistributionConfiguration":0,"aws:imagebuilder/image:Image":0,"aws:imagebuilder/imagePipeline:ImagePipeline":0,"aws:imagebuilder/imageRecipe:ImageRecipe":0,"aws:imagebuilder/infrastructureConfiguration:InfrastructureConfiguration":0,"aws:imagebuilder/lifecyclePolicy:LifecyclePolicy":1,"aws:imagebuilder/workflow:Workflow":0,"aws:inspector/assessmentTarget:AssessmentTarget":0,"aws:inspector/assessmentTemplate:AssessmentTemplate":0,"aws:inspector/resourceGroup:ResourceGroup":0,"aws:inspector2/delegatedAdminAccount:DelegatedAdminAccount":0,"aws:inspector2/enabler:Enabler":0,"aws:inspector2/memberAssociation:MemberAssociation":0,"aws:inspector2/organizationConfiguration:OrganizationConfiguration":0,"aws:iot/authorizer:Authorizer":0,"aws:iot/billingGroup:BillingGroup":1,"aws:iot/caCertificate:CaCertificate":0,"aws:iot/certificate:Certificate":0,"aws:iot/domainConfiguration:DomainConfiguration":0,"aws:iot/eventConfigurations:EventConfigurations":0,"aws:iot/indexingConfiguration:IndexingConfiguration":0,"aws:iot/loggingOptions:LoggingOptions":0,"aws:iot/policy:Policy":0,"aws:iot/policyAttachment:PolicyAttachment":0,"aws:iot/provisioningTemplate:ProvisioningTemplate":0,"aws:iot/roleAlias:RoleAlias":0,"aws:iot/thing:Thing":0,"aws:iot/thingGroup:ThingGroup":0,"aws:iot/thingGroupMembership:ThingGroupMembership":0,"aws:iot/thingPrincipalAttachment:ThingPrincipalAttachment":0,"aws:iot/thingType:ThingType":0,"aws:iot/topicRule:TopicRule":0,"aws:iot/topicRuleDestination:TopicRuleDestination":0,"aws:ivs/channel:Channel":0,"aws:ivs/playbackKeyPair:PlaybackKeyPair":0,"aws:ivs/recordingConfiguration:RecordingConfiguration":0,"aws:ivschat/loggingConfiguration:LoggingConfiguration":0,"aws:ivschat/room:Room":0,"aws:kendra/dataSource:DataSource":0,"aws:kendra/experience:Experience":0,"aws:kendra/faq:Faq":0,"aws:kendra/index:Index":0,"aws:kendra/querySuggestionsBlockList:QuerySuggestionsBlockList":0,"aws:kendra/thesaurus:Thesaurus":0,"aws:keyspaces/keyspace:Keyspace":0,"aws:keyspaces/table:Table":0,"aws:kinesis/analyticsApplication:AnalyticsApplication":0,"aws:kinesis/firehoseDeliveryStream:FirehoseDeliveryStream":0,"aws:kinesis/resourcePolicy:ResourcePolicy":1,"aws:kinesis/stream:Stream":0,"aws:kinesis/streamConsumer:StreamConsumer":0,"aws:kinesis/videoStream:VideoStream":0,"aws:kinesisanalyticsv2/application:Application":0,"aws:kinesisanalyticsv2/applicationSnapshot:ApplicationSnapshot":0,"aws:kms/alias:Alias":0,"aws:kms/ciphertext:Ciphertext":0,"aws:kms/customKeyStore:CustomKeyStore":0,"aws:kms/externalKey:ExternalKey":0,"aws:kms/grant:Grant":0,"aws:kms/key:Key":0,"aws:kms/keyPolicy:KeyPolicy":0,"aws:kms/replicaExternalKey:ReplicaExternalKey":0,"aws:kms/replicaKey:ReplicaKey":0,"aws:lakeformation/dataCellsFilter:DataCellsFilter":1,"aws:lakeformation/dataLakeSettings:DataLakeSettings":0,"aws:lakeformation/lfTag:LfTag":0,"aws:lakeformation/permissions:Permissions":0,"aws:lakeformation/resource:Resource":0,"aws:lakeformation/resourceLfTag:ResourceLfTag":1,"aws:lakeformation/resourceLfTags:ResourceLfTags":0,"aws:lambda/alias:Alias":0,"aws:lambda/codeSigningConfig:CodeSigningConfig":0,"aws:lambda/eventSourceMapping:EventSourceMapping":0,"aws:lambda/function:Function":0,"aws:lambda/functionEventInvokeConfig:FunctionEventInvokeConfig":0,"aws:lambda/functionRecursionConfig:FunctionRecursionConfig":1,"aws:lambda/functionUrl:FunctionUrl":0,"aws:lambda/invocation:Invocation":0,"aws:lambda/layerVersion:LayerVersion":0,"aws:lambda/layerVersionPermission:LayerVersionPermission":0,"aws:lambda/permission:Permission":0,"aws:lambda/provisionedConcurrencyConfig:ProvisionedConcurrencyConfig":0,"aws:lambda/runtimeManagementConfig:RuntimeManagementConfig":1,"aws:lb/listener:Listener":0,"aws:lb/listenerCertificate:ListenerCertificate":0,"aws:lb/listenerRule:ListenerRule":0,"aws:lb/loadBalancer:LoadBalancer":0,"aws:lb/targetGroup:TargetGroup":0,"aws:lb/targetGroupAttachment:TargetGroupAttachment":0,"aws:lb/trustStore:TrustStore":0,"aws:lb/trustStoreRevocation:TrustStoreRevocation":0,"aws:lex/bot:Bot":0,"aws:lex/botAlias:BotAlias":0,"aws:lex/intent:Intent":0,"aws:lex/slotType:SlotType":0,"aws:lex/v2modelsBot:V2modelsBot":1,"aws:lex/v2modelsBotLocale:V2modelsBotLocale":1,"aws:lex/v2modelsBotVersion:V2modelsBotVersion":1,"aws:lex/v2modelsIntent:V2modelsIntent":1,"aws:lex/v2modelsSlot:V2modelsSlot":1,"aws:lex/v2modelsSlotType:V2modelsSlotType":1,"aws:licensemanager/association:Association":0,"aws:licensemanager/licenseConfiguration:LicenseConfiguration":0,"aws:licensemanager/licenseGrant:LicenseGrant":0,"aws:licensemanager/licenseGrantAccepter:LicenseGrantAccepter":0,"aws:lightsail/bucket:Bucket":0,"aws:lightsail/bucketAccessKey:BucketAccessKey":0,"aws:lightsail/bucketResourceAccess:BucketResourceAccess":0,"aws:lightsail/certificate:Certificate":0,"aws:lightsail/containerService:ContainerService":0,"aws:lightsail/containerServiceDeploymentVersion:ContainerServiceDeploymentVersion":0,"aws:lightsail/database:Database":0,"aws:lightsail/disk:Disk":0,"aws:lightsail/disk_attachment:Disk_attachment":0,"aws:lightsail/distribution:Distribution":0,"aws:lightsail/domain:Domain":0,"aws:lightsail/domainEntry:DomainEntry":0,"aws:lightsail/instance:Instance":0,"aws:lightsail/instancePublicPorts:InstancePublicPorts":0,"aws:lightsail/keyPair:KeyPair":0,"aws:lightsail/lb:Lb":0,"aws:lightsail/lbAttachment:LbAttachment":0,"aws:lightsail/lbCertificate:LbCertificate":0,"aws:lightsail/lbCertificateAttachment:LbCertificateAttachment":0,"aws:lightsail/lbHttpsRedirectionPolicy:LbHttpsRedirectionPolicy":0,"aws:lightsail/lbStickinessPolicy:LbStickinessPolicy":0,"aws:lightsail/staticIp:StaticIp":0,"aws:lightsail/staticIpAttachment:StaticIpAttachment":0,"aws:location/geofenceCollection:GeofenceCollection":0,"aws:location/map:Map":0,"aws:location/placeIndex:PlaceIndex":0,"aws:location/routeCalculation:RouteCalculation":0,"aws:location/tracker:Tracker":0,"aws:location/trackerAssociation:TrackerAssociation":0,"aws:m2/application:Application":1,"aws:m2/deployment:Deployment":1,"aws:m2/environment:Environment":1,"aws:macie/customDataIdentifier:CustomDataIdentifier":0,"aws:macie/findingsFilter:FindingsFilter":0,"aws:macie2/account:Account":0,"aws:macie2/classificationExportConfiguration:ClassificationExportConfiguration":0,"aws:macie2/classificationJob:ClassificationJob":0,"aws:macie2/invitationAccepter:InvitationAccepter":0,"aws:macie2/member:Member":0,"aws:macie2/organizationAdminAccount:OrganizationAdminAccount":0,"aws:mediaconvert/queue:Queue":0,"aws:medialive/channel:Channel":0,"aws:medialive/input:Input":0,"aws:medialive/inputSecurityGroup:InputSecurityGroup":0,"aws:medialive/multiplex:Multiplex":0,"aws:medialive/multiplexProgram:MultiplexProgram":1,"aws:mediapackage/channel:Channel":0,"aws:mediastore/container:Container":0,"aws:mediastore/containerPolicy:ContainerPolicy":0,"aws:memorydb/acl:Acl":0,"aws:memorydb/cluster:Cluster":0,"aws:memorydb/multiRegionCluster:MultiRegionCluster":1,"aws:memorydb/parameterGroup:ParameterGroup":0,"aws:memorydb/snapshot:Snapshot":0,"aws:memorydb/subnetGroup:SubnetGroup":0,"aws:memorydb/user:User":0,"aws:mq/broker:Broker":0,"aws:mq/configuration:Configuration":0,"aws:msk/cluster:Cluster":0,"aws:msk/clusterPolicy:ClusterPolicy":0,"aws:msk/configuration:Configuration":0,"aws:msk/replicator:Replicator":0,"aws:msk/scramSecretAssociation:ScramSecretAssociation":0,"aws:msk/serverlessCluster:ServerlessCluster":0,"aws:msk/singleScramSecretAssociation:SingleScramSecretAssociation":1,"aws:msk/vpcConnection:VpcConnection":0,"aws:mskconnect/connector:Connector":0,"aws:mskconnect/customPlugin:CustomPlugin":0,"aws:mskconnect/workerConfiguration:WorkerConfiguration":0,"aws:mwaa/environment:Environment":0,"aws:neptune/cluster:Cluster":0,"aws:neptune/clusterEndpoint:ClusterEndpoint":0,"aws:neptune/clusterInstance:ClusterInstance":0,"aws:neptune/clusterParameterGroup:ClusterParameterGroup":0,"aws:neptune/clusterSnapshot:ClusterSnapshot":0,"aws:neptune/eventSubscription:EventSubscription":0,"aws:neptune/globalCluster:GlobalCluster":0,"aws:neptune/parameterGroup:ParameterGroup":0,"aws:neptune/subnetGroup:SubnetGroup":0,"aws:networkfirewall/firewall:Firewall":0,"aws:networkfirewall/firewallPolicy:FirewallPolicy":0,"aws:networkfirewall/loggingConfiguration:LoggingConfiguration":0,"aws:networkfirewall/resourcePolicy:ResourcePolicy":0,"aws:networkfirewall/ruleGroup:RuleGroup":0,"aws:networkfirewall/tlsInspectionConfiguration:TlsInspectionConfiguration":1,"aws:networkmanager/attachmentAccepter:AttachmentAccepter":0,"aws:networkmanager/connectAttachment:ConnectAttachment":0,"aws:networkmanager/connectPeer:ConnectPeer":0,"aws:networkmanager/connection:Connection":0,"aws:networkmanager/coreNetwork:CoreNetwork":0,"aws:networkmanager/coreNetworkPolicyAttachment:CoreNetworkPolicyAttachment":0,"aws:networkmanager/customerGatewayAssociation:CustomerGatewayAssociation":0,"aws:networkmanager/device:Device":0,"aws:networkmanager/dxGatewayAttachment:DxGatewayAttachment":1,"aws:networkmanager/globalNetwork:GlobalNetwork":0,"aws:networkmanager/link:Link":0,"aws:networkmanager/linkAssociation:LinkAssociation":0,"aws:networkmanager/site:Site":0,"aws:networkmanager/siteToSiteVpnAttachment:SiteToSiteVpnAttachment":0,"aws:networkmanager/transitGatewayConnectPeerAssociation:TransitGatewayConnectPeerAssociation":0,"aws:networkmanager/transitGatewayPeering:TransitGatewayPeering":0,"aws:networkmanager/transitGatewayRegistration:TransitGatewayRegistration":0,"aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment":0,"aws:networkmanager/vpcAttachment:VpcAttachment":0,"aws:networkmonitor/monitor:Monitor":1,"aws:networkmonitor/probe:Probe":1,"aws:oam/link:Link":0,"aws:oam/sink:Sink":0,"aws:oam/sinkPolicy:SinkPolicy":0,"aws:opensearch/authorizeVpcEndpointAccess:AuthorizeVpcEndpointAccess":1,"aws:opensearch/domain:Domain":0,"aws:opensearch/domainPolicy:DomainPolicy":0,"aws:opensearch/domainSamlOptions:DomainSamlOptions":0,"aws:opensearch/inboundConnectionAccepter:InboundConnectionAccepter":0,"aws:opensearch/outboundConnection:OutboundConnection":0,"aws:opensearch/package:Package":0,"aws:opensearch/packageAssociation:PackageAssociation":0,"aws:opensearch/serverlessAccessPolicy:ServerlessAccessPolicy":1,"aws:opensearch/serverlessCollection:ServerlessCollection":1,"aws:opensearch/serverlessLifecyclePolicy:ServerlessLifecyclePolicy":1,"aws:opensearch/serverlessSecurityConfig:ServerlessSecurityConfig":1,"aws:opensearch/serverlessSecurityPolicy:ServerlessSecurityPolicy":1,"aws:opensearch/serverlessVpcEndpoint:ServerlessVpcEndpoint":1,"aws:opensearch/vpcEndpoint:VpcEndpoint":0,"aws:opensearchingest/pipeline:Pipeline":1,"aws:opsworks/application:Application":0,"aws:opsworks/customLayer:CustomLayer":0,"aws:opsworks/ecsClusterLayer:EcsClusterLayer":0,"aws:opsworks/gangliaLayer:GangliaLayer":0,"aws:opsworks/haproxyLayer:HaproxyLayer":0,"aws:opsworks/instance:Instance":0,"aws:opsworks/javaAppLayer:JavaAppLayer":0,"aws:opsworks/memcachedLayer:MemcachedLayer":0,"aws:opsworks/mysqlLayer:MysqlLayer":0,"aws:opsworks/nodejsAppLayer:NodejsAppLayer":0,"aws:opsworks/permission:Permission":0,"aws:opsworks/phpAppLayer:PhpAppLayer":0,"aws:opsworks/railsAppLayer:RailsAppLayer":0,"aws:opsworks/rdsDbInstance:RdsDbInstance":0,"aws:opsworks/stack:Stack":0,"aws:opsworks/staticWebLayer:StaticWebLayer":0,"aws:opsworks/userProfile:UserProfile":0,"aws:organizations/account:Account":0,"aws:organizations/delegatedAdministrator:DelegatedAdministrator":0,"aws:organizations/organization:Organization":0,"aws:organizations/organizationalUnit:OrganizationalUnit":0,"aws:organizations/policy:Policy":0,"aws:organizations/policyAttachment:PolicyAttachment":0,"aws:organizations/resourcePolicy:ResourcePolicy":0,"aws:paymentcryptography/key:Key":1,"aws:paymentcryptography/keyAlias:KeyAlias":1,"aws:pinpoint/admChannel:AdmChannel":0,"aws:pinpoint/apnsChannel:ApnsChannel":0,"aws:pinpoint/apnsSandboxChannel:ApnsSandboxChannel":0,"aws:pinpoint/apnsVoipChannel:ApnsVoipChannel":0,"aws:pinpoint/apnsVoipSandboxChannel:ApnsVoipSandboxChannel":0,"aws:pinpoint/app:App":0,"aws:pinpoint/baiduChannel:BaiduChannel":0,"aws:pinpoint/emailChannel:EmailChannel":0,"aws:pinpoint/emailTemplate:EmailTemplate":1,"aws:pinpoint/eventStream:EventStream":0,"aws:pinpoint/gcmChannel:GcmChannel":0,"aws:pinpoint/smsChannel:SmsChannel":0,"aws:pinpoint/smsvoicev2ConfigurationSet:Smsvoicev2ConfigurationSet":1,"aws:pinpoint/smsvoicev2OptOutList:Smsvoicev2OptOutList":1,"aws:pinpoint/smsvoicev2PhoneNumber:Smsvoicev2PhoneNumber":1,"aws:pipes/pipe:Pipe":0,"aws:qldb/ledger:Ledger":0,"aws:qldb/stream:Stream":0,"aws:quicksight/accountSubscription:AccountSubscription":0,"aws:quicksight/analysis:Analysis":0,"aws:quicksight/dashboard:Dashboard":0,"aws:quicksight/dataSet:DataSet":0,"aws:quicksight/dataSource:DataSource":0,"aws:quicksight/folder:Folder":0,"aws:quicksight/folderMembership:FolderMembership":1,"aws:quicksight/group:Group":0,"aws:quicksight/groupMembership:GroupMembership":0,"aws:quicksight/iamPolicyAssignment:IamPolicyAssignment":1,"aws:quicksight/ingestion:Ingestion":1,"aws:quicksight/namespace:Namespace":1,"aws:quicksight/refreshSchedule:RefreshSchedule":1,"aws:quicksight/template:Template":0,"aws:quicksight/templateAlias:TemplateAlias":1,"aws:quicksight/theme:Theme":0,"aws:quicksight/user:User":0,"aws:quicksight/vpcConnection:VpcConnection":1,"aws:ram/principalAssociation:PrincipalAssociation":0,"aws:ram/resourceAssociation:ResourceAssociation":0,"aws:ram/resourceShare:ResourceShare":0,"aws:ram/resourceShareAccepter:ResourceShareAccepter":0,"aws:ram/sharingWithOrganization:SharingWithOrganization":0,"aws:rbin/rule:Rule":0,"aws:rds/certificate:Certificate":0,"aws:rds/cluster:Cluster":0,"aws:rds/clusterActivityStream:ClusterActivityStream":0,"aws:rds/clusterEndpoint:ClusterEndpoint":0,"aws:rds/clusterInstance:ClusterInstance":0,"aws:rds/clusterParameterGroup:ClusterParameterGroup":0,"aws:rds/clusterRoleAssociation:ClusterRoleAssociation":0,"aws:rds/clusterSnapshot:ClusterSnapshot":0,"aws:rds/clusterSnapshotCopy:ClusterSnapshotCopy":1,"aws:rds/customDbEngineVersion:CustomDbEngineVersion":0,"aws:rds/eventSubscription:EventSubscription":0,"aws:rds/exportTask:ExportTask":1,"aws:rds/globalCluster:GlobalCluster":0,"aws:rds/instance:Instance":0,"aws:rds/instanceAutomatedBackupsReplication:InstanceAutomatedBackupsReplication":0,"aws:rds/instanceDesiredState:InstanceDesiredState":1,"aws:rds/integration:Integration":1,"aws:rds/optionGroup:OptionGroup":0,"aws:rds/parameterGroup:ParameterGroup":0,"aws:rds/proxy:Proxy":0,"aws:rds/proxyDefaultTargetGroup:ProxyDefaultTargetGroup":0,"aws:rds/proxyEndpoint:ProxyEndpoint":0,"aws:rds/proxyTarget:ProxyTarget":0,"aws:rds/reservedInstance:ReservedInstance":0,"aws:rds/roleAssociation:RoleAssociation":0,"aws:rds/snapshot:Snapshot":0,"aws:rds/snapshotCopy:SnapshotCopy":0,"aws:rds/subnetGroup:SubnetGroup":0,"aws:redshift/authenticationProfile:AuthenticationProfile":0,"aws:redshift/cluster:Cluster":0,"aws:redshift/clusterIamRoles:ClusterIamRoles":0,"aws:redshift/clusterSnapshot:ClusterSnapshot":0,"aws:redshift/dataShareAuthorization:DataShareAuthorization":1,"aws:redshift/dataShareConsumerAssociation:DataShareConsumerAssociation":1,"aws:redshift/endpointAccess:EndpointAccess":0,"aws:redshift/endpointAuthorization:EndpointAuthorization":0,"aws:redshift/eventSubscription:EventSubscription":0,"aws:redshift/hsmClientCertificate:HsmClientCertificate":0,"aws:redshift/hsmConfiguration:HsmConfiguration":0,"aws:redshift/logging:Logging":1,"aws:redshift/parameterGroup:ParameterGroup":0,"aws:redshift/partner:Partner":0,"aws:redshift/resourcePolicy:ResourcePolicy":0,"aws:redshift/scheduledAction:ScheduledAction":0,"aws:redshift/snapshotCopy:SnapshotCopy":1,"aws:redshift/snapshotCopyGrant:SnapshotCopyGrant":0,"aws:redshift/snapshotSchedule:SnapshotSchedule":0,"aws:redshift/snapshotScheduleAssociation:SnapshotScheduleAssociation":0,"aws:redshift/subnetGroup:SubnetGroup":0,"aws:redshift/usageLimit:UsageLimit":0,"aws:redshiftdata/statement:Statement":0,"aws:redshiftserverless/customDomainAssociation:CustomDomainAssociation":1,"aws:redshiftserverless/endpointAccess:EndpointAccess":0,"aws:redshiftserverless/namespace:Namespace":0,"aws:redshiftserverless/resourcePolicy:ResourcePolicy":0,"aws:redshiftserverless/snapshot:Snapshot":0,"aws:redshiftserverless/usageLimit:UsageLimit":0,"aws:redshiftserverless/workgroup:Workgroup":0,"aws:rekognition/collection:Collection":1,"aws:rekognition/project:Project":1,"aws:rekognition/streamProcessor:StreamProcessor":1,"aws:resiliencehub/resiliencyPolicy:ResiliencyPolicy":1,"aws:resourceexplorer/index:Index":1,"aws:resourceexplorer/view:View":1,"aws:resourcegroups/group:Group":0,"aws:resourcegroups/resource:Resource":0,"aws:rolesanywhere/profile:Profile":0,"aws:rolesanywhere/trustAnchor:TrustAnchor":0,"aws:route53/cidrCollection:CidrCollection":1,"aws:route53/cidrLocation:CidrLocation":1,"aws:route53/delegationSet:DelegationSet":0,"aws:route53/healthCheck:HealthCheck":0,"aws:route53/hostedZoneDnsSec:HostedZoneDnsSec":0,"aws:route53/keySigningKey:KeySigningKey":0,"aws:route53/profilesAssociation:ProfilesAssociation":1,"aws:route53/profilesProfile:ProfilesProfile":1,"aws:route53/profilesResourceAssociation:ProfilesResourceAssociation":1,"aws:route53/queryLog:QueryLog":0,"aws:route53/record:Record":0,"aws:route53/resolverConfig:ResolverConfig":0,"aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig":0,"aws:route53/resolverEndpoint:ResolverEndpoint":0,"aws:route53/resolverFirewallConfig:ResolverFirewallConfig":0,"aws:route53/resolverFirewallDomainList:ResolverFirewallDomainList":0,"aws:route53/resolverFirewallRule:ResolverFirewallRule":0,"aws:route53/resolverFirewallRuleGroup:ResolverFirewallRuleGroup":0,"aws:route53/resolverFirewallRuleGroupAssociation:ResolverFirewallRuleGroupAssociation":0,"aws:route53/resolverQueryLogConfig:ResolverQueryLogConfig":0,"aws:route53/resolverQueryLogConfigAssociation:ResolverQueryLogConfigAssociation":0,"aws:route53/resolverRule:ResolverRule":0,"aws:route53/resolverRuleAssociation:ResolverRuleAssociation":0,"aws:route53/trafficPolicy:TrafficPolicy":0,"aws:route53/trafficPolicyInstance:TrafficPolicyInstance":0,"aws:route53/vpcAssociationAuthorization:VpcAssociationAuthorization":0,"aws:route53/zone:Zone":0,"aws:route53/zoneAssociation:ZoneAssociation":0,"aws:route53domains/delegationSignerRecord:DelegationSignerRecord":1,"aws:route53domains/registeredDomain:RegisteredDomain":0,"aws:route53recoverycontrol/cluster:Cluster":0,"aws:route53recoverycontrol/controlPanel:ControlPanel":0,"aws:route53recoverycontrol/routingControl:RoutingControl":0,"aws:route53recoverycontrol/safetyRule:SafetyRule":0,"aws:route53recoveryreadiness/cell:Cell":0,"aws:route53recoveryreadiness/readinessCheck:ReadinessCheck":0,"aws:route53recoveryreadiness/recoveryGroup:RecoveryGroup":0,"aws:route53recoveryreadiness/resourceSet:ResourceSet":0,"aws:rum/appMonitor:AppMonitor":0,"aws:rum/metricsDestination:MetricsDestination":0,"aws:s3/accessPoint:AccessPoint":0,"aws:s3/accountPublicAccessBlock:AccountPublicAccessBlock":0,"aws:s3/analyticsConfiguration:AnalyticsConfiguration":0,"aws:s3/bucket:Bucket":0,"aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2":0,"aws:s3/bucketAclV2:BucketAclV2":0,"aws:s3/bucketCorsConfigurationV2:BucketCorsConfigurationV2":0,"aws:s3/bucketIntelligentTieringConfiguration:BucketIntelligentTieringConfiguration":0,"aws:s3/bucketLifecycleConfigurationV2:BucketLifecycleConfigurationV2":0,"aws:s3/bucketLoggingV2:BucketLoggingV2":0,"aws:s3/bucketMetric:BucketMetric":0,"aws:s3/bucketNotification:BucketNotification":0,"aws:s3/bucketObject:BucketObject":0,"aws:s3/bucketObjectLockConfigurationV2:BucketObjectLockConfigurationV2":0,"aws:s3/bucketObjectv2:BucketObjectv2":0,"aws:s3/bucketOwnershipControls:BucketOwnershipControls":0,"aws:s3/bucketPolicy:BucketPolicy":0,"aws:s3/bucketPublicAccessBlock:BucketPublicAccessBlock":0,"aws:s3/bucketReplicationConfig:BucketReplicationConfig":0,"aws:s3/bucketRequestPaymentConfigurationV2:BucketRequestPaymentConfigurationV2":0,"aws:s3/bucketServerSideEncryptionConfigurationV2:BucketServerSideEncryptionConfigurationV2":0,"aws:s3/bucketV2:BucketV2":0,"aws:s3/bucketVersioningV2:BucketVersioningV2":0,"aws:s3/bucketWebsiteConfigurationV2:BucketWebsiteConfigurationV2":0,"aws:s3/directoryBucket:DirectoryBucket":1,"aws:s3/inventory:Inventory":0,"aws:s3/objectCopy:ObjectCopy":0,"aws:s3control/accessGrant:AccessGrant":1,"aws:s3control/accessGrantsInstance:AccessGrantsInstance":1,"aws:s3control/accessGrantsInstanceResourcePolicy:AccessGrantsInstanceResourcePolicy":1,"aws:s3control/accessGrantsLocation:AccessGrantsLocation":1,"aws:s3control/accessPointPolicy:AccessPointPolicy":0,"aws:s3control/bucket:Bucket":0,"aws:s3control/bucketLifecycleConfiguration:BucketLifecycleConfiguration":0,"aws:s3control/bucketPolicy:BucketPolicy":0,"aws:s3control/multiRegionAccessPoint:MultiRegionAccessPoint":0,"aws:s3control/multiRegionAccessPointPolicy:MultiRegionAccessPointPolicy":0,"aws:s3control/objectLambdaAccessPoint:ObjectLambdaAccessPoint":0,"aws:s3control/objectLambdaAccessPointPolicy:ObjectLambdaAccessPointPolicy":0,"aws:s3control/storageLensConfiguration:StorageLensConfiguration":0,"aws:s3outposts/endpoint:Endpoint":0,"aws:s3tables/namespace:Namespace":1,"aws:s3tables/table:Table":1,"aws:s3tables/tableBucket:TableBucket":1,"aws:s3tables/tableBucketPolicy:TableBucketPolicy":1,"aws:s3tables/tablePolicy:TablePolicy":1,"aws:sagemaker/app:App":0,"aws:sagemaker/appImageConfig:AppImageConfig":0,"aws:sagemaker/codeRepository:CodeRepository":0,"aws:sagemaker/dataQualityJobDefinition:DataQualityJobDefinition":0,"aws:sagemaker/device:Device":0,"aws:sagemaker/deviceFleet:DeviceFleet":0,"aws:sagemaker/domain:Domain":0,"aws:sagemaker/endpoint:Endpoint":0,"aws:sagemaker/endpointConfiguration:EndpointConfiguration":0,"aws:sagemaker/featureGroup:FeatureGroup":0,"aws:sagemaker/flowDefinition:FlowDefinition":0,"aws:sagemaker/hub:Hub":0,"aws:sagemaker/humanTaskUI:HumanTaskUI":0,"aws:sagemaker/image:Image":0,"aws:sagemaker/imageVersion:ImageVersion":0,"aws:sagemaker/mlflowTrackingServer:MlflowTrackingServer":0,"aws:sagemaker/model:Model":0,"aws:sagemaker/modelPackageGroup:ModelPackageGroup":0,"aws:sagemaker/modelPackageGroupPolicy:ModelPackageGroupPolicy":0,"aws:sagemaker/monitoringSchedule:MonitoringSchedule":0,"aws:sagemaker/notebookInstance:NotebookInstance":0,"aws:sagemaker/notebookInstanceLifecycleConfiguration:NotebookInstanceLifecycleConfiguration":0,"aws:sagemaker/pipeline:Pipeline":0,"aws:sagemaker/project:Project":0,"aws:sagemaker/servicecatalogPortfolioStatus:ServicecatalogPortfolioStatus":0,"aws:sagemaker/space:Space":0,"aws:sagemaker/studioLifecycleConfig:StudioLifecycleConfig":0,"aws:sagemaker/userProfile:UserProfile":0,"aws:sagemaker/workforce:Workforce":0,"aws:sagemaker/workteam:Workteam":0,"aws:scheduler/schedule:Schedule":0,"aws:scheduler/scheduleGroup:ScheduleGroup":0,"aws:schemas/discoverer:Discoverer":0,"aws:schemas/registry:Registry":0,"aws:schemas/registryPolicy:RegistryPolicy":0,"aws:schemas/schema:Schema":0,"aws:secretsmanager/secret:Secret":0,"aws:secretsmanager/secretPolicy:SecretPolicy":0,"aws:secretsmanager/secretRotation:SecretRotation":0,"aws:secretsmanager/secretVersion:SecretVersion":0,"aws:securityhub/account:Account":0,"aws:securityhub/actionTarget:ActionTarget":0,"aws:securityhub/automationRule:AutomationRule":1,"aws:securityhub/configurationPolicy:ConfigurationPolicy":0,"aws:securityhub/configurationPolicyAssociation:ConfigurationPolicyAssociation":0,"aws:securityhub/findingAggregator:FindingAggregator":0,"aws:securityhub/insight:Insight":0,"aws:securityhub/inviteAccepter:InviteAccepter":0,"aws:securityhub/member:Member":0,"aws:securityhub/organizationAdminAccount:OrganizationAdminAccount":0,"aws:securityhub/organizationConfiguration:OrganizationConfiguration":0,"aws:securityhub/productSubscription:ProductSubscription":0,"aws:securityhub/standardsControl:StandardsControl":0,"aws:securityhub/standardsControlAssociation:StandardsControlAssociation":1,"aws:securityhub/standardsSubscription:StandardsSubscription":0,"aws:securitylake/awsLogSource:AwsLogSource":1,"aws:securitylake/customLogSource:CustomLogSource":1,"aws:securitylake/dataLake:DataLake":1,"aws:securitylake/subscriber:Subscriber":1,"aws:securitylake/subscriberNotification:SubscriberNotification":1,"aws:serverlessrepository/cloudFormationStack:CloudFormationStack":0,"aws:servicecatalog/appregistryApplication:AppregistryApplication":1,"aws:servicecatalog/appregistryAttributeGroup:AppregistryAttributeGroup":1,"aws:servicecatalog/appregistryAttributeGroupAssociation:AppregistryAttributeGroupAssociation":1,"aws:servicecatalog/budgetResourceAssociation:BudgetResourceAssociation":0,"aws:servicecatalog/constraint:Constraint":0,"aws:servicecatalog/organizationsAccess:OrganizationsAccess":0,"aws:servicecatalog/portfolio:Portfolio":0,"aws:servicecatalog/portfolioShare:PortfolioShare":0,"aws:servicecatalog/principalPortfolioAssociation:PrincipalPortfolioAssociation":0,"aws:servicecatalog/product:Product":0,"aws:servicecatalog/productPortfolioAssociation:ProductPortfolioAssociation":0,"aws:servicecatalog/provisionedProduct:ProvisionedProduct":0,"aws:servicecatalog/provisioningArtifact:ProvisioningArtifact":0,"aws:servicecatalog/serviceAction:ServiceAction":0,"aws:servicecatalog/tagOption:TagOption":0,"aws:servicecatalog/tagOptionResourceAssociation:TagOptionResourceAssociation":0,"aws:servicediscovery/httpNamespace:HttpNamespace":0,"aws:servicediscovery/instance:Instance":0,"aws:servicediscovery/privateDnsNamespace:PrivateDnsNamespace":0,"aws:servicediscovery/publicDnsNamespace:PublicDnsNamespace":0,"aws:servicediscovery/service:Service":0,"aws:servicequotas/serviceQuota:ServiceQuota":0,"aws:servicequotas/template:Template":1,"aws:servicequotas/templateAssociation:TemplateAssociation":1,"aws:ses/activeReceiptRuleSet:ActiveReceiptRuleSet":0,"aws:ses/configurationSet:ConfigurationSet":0,"aws:ses/domainDkim:DomainDkim":0,"aws:ses/domainIdentity:DomainIdentity":0,"aws:ses/domainIdentityVerification:DomainIdentityVerification":0,"aws:ses/emailIdentity:EmailIdentity":0,"aws:ses/eventDestination:EventDestination":0,"aws:ses/identityNotificationTopic:IdentityNotificationTopic":0,"aws:ses/identityPolicy:IdentityPolicy":0,"aws:ses/mailFrom:MailFrom":0,"aws:ses/receiptFilter:ReceiptFilter":0,"aws:ses/receiptRule:ReceiptRule":0,"aws:ses/receiptRuleSet:ReceiptRuleSet":0,"aws:ses/template:Template":0,"aws:sesv2/accountSuppressionAttributes:AccountSuppressionAttributes":1,"aws:sesv2/accountVdmAttributes:AccountVdmAttributes":0,"aws:sesv2/configurationSet:ConfigurationSet":0,"aws:sesv2/configurationSetEventDestination:ConfigurationSetEventDestination":0,"aws:sesv2/contactList:ContactList":0,"aws:sesv2/dedicatedIpAssignment:DedicatedIpAssignment":0,"aws:sesv2/dedicatedIpPool:DedicatedIpPool":0,"aws:sesv2/emailIdentity:EmailIdentity":0,"aws:sesv2/emailIdentityFeedbackAttributes:EmailIdentityFeedbackAttributes":0,"aws:sesv2/emailIdentityMailFromAttributes:EmailIdentityMailFromAttributes":0,"aws:sesv2/emailIdentityPolicy:EmailIdentityPolicy":0,"aws:sfn/activity:Activity":0,"aws:sfn/alias:Alias":0,"aws:sfn/stateMachine:StateMachine":0,"aws:shield/applicationLayerAutomaticResponse:ApplicationLayerAutomaticResponse":1,"aws:shield/drtAccessLogBucketAssociation:DrtAccessLogBucketAssociation":1,"aws:shield/drtAccessRoleArnAssociation:DrtAccessRoleArnAssociation":1,"aws:shield/proactiveEngagement:ProactiveEngagement":1,"aws:shield/protection:Protection":0,"aws:shield/protectionGroup:ProtectionGroup":0,"aws:shield/protectionHealthCheckAssociation:ProtectionHealthCheckAssociation":0,"aws:shield/subscription:Subscription":1,"aws:signer/signingJob:SigningJob":0,"aws:signer/signingProfile:SigningProfile":0,"aws:signer/signingProfilePermission:SigningProfilePermission":0,"aws:simpledb/domain:Domain":1,"aws:sns/dataProtectionPolicy:DataProtectionPolicy":0,"aws:sns/platformApplication:PlatformApplication":0,"aws:sns/smsPreferences:SmsPreferences":0,"aws:sns/topic:Topic":0,"aws:sns/topicPolicy:TopicPolicy":0,"aws:sns/topicSubscription:TopicSubscription":0,"aws:sqs/queue:Queue":0,"aws:sqs/queuePolicy:QueuePolicy":0,"aws:sqs/redriveAllowPolicy:RedriveAllowPolicy":0,"aws:sqs/redrivePolicy:RedrivePolicy":0,"aws:ssm/activation:Activation":0,"aws:ssm/association:Association":0,"aws:ssm/contactsRotation:ContactsRotation":1,"aws:ssm/defaultPatchBaseline:DefaultPatchBaseline":0,"aws:ssm/document:Document":0,"aws:ssm/maintenanceWindow:MaintenanceWindow":0,"aws:ssm/maintenanceWindowTarget:MaintenanceWindowTarget":0,"aws:ssm/maintenanceWindowTask:MaintenanceWindowTask":0,"aws:ssm/parameter:Parameter":0,"aws:ssm/patchBaseline:PatchBaseline":0,"aws:ssm/patchGroup:PatchGroup":0,"aws:ssm/quicksetupConfigurationManager:QuicksetupConfigurationManager":1,"aws:ssm/resourceDataSync:ResourceDataSync":0,"aws:ssm/serviceSetting:ServiceSetting":0,"aws:ssmcontacts/contact:Contact":0,"aws:ssmcontacts/contactChannel:ContactChannel":0,"aws:ssmcontacts/plan:Plan":0,"aws:ssmincidents/replicationSet:ReplicationSet":0,"aws:ssmincidents/responsePlan:ResponsePlan":0,"aws:ssoadmin/accountAssignment:AccountAssignment":0,"aws:ssoadmin/application:Application":1,"aws:ssoadmin/applicationAccessScope:ApplicationAccessScope":1,"aws:ssoadmin/applicationAssignment:ApplicationAssignment":1,"aws:ssoadmin/applicationAssignmentConfiguration:ApplicationAssignmentConfiguration":1,"aws:ssoadmin/customerManagedPolicyAttachment:CustomerManagedPolicyAttachment":0,"aws:ssoadmin/instanceAccessControlAttributes:InstanceAccessControlAttributes":0,"aws:ssoadmin/managedPolicyAttachment:ManagedPolicyAttachment":0,"aws:ssoadmin/permissionSet:PermissionSet":0,"aws:ssoadmin/permissionSetInlinePolicy:PermissionSetInlinePolicy":0,"aws:ssoadmin/permissionsBoundaryAttachment:PermissionsBoundaryAttachment":0,"aws:ssoadmin/trustedTokenIssuer:TrustedTokenIssuer":1,"aws:storagegateway/cache:Cache":0,"aws:storagegateway/cachesIscsiVolume:CachesIscsiVolume":0,"aws:storagegateway/fileSystemAssociation:FileSystemAssociation":0,"aws:storagegateway/gateway:Gateway":0,"aws:storagegateway/nfsFileShare:NfsFileShare":0,"aws:storagegateway/smbFileShare:SmbFileShare":0,"aws:storagegateway/storedIscsiVolume:StoredIscsiVolume":0,"aws:storagegateway/tapePool:TapePool":0,"aws:storagegateway/uploadBuffer:UploadBuffer":0,"aws:storagegateway/workingStorage:WorkingStorage":0,"aws:swf/domain:Domain":0,"aws:synthetics/canary:Canary":0,"aws:synthetics/group:Group":0,"aws:synthetics/groupAssociation:GroupAssociation":0,"aws:timestreaminfluxdb/dbInstance:DbInstance":1,"aws:timestreamwrite/database:Database":0,"aws:timestreamwrite/table:Table":0,"aws:transcribe/languageModel:LanguageModel":0,"aws:transcribe/medicalVocabulary:MedicalVocabulary":0,"aws:transcribe/vocabulary:Vocabulary":0,"aws:transcribe/vocabularyFilter:VocabularyFilter":0,"aws:transfer/access:Access":0,"aws:transfer/agreement:Agreement":0,"aws:transfer/certificate:Certificate":0,"aws:transfer/connector:Connector":0,"aws:transfer/profile:Profile":0,"aws:transfer/server:Server":0,"aws:transfer/sshKey:SshKey":0,"aws:transfer/tag:Tag":0,"aws:transfer/user:User":0,"aws:transfer/workflow:Workflow":0,"aws:verifiedaccess/endpoint:Endpoint":0,"aws:verifiedaccess/group:Group":0,"aws:verifiedaccess/instance:Instance":0,"aws:verifiedaccess/instanceLoggingConfiguration:InstanceLoggingConfiguration":0,"aws:verifiedaccess/instanceTrustProviderAttachment:InstanceTrustProviderAttachment":0,"aws:verifiedaccess/trustProvider:TrustProvider":0,"aws:verifiedpermissions/identitySource:IdentitySource":1,"aws:verifiedpermissions/policy:Policy":1,"aws:verifiedpermissions/policyStore:PolicyStore":1,"aws:verifiedpermissions/policyTemplate:PolicyTemplate":1,"aws:verifiedpermissions/schema:Schema":1,"aws:vpc/endpointPrivateDns:EndpointPrivateDns":1,"aws:vpc/endpointServicePrivateDnsVerification:EndpointServicePrivateDnsVerification":1,"aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule":1,"aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule":1,"aws:vpc/securityGroupVpcAssociation:SecurityGroupVpcAssociation":1,"aws:vpclattice/accessLogSubscription:AccessLogSubscription":0,"aws:vpclattice/authPolicy:AuthPolicy":0,"aws:vpclattice/listener:Listener":0,"aws:vpclattice/listenerRule:ListenerRule":0,"aws:vpclattice/resourcePolicy:ResourcePolicy":0,"aws:vpclattice/service:Service":0,"aws:vpclattice/serviceNetwork:ServiceNetwork":0,"aws:vpclattice/serviceNetworkServiceAssociation:ServiceNetworkServiceAssociation":0,"aws:vpclattice/serviceNetworkVpcAssociation:ServiceNetworkVpcAssociation":0,"aws:vpclattice/targetGroup:TargetGroup":0,"aws:vpclattice/targetGroupAttachment:TargetGroupAttachment":0,"aws:waf/byteMatchSet:ByteMatchSet":0,"aws:waf/geoMatchSet:GeoMatchSet":0,"aws:waf/ipSet:IpSet":0,"aws:waf/rateBasedRule:RateBasedRule":0,"aws:waf/regexMatchSet:RegexMatchSet":0,"aws:waf/regexPatternSet:RegexPatternSet":0,"aws:waf/rule:Rule":0,"aws:waf/ruleGroup:RuleGroup":0,"aws:waf/sizeConstraintSet:SizeConstraintSet":0,"aws:waf/sqlInjectionMatchSet:SqlInjectionMatchSet":0,"aws:waf/webAcl:WebAcl":0,"aws:waf/xssMatchSet:XssMatchSet":0,"aws:wafregional/byteMatchSet:ByteMatchSet":0,"aws:wafregional/geoMatchSet:GeoMatchSet":0,"aws:wafregional/ipSet:IpSet":0,"aws:wafregional/rateBasedRule:RateBasedRule":0,"aws:wafregional/regexMatchSet:RegexMatchSet":0,"aws:wafregional/regexPatternSet:RegexPatternSet":0,"aws:wafregional/rule:Rule":0,"aws:wafregional/ruleGroup:RuleGroup":0,"aws:wafregional/sizeConstraintSet:SizeConstraintSet":0,"aws:wafregional/sqlInjectionMatchSet:SqlInjectionMatchSet":0,"aws:wafregional/webAcl:WebAcl":0,"aws:wafregional/webAclAssociation:WebAclAssociation":0,"aws:wafregional/xssMatchSet:XssMatchSet":0,"aws:wafv2/ipSet:IpSet":0,"aws:wafv2/regexPatternSet:RegexPatternSet":0,"aws:wafv2/ruleGroup:RuleGroup":0,"aws:wafv2/webAcl:WebAcl":0,"aws:wafv2/webAclAssociation:WebAclAssociation":0,"aws:wafv2/webAclLoggingConfiguration:WebAclLoggingConfiguration":0,"aws:worklink/fleet:Fleet":0,"aws:worklink/websiteCertificateAuthorityAssociation:WebsiteCertificateAuthorityAssociation":0,"aws:workspaces/connectionAlias:ConnectionAlias":1,"aws:workspaces/directory:Directory":0,"aws:workspaces/ipGroup:IpGroup":0,"aws:workspaces/workspace:Workspace":0,"aws:xray/encryptionConfig:EncryptionConfig":0,"aws:xray/group:Group":0,"aws:xray/samplingRule:SamplingRule":0},"functions":{"aws:acm/getCertificate:getCertificate":0,"aws:acmpca/getCertificate:getCertificate":0,"aws:acmpca/getCertificateAuthority:getCertificateAuthority":0,"aws:alb/getListener:getListener":0,"aws:alb/getLoadBalancer:getLoadBalancer":0,"aws:alb/getTargetGroup:getTargetGroup":0,"aws:amp/getDefaultScraperConfiguration:getDefaultScraperConfiguration":1,"aws:amp/getWorkspace:getWorkspace":0,"aws:amp/getWorkspaces:getWorkspaces":0,"aws:apigateway/getAuthorizer:getAuthorizer":0,"aws:apigateway/getAuthorizers:getAuthorizers":0,"aws:apigateway/getDomainName:getDomainName":0,"aws:apigateway/getExport:getExport":0,"aws:apigateway/getKey:getKey":0,"aws:apigateway/getResource:getResource":0,"aws:apigateway/getRestApi:getRestApi":0,"aws:apigateway/getSdk:getSdk":0,"aws:apigateway/getVpcLink:getVpcLink":0,"aws:apigatewayv2/getApi:getApi":0,"aws:apigatewayv2/getApis:getApis":0,"aws:apigatewayv2/getExport:getExport":0,"aws:apigatewayv2/getVpcLink:getVpcLink":0,"aws:appconfig/getConfigurationProfile:getConfigurationProfile":0,"aws:appconfig/getConfigurationProfiles:getConfigurationProfiles":0,"aws:appconfig/getEnvironment:getEnvironment":0,"aws:appconfig/getEnvironments:getEnvironments":0,"aws:appintegrations/getEventIntegration:getEventIntegration":0,"aws:appmesh/getGatewayRoute:getGatewayRoute":0,"aws:appmesh/getMesh:getMesh":0,"aws:appmesh/getRoute:getRoute":0,"aws:appmesh/getVirtualGateway:getVirtualGateway":0,"aws:appmesh/getVirtualNode:getVirtualNode":0,"aws:appmesh/getVirtualRouter:getVirtualRouter":0,"aws:appmesh/getVirtualService:getVirtualService":0,"aws:apprunner/getHostedZoneId:getHostedZoneId":1,"aws:appstream/getImage:getImage":1,"aws:athena/getNamedQuery:getNamedQuery":0,"aws:auditmanager/getControl:getControl":1,"aws:auditmanager/getFramework:getFramework":1,"aws:autoscaling/getAmiIds:getAmiIds":0,"aws:autoscaling/getGroup:getGroup":0,"aws:backup/getFramework:getFramework":0,"aws:backup/getPlan:getPlan":0,"aws:backup/getReportPlan:getReportPlan":0,"aws:backup/getSelection:getSelection":0,"aws:backup/getVault:getVault":0,"aws:batch/getComputeEnvironment:getComputeEnvironment":0,"aws:batch/getJobDefinition:getJobDefinition":1,"aws:batch/getJobQueue:getJobQueue":0,"aws:batch/getSchedulingPolicy:getSchedulingPolicy":0,"aws:bedrock/getAgentAgentVersions:getAgentAgentVersions":1,"aws:bedrock/getCustomModel:getCustomModel":1,"aws:bedrock/getCustomModels:getCustomModels":1,"aws:bedrock/getInferenceProfile:getInferenceProfile":1,"aws:bedrock/getInferenceProfiles:getInferenceProfiles":1,"aws:bedrockfoundation/getModel:getModel":1,"aws:bedrockfoundation/getModels:getModels":1,"aws:budgets/getBudget:getBudget":0,"aws:chatbot/getSlackWorkspace:getSlackWorkspace":1,"aws:cloudcontrol/getResource:getResource":0,"aws:cloudformation/getCloudFormationType:getCloudFormationType":0,"aws:cloudformation/getExport:getExport":0,"aws:cloudformation/getStack:getStack":0,"aws:cloudfront/getCachePolicy:getCachePolicy":0,"aws:cloudfront/getDistribution:getDistribution":0,"aws:cloudfront/getFunction:getFunction":0,"aws:cloudfront/getLogDeliveryCanonicalUserId:getLogDeliveryCanonicalUserId":0,"aws:cloudfront/getOriginAccessControl:getOriginAccessControl":1,"aws:cloudfront/getOriginAccessIdentities:getOriginAccessIdentities":0,"aws:cloudfront/getOriginAccessIdentity:getOriginAccessIdentity":0,"aws:cloudfront/getOriginRequestPolicy:getOriginRequestPolicy":0,"aws:cloudfront/getRealtimeLogConfig:getRealtimeLogConfig":0,"aws:cloudfront/getResponseHeadersPolicy:getResponseHeadersPolicy":0,"aws:cloudhsmv2/getCluster:getCluster":0,"aws:cloudtrail/getServiceAccount:getServiceAccount":0,"aws:cloudwatch/getEventBus:getEventBus":0,"aws:cloudwatch/getEventConnection:getEventConnection":0,"aws:cloudwatch/getEventSource:getEventSource":0,"aws:cloudwatch/getLogDataProtectionPolicyDocument:getLogDataProtectionPolicyDocument":0,"aws:cloudwatch/getLogGroup:getLogGroup":0,"aws:cloudwatch/getLogGroups:getLogGroups":0,"aws:codeartifact/getAuthorizationToken:getAuthorizationToken":0,"aws:codeartifact/getRepositoryEndpoint:getRepositoryEndpoint":0,"aws:codebuild/getFleet:getFleet":0,"aws:codecatalyst/getDevEnvironment:getDevEnvironment":0,"aws:codecommit/getApprovalRuleTemplate:getApprovalRuleTemplate":0,"aws:codecommit/getRepository:getRepository":0,"aws:codeguruprofiler/getProfilingGroup:getProfilingGroup":1,"aws:codestarconnections/getConnection:getConnection":0,"aws:cognito/getIdentityPool:getIdentityPool":0,"aws:cognito/getUserGroup:getUserGroup":1,"aws:cognito/getUserGroups:getUserGroups":1,"aws:cognito/getUserPool:getUserPool":1,"aws:cognito/getUserPoolClient:getUserPoolClient":0,"aws:cognito/getUserPoolClients:getUserPoolClients":0,"aws:cognito/getUserPoolSigningCertificate:getUserPoolSigningCertificate":0,"aws:cognito/getUserPools:getUserPools":0,"aws:connect/getBotAssociation:getBotAssociation":0,"aws:connect/getContactFlow:getContactFlow":0,"aws:connect/getContactFlowModule:getContactFlowModule":0,"aws:connect/getHoursOfOperation:getHoursOfOperation":0,"aws:connect/getInstance:getInstance":0,"aws:connect/getInstanceStorageConfig:getInstanceStorageConfig":0,"aws:connect/getLambdaFunctionAssociation:getLambdaFunctionAssociation":0,"aws:connect/getPrompt:getPrompt":0,"aws:connect/getQueue:getQueue":0,"aws:connect/getQuickConnect:getQuickConnect":0,"aws:connect/getRoutingProfile:getRoutingProfile":0,"aws:connect/getSecurityProfile:getSecurityProfile":0,"aws:connect/getUser:getUser":0,"aws:connect/getUserHierarchyGroup:getUserHierarchyGroup":0,"aws:connect/getUserHierarchyStructure:getUserHierarchyStructure":0,"aws:connect/getVocabulary:getVocabulary":0,"aws:controltower/getControls:getControls":0,"aws:costexplorer/getCostCategory:getCostCategory":0,"aws:costexplorer/getTags:getTags":0,"aws:cur/getReportDefinition:getReportDefinition":0,"aws:datapipeline/getPipeline:getPipeline":0,"aws:datapipeline/getPipelineDefinition:getPipelineDefinition":0,"aws:datazone/getEnvironmentBlueprint:getEnvironmentBlueprint":1,"aws:devopsguru/getNotificationChannel:getNotificationChannel":1,"aws:devopsguru/getResourceCollection:getResourceCollection":1,"aws:directconnect/getConnection:getConnection":0,"aws:directconnect/getGateway:getGateway":0,"aws:directconnect/getLocation:getLocation":0,"aws:directconnect/getLocations:getLocations":0,"aws:directconnect/getRouterConfiguration:getRouterConfiguration":0,"aws:directoryservice/getDirectory:getDirectory":0,"aws:dms/getCertificate:getCertificate":0,"aws:dms/getEndpoint:getEndpoint":0,"aws:dms/getReplicationInstance:getReplicationInstance":0,"aws:dms/getReplicationSubnetGroup:getReplicationSubnetGroup":0,"aws:dms/getReplicationTask:getReplicationTask":0,"aws:docdb/getEngineVersion:getEngineVersion":0,"aws:docdb/getOrderableDbInstance:getOrderableDbInstance":0,"aws:dynamodb/getTable:getTable":0,"aws:dynamodb/getTableItem:getTableItem":0,"aws:ebs/getDefaultKmsKey:getDefaultKmsKey":0,"aws:ebs/getEbsVolumes:getEbsVolumes":0,"aws:ebs/getEncryptionByDefault:getEncryptionByDefault":0,"aws:ebs/getSnapshot:getSnapshot":0,"aws:ebs/getSnapshotIds:getSnapshotIds":0,"aws:ebs/getVolume:getVolume":0,"aws:ec2/getAmi:getAmi":0,"aws:ec2/getAmiIds:getAmiIds":0,"aws:ec2/getCapacityBlockOffering:getCapacityBlockOffering":1,"aws:ec2/getCoipPool:getCoipPool":0,"aws:ec2/getCoipPools:getCoipPools":0,"aws:ec2/getCustomerGateway:getCustomerGateway":0,"aws:ec2/getDedicatedHost:getDedicatedHost":0,"aws:ec2/getEips:getEips":0,"aws:ec2/getElasticIp:getElasticIp":0,"aws:ec2/getInstance:getInstance":0,"aws:ec2/getInstanceType:getInstanceType":0,"aws:ec2/getInstanceTypeOffering:getInstanceTypeOffering":0,"aws:ec2/getInstanceTypeOfferings:getInstanceTypeOfferings":0,"aws:ec2/getInstanceTypes:getInstanceTypes":0,"aws:ec2/getInstances:getInstances":0,"aws:ec2/getInternetGateway:getInternetGateway":0,"aws:ec2/getIpamPreviewNextCidr:getIpamPreviewNextCidr":0,"aws:ec2/getKeyPair:getKeyPair":0,"aws:ec2/getLaunchConfiguration:getLaunchConfiguration":0,"aws:ec2/getLaunchTemplate:getLaunchTemplate":0,"aws:ec2/getLocalGateway:getLocalGateway":0,"aws:ec2/getLocalGatewayRouteTable:getLocalGatewayRouteTable":0,"aws:ec2/getLocalGatewayRouteTables:getLocalGatewayRouteTables":0,"aws:ec2/getLocalGatewayVirtualInterface:getLocalGatewayVirtualInterface":0,"aws:ec2/getLocalGatewayVirtualInterfaceGroup:getLocalGatewayVirtualInterfaceGroup":0,"aws:ec2/getLocalGatewayVirtualInterfaceGroups:getLocalGatewayVirtualInterfaceGroups":0,"aws:ec2/getLocalGateways:getLocalGateways":0,"aws:ec2/getManagedPrefixList:getManagedPrefixList":0,"aws:ec2/getManagedPrefixLists:getManagedPrefixLists":0,"aws:ec2/getNatGateway:getNatGateway":0,"aws:ec2/getNatGateways:getNatGateways":0,"aws:ec2/getNetworkAcls:getNetworkAcls":0,"aws:ec2/getNetworkInsightsAnalysis:getNetworkInsightsAnalysis":0,"aws:ec2/getNetworkInsightsPath:getNetworkInsightsPath":0,"aws:ec2/getNetworkInterface:getNetworkInterface":0,"aws:ec2/getNetworkInterfaces:getNetworkInterfaces":0,"aws:ec2/getPrefixList:getPrefixList":0,"aws:ec2/getPublicIpv4Pool:getPublicIpv4Pool":0,"aws:ec2/getPublicIpv4Pools:getPublicIpv4Pools":0,"aws:ec2/getRoute:getRoute":0,"aws:ec2/getRouteTable:getRouteTable":0,"aws:ec2/getRouteTables:getRouteTables":0,"aws:ec2/getSecurityGroup:getSecurityGroup":0,"aws:ec2/getSecurityGroups:getSecurityGroups":0,"aws:ec2/getSerialConsoleAccess:getSerialConsoleAccess":0,"aws:ec2/getSpotDatafeedSubscription:getSpotDatafeedSubscription":1,"aws:ec2/getSpotPrice:getSpotPrice":0,"aws:ec2/getSubnet:getSubnet":0,"aws:ec2/getSubnets:getSubnets":0,"aws:ec2/getTransitGatewayRouteTables:getTransitGatewayRouteTables":0,"aws:ec2/getVpc:getVpc":0,"aws:ec2/getVpcDhcpOptions:getVpcDhcpOptions":0,"aws:ec2/getVpcEndpoint:getVpcEndpoint":0,"aws:ec2/getVpcEndpointService:getVpcEndpointService":0,"aws:ec2/getVpcIamPool:getVpcIamPool":0,"aws:ec2/getVpcIamPoolCidrs:getVpcIamPoolCidrs":0,"aws:ec2/getVpcIamPools:getVpcIamPools":0,"aws:ec2/getVpcIpamPool:getVpcIpamPool":0,"aws:ec2/getVpcIpamPoolCidrs:getVpcIpamPoolCidrs":0,"aws:ec2/getVpcIpamPools:getVpcIpamPools":0,"aws:ec2/getVpcPeeringConnection:getVpcPeeringConnection":0,"aws:ec2/getVpcPeeringConnections:getVpcPeeringConnections":0,"aws:ec2/getVpcs:getVpcs":0,"aws:ec2/getVpnGateway:getVpnGateway":0,"aws:ec2clientvpn/getEndpoint:getEndpoint":0,"aws:ec2transitgateway/getAttachment:getAttachment":0,"aws:ec2transitgateway/getAttachments:getAttachments":0,"aws:ec2transitgateway/getConnect:getConnect":0,"aws:ec2transitgateway/getConnectPeer:getConnectPeer":0,"aws:ec2transitgateway/getDirectConnectGatewayAttachment:getDirectConnectGatewayAttachment":0,"aws:ec2transitgateway/getMulticastDomain:getMulticastDomain":0,"aws:ec2transitgateway/getPeeringAttachment:getPeeringAttachment":0,"aws:ec2transitgateway/getPeeringAttachments:getPeeringAttachments":0,"aws:ec2transitgateway/getRouteTable:getRouteTable":0,"aws:ec2transitgateway/getRouteTableAssociations:getRouteTableAssociations":0,"aws:ec2transitgateway/getRouteTablePropagations:getRouteTablePropagations":0,"aws:ec2transitgateway/getRouteTableRoutes:getRouteTableRoutes":0,"aws:ec2transitgateway/getTransitGateway:getTransitGateway":0,"aws:ec2transitgateway/getVpcAttachment:getVpcAttachment":0,"aws:ec2transitgateway/getVpcAttachments:getVpcAttachments":0,"aws:ec2transitgateway/getVpnAttachment:getVpnAttachment":0,"aws:ecr/getAuthorizationToken:getAuthorizationToken":0,"aws:ecr/getCredentials:getCredentials":0,"aws:ecr/getImage:getImage":0,"aws:ecr/getLifecyclePolicyDocument:getLifecyclePolicyDocument":1,"aws:ecr/getPullThroughCacheRule:getPullThroughCacheRule":0,"aws:ecr/getRepositories:getRepositories":1,"aws:ecr/getRepository:getRepository":0,"aws:ecr/getRepositoryCreationTemplate:getRepositoryCreationTemplate":0,"aws:ecrpublic/getAuthorizationToken:getAuthorizationToken":0,"aws:ecs/getCluster:getCluster":0,"aws:ecs/getContainerDefinition:getContainerDefinition":0,"aws:ecs/getService:getService":0,"aws:ecs/getTaskDefinition:getTaskDefinition":0,"aws:ecs/getTaskExecution:getTaskExecution":0,"aws:efs/getAccessPoint:getAccessPoint":0,"aws:efs/getAccessPoints:getAccessPoints":0,"aws:efs/getFileSystem:getFileSystem":0,"aws:efs/getMountTarget:getMountTarget":0,"aws:eks/getAccessEntry:getAccessEntry":0,"aws:eks/getAddon:getAddon":0,"aws:eks/getAddonVersion:getAddonVersion":0,"aws:eks/getCluster:getCluster":0,"aws:eks/getClusterAuth:getClusterAuth":0,"aws:eks/getClusters:getClusters":0,"aws:eks/getNodeGroup:getNodeGroup":0,"aws:eks/getNodeGroups:getNodeGroups":0,"aws:elasticache/getCluster:getCluster":0,"aws:elasticache/getReplicationGroup:getReplicationGroup":0,"aws:elasticache/getReservedCacheNodeOffering:getReservedCacheNodeOffering":1,"aws:elasticache/getServerlessCache:getServerlessCache":1,"aws:elasticache/getSubnetGroup:getSubnetGroup":0,"aws:elasticache/getUser:getUser":0,"aws:elasticbeanstalk/getApplication:getApplication":0,"aws:elasticbeanstalk/getHostedZone:getHostedZone":0,"aws:elasticbeanstalk/getSolutionStack:getSolutionStack":0,"aws:elasticsearch/getDomain:getDomain":0,"aws:elb/getHostedZoneId:getHostedZoneId":0,"aws:elb/getLoadBalancer:getLoadBalancer":0,"aws:elb/getServiceAccount:getServiceAccount":0,"aws:emr/getReleaseLabels:getReleaseLabels":0,"aws:emr/getSupportedInstanceTypes:getSupportedInstanceTypes":1,"aws:emrcontainers/getVirtualCluster:getVirtualCluster":0,"aws:fsx/getOntapFileSystem:getOntapFileSystem":0,"aws:fsx/getOntapStorageVirtualMachine:getOntapStorageVirtualMachine":0,"aws:fsx/getOntapStorageVirtualMachines:getOntapStorageVirtualMachines":0,"aws:fsx/getOpenZfsSnapshot:getOpenZfsSnapshot":0,"aws:fsx/getWindowsFileSystem:getWindowsFileSystem":0,"aws:globalaccelerator/getAccelerator:getAccelerator":1,"aws:globalaccelerator/getCustomRoutingAccelerator:getCustomRoutingAccelerator":0,"aws:glue/getCatalogTable:getCatalogTable":0,"aws:glue/getConnection:getConnection":0,"aws:glue/getDataCatalogEncryptionSettings:getDataCatalogEncryptionSettings":0,"aws:glue/getRegistry:getRegistry":1,"aws:glue/getScript:getScript":0,"aws:grafana/getWorkspace:getWorkspace":0,"aws:guardduty/getDetector:getDetector":0,"aws:guardduty/getFindingIds:getFindingIds":1,"aws:iam/getAccessKeys:getAccessKeys":0,"aws:iam/getAccountAlias:getAccountAlias":0,"aws:iam/getGroup:getGroup":0,"aws:iam/getInstanceProfile:getInstanceProfile":0,"aws:iam/getInstanceProfiles:getInstanceProfiles":0,"aws:iam/getOpenIdConnectProvider:getOpenIdConnectProvider":0,"aws:iam/getPolicy:getPolicy":0,"aws:iam/getPolicyDocument:getPolicyDocument":0,"aws:iam/getPrincipalPolicySimulation:getPrincipalPolicySimulation":0,"aws:iam/getRole:getRole":0,"aws:iam/getRoles:getRoles":0,"aws:iam/getSamlProvider:getSamlProvider":0,"aws:iam/getServerCertificate:getServerCertificate":0,"aws:iam/getSessionContext:getSessionContext":0,"aws:iam/getUser:getUser":0,"aws:iam/getUserSshKey:getUserSshKey":0,"aws:iam/getUsers:getUsers":0,"aws:identitystore/getGroup:getGroup":0,"aws:identitystore/getGroups:getGroups":1,"aws:identitystore/getUser:getUser":0,"aws:imagebuilder/getComponent:getComponent":0,"aws:imagebuilder/getComponents:getComponents":0,"aws:imagebuilder/getContainerRecipe:getContainerRecipe":0,"aws:imagebuilder/getContainerRecipes:getContainerRecipes":0,"aws:imagebuilder/getDistributionConfiguration:getDistributionConfiguration":0,"aws:imagebuilder/getDistributionConfigurations:getDistributionConfigurations":0,"aws:imagebuilder/getImage:getImage":0,"aws:imagebuilder/getImagePipeline:getImagePipeline":0,"aws:imagebuilder/getImagePipelines:getImagePipelines":0,"aws:imagebuilder/getImageRecipe:getImageRecipe":0,"aws:imagebuilder/getImageRecipes:getImageRecipes":0,"aws:imagebuilder/getInfrastructureConfiguration:getInfrastructureConfiguration":0,"aws:imagebuilder/getInfrastructureConfigurations:getInfrastructureConfigurations":0,"aws:index/getArn:getArn":1,"aws:index/getAvailabilityZone:getAvailabilityZone":0,"aws:index/getAvailabilityZones:getAvailabilityZones":0,"aws:index/getBillingServiceAccount:getBillingServiceAccount":1,"aws:index/getCallerIdentity:getCallerIdentity":1,"aws:index/getDefaultTags:getDefaultTags":1,"aws:index/getIpRanges:getIpRanges":1,"aws:index/getPartition:getPartition":1,"aws:index/getRegion:getRegion":1,"aws:index/getRegions:getRegions":1,"aws:index/getService:getService":1,"aws:index/getServicePrincipal:getServicePrincipal":1,"aws:inspector/getRulesPackages:getRulesPackages":0,"aws:iot/getEndpoint:getEndpoint":0,"aws:iot/getRegistrationCode:getRegistrationCode":0,"aws:ivs/getStreamKey:getStreamKey":0,"aws:kendra/getExperience:getExperience":0,"aws:kendra/getFaq:getFaq":0,"aws:kendra/getIndex:getIndex":0,"aws:kendra/getQuerySuggestionsBlockList:getQuerySuggestionsBlockList":0,"aws:kendra/getThesaurus:getThesaurus":0,"aws:kinesis/getFirehoseDeliveryStream:getFirehoseDeliveryStream":0,"aws:kinesis/getStream:getStream":0,"aws:kinesis/getStreamConsumer:getStreamConsumer":0,"aws:kms/getAlias:getAlias":0,"aws:kms/getCipherText:getCipherText":0,"aws:kms/getCustomKeyStore:getCustomKeyStore":0,"aws:kms/getKey:getKey":0,"aws:kms/getPublicKey:getPublicKey":0,"aws:kms/getSecret:getSecret":0,"aws:kms/getSecrets:getSecrets":0,"aws:lakeformation/getDataLakeSettings:getDataLakeSettings":0,"aws:lakeformation/getPermissions:getPermissions":0,"aws:lakeformation/getResource:getResource":0,"aws:lambda/getAlias:getAlias":0,"aws:lambda/getCodeSigningConfig:getCodeSigningConfig":0,"aws:lambda/getFunction:getFunction":0,"aws:lambda/getFunctionUrl:getFunctionUrl":0,"aws:lambda/getFunctions:getFunctions":0,"aws:lambda/getInvocation:getInvocation":0,"aws:lambda/getLayerVersion:getLayerVersion":0,"aws:lb/getHostedZoneId:getHostedZoneId":0,"aws:lb/getLbs:getLbs":0,"aws:lb/getListener:getListener":0,"aws:lb/getListenerRule:getListenerRule":1,"aws:lb/getLoadBalancer:getLoadBalancer":0,"aws:lb/getTargetGroup:getTargetGroup":0,"aws:lb/getTrustStore:getTrustStore":0,"aws:lex/getBot:getBot":0,"aws:lex/getBotAlias:getBotAlias":0,"aws:lex/getIntent:getIntent":0,"aws:lex/getSlotType:getSlotType":0,"aws:licensemanager/getLicenseGrants:getLicenseGrants":0,"aws:licensemanager/getReceivedLicense:getReceivedLicense":0,"aws:licensemanager/getReceivedLicenses:getReceivedLicenses":0,"aws:location/getGeofenceCollection:getGeofenceCollection":0,"aws:location/getMap:getMap":0,"aws:location/getPlaceIndex:getPlaceIndex":0,"aws:location/getRouteCalculator:getRouteCalculator":0,"aws:location/getTracker:getTracker":0,"aws:location/getTrackerAssociation:getTrackerAssociation":0,"aws:location/getTrackerAssociations:getTrackerAssociations":0,"aws:mediaconvert/getQueue:getQueue":0,"aws:medialive/getInput:getInput":1,"aws:memorydb/getAcl:getAcl":0,"aws:memorydb/getCluster:getCluster":0,"aws:memorydb/getParameterGroup:getParameterGroup":0,"aws:memorydb/getSnapshot:getSnapshot":0,"aws:memorydb/getSubnetGroup:getSubnetGroup":0,"aws:memorydb/getUser:getUser":0,"aws:mq/getBroker:getBroker":0,"aws:mq/getBrokerEngineTypes:getBrokerEngineTypes":0,"aws:mq/getInstanceTypeOfferings:getInstanceTypeOfferings":0,"aws:msk/getBootstrapBrokers:getBootstrapBrokers":0,"aws:msk/getBrokerNodes:getBrokerNodes":0,"aws:msk/getCluster:getCluster":0,"aws:msk/getConfiguration:getConfiguration":0,"aws:msk/getKafkaVersion:getKafkaVersion":0,"aws:msk/getVpcConnection:getVpcConnection":0,"aws:mskconnect/getConnector:getConnector":0,"aws:mskconnect/getCustomPlugin:getCustomPlugin":0,"aws:mskconnect/getWorkerConfiguration:getWorkerConfiguration":0,"aws:neptune/getEngineVersion:getEngineVersion":0,"aws:neptune/getOrderableDbInstance:getOrderableDbInstance":0,"aws:networkfirewall/getFirewall:getFirewall":0,"aws:networkfirewall/getFirewallPolicy:getFirewallPolicy":0,"aws:networkfirewall/getResourcePolicy:getResourcePolicy":0,"aws:networkmanager/getConnection:getConnection":0,"aws:networkmanager/getConnections:getConnections":0,"aws:networkmanager/getCoreNetworkPolicyDocument:getCoreNetworkPolicyDocument":0,"aws:networkmanager/getDevice:getDevice":0,"aws:networkmanager/getDevices:getDevices":0,"aws:networkmanager/getGlobalNetwork:getGlobalNetwork":0,"aws:networkmanager/getGlobalNetworks:getGlobalNetworks":0,"aws:networkmanager/getLink:getLink":0,"aws:networkmanager/getLinks:getLinks":0,"aws:networkmanager/getSite:getSite":0,"aws:networkmanager/getSites:getSites":0,"aws:oam/getLink:getLink":0,"aws:oam/getLinks:getLinks":0,"aws:oam/getSink:getSink":0,"aws:oam/getSinks:getSinks":0,"aws:opensearch/getDomain:getDomain":0,"aws:opensearch/getServerlessAccessPolicy:getServerlessAccessPolicy":1,"aws:opensearch/getServerlessCollection:getServerlessCollection":1,"aws:opensearch/getServerlessLifecyclePolicy:getServerlessLifecyclePolicy":1,"aws:opensearch/getServerlessSecurityConfig:getServerlessSecurityConfig":1,"aws:opensearch/getServerlessSecurityPolicy:getServerlessSecurityPolicy":0,"aws:opensearch/getServerlessVpcEndpoint:getServerlessVpcEndpoint":0,"aws:organizations/getDelegatedAdministrators:getDelegatedAdministrators":0,"aws:organizations/getDelegatedServices:getDelegatedServices":0,"aws:organizations/getOrganization:getOrganization":0,"aws:organizations/getOrganizationalUnit:getOrganizationalUnit":0,"aws:organizations/getOrganizationalUnitChildAccounts:getOrganizationalUnitChildAccounts":0,"aws:organizations/getOrganizationalUnitDescendantAccounts:getOrganizationalUnitDescendantAccounts":0,"aws:organizations/getOrganizationalUnitDescendantOrganizationalUnits:getOrganizationalUnitDescendantOrganizationalUnits":0,"aws:organizations/getOrganizationalUnits:getOrganizationalUnits":0,"aws:organizations/getPolicies:getPolicies":0,"aws:organizations/getPoliciesForTarget:getPoliciesForTarget":0,"aws:organizations/getPolicy:getPolicy":0,"aws:organizations/getResourceTags:getResourceTags":0,"aws:outposts/getAsset:getAsset":0,"aws:outposts/getAssets:getAssets":0,"aws:outposts/getOutpost:getOutpost":0,"aws:outposts/getOutpostInstanceType:getOutpostInstanceType":0,"aws:outposts/getOutpostInstanceTypes:getOutpostInstanceTypes":0,"aws:outposts/getOutposts:getOutposts":0,"aws:outposts/getSite:getSite":0,"aws:outposts/getSites:getSites":0,"aws:polly/getVoices:getVoices":1,"aws:pricing/getProduct:getProduct":0,"aws:qldb/getLedger:getLedger":0,"aws:quicksight/getAnalysis:getAnalysis":0,"aws:quicksight/getDataSet:getDataSet":0,"aws:quicksight/getQuicksightAnalysis:getQuicksightAnalysis":0,"aws:quicksight/getQuicksightGroup:getQuicksightGroup":0,"aws:quicksight/getQuicksightUser:getQuicksightUser":0,"aws:quicksight/getTheme:getTheme":0,"aws:ram/getResourceShare:getResourceShare":0,"aws:rds/getCertificate:getCertificate":0,"aws:rds/getCluster:getCluster":0,"aws:rds/getClusterParameterGroup:getClusterParameterGroup":1,"aws:rds/getClusterSnapshot:getClusterSnapshot":0,"aws:rds/getClusters:getClusters":0,"aws:rds/getEngineVersion:getEngineVersion":0,"aws:rds/getEventCategories:getEventCategories":0,"aws:rds/getInstance:getInstance":0,"aws:rds/getInstances:getInstances":0,"aws:rds/getOrderableDbInstance:getOrderableDbInstance":0,"aws:rds/getParameterGroup:getParameterGroup":0,"aws:rds/getProxy:getProxy":0,"aws:rds/getReservedInstanceOffering:getReservedInstanceOffering":0,"aws:rds/getSnapshot:getSnapshot":0,"aws:rds/getSubnetGroup:getSubnetGroup":0,"aws:redshift/getCluster:getCluster":0,"aws:redshift/getClusterCredentials:getClusterCredentials":0,"aws:redshift/getDataShares:getDataShares":1,"aws:redshift/getOrderableCluster:getOrderableCluster":0,"aws:redshift/getProducerDataShares:getProducerDataShares":1,"aws:redshift/getServiceAccount:getServiceAccount":0,"aws:redshift/getSubnetGroup:getSubnetGroup":0,"aws:redshiftserverless/getCredentials:getCredentials":0,"aws:redshiftserverless/getNamespace:getNamespace":0,"aws:redshiftserverless/getWorkgroup:getWorkgroup":0,"aws:resourceexplorer/search:Search":1,"aws:resourcegroupstaggingapi/getResources:getResources":0,"aws:route53/getDelegationSet:getDelegationSet":0,"aws:route53/getProfilesProfiles:getProfilesProfiles":1,"aws:route53/getQueryLogConfig:getQueryLogConfig":0,"aws:route53/getResolverEndpoint:getResolverEndpoint":0,"aws:route53/getResolverFirewallConfig:getResolverFirewallConfig":0,"aws:route53/getResolverFirewallDomainList:getResolverFirewallDomainList":0,"aws:route53/getResolverFirewallRuleGroup:getResolverFirewallRuleGroup":0,"aws:route53/getResolverFirewallRuleGroupAssociation:getResolverFirewallRuleGroupAssociation":0,"aws:route53/getResolverFirewallRules:getResolverFirewallRules":0,"aws:route53/getResolverRule:getResolverRule":0,"aws:route53/getResolverRules:getResolverRules":0,"aws:route53/getTrafficPolicyDocument:getTrafficPolicyDocument":0,"aws:route53/getZone:getZone":0,"aws:route53/getZones:getZones":1,"aws:s3/getAccountPublicAccessBlock:getAccountPublicAccessBlock":0,"aws:s3/getBucket:getBucket":0,"aws:s3/getBucketObject:getBucketObject":0,"aws:s3/getBucketObjects:getBucketObjects":0,"aws:s3/getBucketPolicy:getBucketPolicy":0,"aws:s3/getCanonicalUserId:getCanonicalUserId":0,"aws:s3/getDirectoryBuckets:getDirectoryBuckets":1,"aws:s3/getObject:getObject":0,"aws:s3/getObjects:getObjects":0,"aws:s3control/getMultiRegionAccessPoint:getMultiRegionAccessPoint":0,"aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage":0,"aws:secretsmanager/getRandomPassword:getRandomPassword":0,"aws:secretsmanager/getSecret:getSecret":0,"aws:secretsmanager/getSecretRotation:getSecretRotation":0,"aws:secretsmanager/getSecretVersion:getSecretVersion":0,"aws:secretsmanager/getSecretVersions:getSecretVersions":1,"aws:secretsmanager/getSecrets:getSecrets":0,"aws:securityhub/getStandardsControlAssociations:getStandardsControlAssociations":1,"aws:serverlessrepository/getApplication:getApplication":0,"aws:servicecatalog/getAppregistryApplication:getAppregistryApplication":1,"aws:servicecatalog/getAppregistryAttributeGroup:getAppregistryAttributeGroup":1,"aws:servicecatalog/getAppregistryAttributeGroupAssociations:getAppregistryAttributeGroupAssociations":1,"aws:servicecatalog/getConstraint:getConstraint":0,"aws:servicecatalog/getLaunchPaths:getLaunchPaths":0,"aws:servicecatalog/getPortfolio:getPortfolio":0,"aws:servicecatalog/getPortfolioConstraints:getPortfolioConstraints":0,"aws:servicecatalog/getProduct:getProduct":0,"aws:servicecatalog/getProvisioningArtifacts:getProvisioningArtifacts":0,"aws:servicediscovery/getDnsNamespace:getDnsNamespace":0,"aws:servicediscovery/getHttpNamespace:getHttpNamespace":0,"aws:servicediscovery/getService:getService":0,"aws:servicequotas/getService:getService":0,"aws:servicequotas/getServiceQuota:getServiceQuota":0,"aws:servicequotas/getTemplates:getTemplates":1,"aws:ses/getActiveReceiptRuleSet:getActiveReceiptRuleSet":0,"aws:ses/getDomainIdentity:getDomainIdentity":0,"aws:ses/getEmailIdentity:getEmailIdentity":0,"aws:sesv2/getConfigurationSet:getConfigurationSet":0,"aws:sesv2/getDedicatedIpPool:getDedicatedIpPool":0,"aws:sesv2/getEmailIdentity:getEmailIdentity":0,"aws:sesv2/getEmailIdentityMailFromAttributes:getEmailIdentityMailFromAttributes":0,"aws:sfn/getActivity:getActivity":0,"aws:sfn/getAlias:getAlias":0,"aws:sfn/getStateMachine:getStateMachine":0,"aws:sfn/getStateMachineVersions:getStateMachineVersions":0,"aws:shield/getProtection:getProtection":1,"aws:signer/getSigningJob:getSigningJob":0,"aws:signer/getSigningProfile:getSigningProfile":0,"aws:sns/getTopic:getTopic":0,"aws:sqs/getQueue:getQueue":0,"aws:sqs/getQueues:getQueues":0,"aws:ssm/getContactsRotation:getContactsRotation":1,"aws:ssm/getDocument:getDocument":0,"aws:ssm/getInstances:getInstances":0,"aws:ssm/getMaintenanceWindows:getMaintenanceWindows":0,"aws:ssm/getParameter:getParameter":0,"aws:ssm/getParametersByPath:getParametersByPath":0,"aws:ssm/getPatchBaseline:getPatchBaseline":0,"aws:ssm/getPatchBaselines:getPatchBaselines":1,"aws:ssmcontacts/getContact:getContact":0,"aws:ssmcontacts/getContactChannel:getContactChannel":0,"aws:ssmcontacts/getPlan:getPlan":0,"aws:ssmincidents/getReplicationSet:getReplicationSet":0,"aws:ssmincidents/getResponsePlan:getResponsePlan":0,"aws:ssoadmin/getApplication:getApplication":1,"aws:ssoadmin/getApplicationAssignments:getApplicationAssignments":1,"aws:ssoadmin/getApplicationProviders:getApplicationProviders":1,"aws:ssoadmin/getInstances:getInstances":0,"aws:ssoadmin/getPermissionSet:getPermissionSet":0,"aws:ssoadmin/getPermissionSets:getPermissionSets":1,"aws:ssoadmin/getPrincipalApplicationAssignments:getPrincipalApplicationAssignments":1,"aws:storagegateway/getLocalDisk:getLocalDisk":0,"aws:synthetics/getRuntimeVersion:getRuntimeVersion":1,"aws:synthetics/getRuntimeVersions:getRuntimeVersions":1,"aws:timestreamwrite/getDatabase:getDatabase":1,"aws:timestreamwrite/getTable:getTable":1,"aws:transfer/getConnector:getConnector":1,"aws:transfer/getServer:getServer":0,"aws:verifiedpermissions/getPolicyStore:getPolicyStore":1,"aws:vpc/getSecurityGroupRule:getSecurityGroupRule":1,"aws:vpc/getSecurityGroupRules:getSecurityGroupRules":1,"aws:vpclattice/getAuthPolicy:getAuthPolicy":0,"aws:vpclattice/getListener:getListener":0,"aws:vpclattice/getResourcePolicy:getResourcePolicy":0,"aws:vpclattice/getService:getService":0,"aws:vpclattice/getServiceNetwork:getServiceNetwork":0,"aws:waf/getIpset:getIpset":0,"aws:waf/getRateBasedRule:getRateBasedRule":0,"aws:waf/getRule:getRule":0,"aws:waf/getSubscribedRuleGroup:getSubscribedRuleGroup":0,"aws:waf/getWebAcl:getWebAcl":0,"aws:wafregional/getIpset:getIpset":0,"aws:wafregional/getRateBasedMod:getRateBasedMod":0,"aws:wafregional/getRule:getRule":0,"aws:wafregional/getSubscribedRuleGroup:getSubscribedRuleGroup":0,"aws:wafregional/getWebAcl:getWebAcl":0,"aws:wafv2/getIpSet:getIpSet":0,"aws:wafv2/getRegexPatternSet:getRegexPatternSet":0,"aws:wafv2/getRuleGroup:getRuleGroup":0,"aws:wafv2/getWebAcl:getWebAcl":0,"aws:workspaces/getBundle:getBundle":0,"aws:workspaces/getDirectory:getDirectory":0,"aws:workspaces/getImage:getImage":0,"aws:workspaces/getWorkspace:getWorkspace":0}}} \ No newline at end of file +{"auto-settings":{"resources":{"aws_batch_job_definition":{"maxItemsOneOverrides":{"eks_properties.$.pod_properties.$.containers":true}},"aws_eks_cluster":{"maxItemsOneOverrides":{"certificate_authority":true}},"aws_lexv2models_slot":{"maxItemsOneOverrides":{"value_elicitation_setting.$.prompt_specification.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.prompt_specification.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.continue_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.continue_response.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.still_waiting_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.still_waiting_response.$.message_group.$.variation.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.waiting_response.$.message_group.$.message.$.custom_payload":false,"value_elicitation_setting.$.wait_and_continue_specification.$.waiting_response.$.message_group.$.variation.$.custom_payload":false}},"aws_lexv2models_slot_type":{"maxItemsOneOverrides":{"composite_slot_type_setting":true,"external_source_setting":true,"external_source_setting.$.grammar_slot_type_setting":true,"external_source_setting.$.grammar_slot_type_setting.$.source":true,"slot_type_values":true}},"aws_sagemaker_app_image_config":{"maxItemsOneOverrides":{"kernel_gateway_image_config.$.kernel_spec":true}},"aws_securitylake_subscriber":{"maxItemsOneOverrides":{"source":true}},"aws_wafv2_web_acl":{"maxItemsOneOverrides":{"association_config.$.request_body.$.api_gateway":false,"association_config.$.request_body.$.app_runner_service":false,"association_config.$.request_body.$.cloudfront":false,"association_config.$.request_body.$.cognito_user_pool":false,"association_config.$.request_body.$.verified_access_instance":false}}},"datasources":{"aws_efs_file_system":{"maxItemsOneOverrides":{"lifecycle_policy":true}},"aws_quicksight_analysis":{"renames":["aws:quicksight/getAnalysis:getAnalysis"]},"aws_vpc_ipam_pool":{"renames":["aws:ec2/getVpcIamPool:getVpcIamPool"]},"aws_vpc_ipam_pool_cidrs":{"renames":["aws:ec2/getVpcIamPoolCidrs:getVpcIamPoolCidrs"]},"aws_vpc_ipam_pools":{"renames":["aws:ec2/getVpcIamPools:getVpcIamPools"]}}},"mux":{"resources":{"aws:accessanalyzer/analyzer:Analyzer":0,"aws:accessanalyzer/archiveRule:ArchiveRule":0,"aws:account/alternativeContact:AlternativeContact":0,"aws:account/primaryContact:PrimaryContact":0,"aws:account/region:Region":0,"aws:acm/certificate:Certificate":0,"aws:acm/certificateValidation:CertificateValidation":0,"aws:acmpca/certificate:Certificate":0,"aws:acmpca/certificateAuthority:CertificateAuthority":0,"aws:acmpca/certificateAuthorityCertificate:CertificateAuthorityCertificate":0,"aws:acmpca/permission:Permission":0,"aws:acmpca/policy:Policy":0,"aws:alb/listener:Listener":0,"aws:alb/listenerCertificate:ListenerCertificate":0,"aws:alb/listenerRule:ListenerRule":0,"aws:alb/loadBalancer:LoadBalancer":0,"aws:alb/targetGroup:TargetGroup":0,"aws:alb/targetGroupAttachment:TargetGroupAttachment":0,"aws:amp/alertManagerDefinition:AlertManagerDefinition":0,"aws:amp/ruleGroupNamespace:RuleGroupNamespace":0,"aws:amp/scraper:Scraper":1,"aws:amp/workspace:Workspace":0,"aws:amplify/app:App":0,"aws:amplify/backendEnvironment:BackendEnvironment":0,"aws:amplify/branch:Branch":0,"aws:amplify/domainAssociation:DomainAssociation":0,"aws:amplify/webhook:Webhook":0,"aws:apigateway/account:Account":1,"aws:apigateway/apiKey:ApiKey":0,"aws:apigateway/authorizer:Authorizer":0,"aws:apigateway/basePathMapping:BasePathMapping":0,"aws:apigateway/clientCertificate:ClientCertificate":0,"aws:apigateway/deployment:Deployment":0,"aws:apigateway/documentationPart:DocumentationPart":0,"aws:apigateway/documentationVersion:DocumentationVersion":0,"aws:apigateway/domainName:DomainName":0,"aws:apigateway/domainNameAccessAssociation:DomainNameAccessAssociation":1,"aws:apigateway/integration:Integration":0,"aws:apigateway/integrationResponse:IntegrationResponse":0,"aws:apigateway/method:Method":0,"aws:apigateway/methodResponse:MethodResponse":0,"aws:apigateway/methodSettings:MethodSettings":0,"aws:apigateway/model:Model":0,"aws:apigateway/requestValidator:RequestValidator":0,"aws:apigateway/resource:Resource":0,"aws:apigateway/response:Response":0,"aws:apigateway/restApi:RestApi":0,"aws:apigateway/restApiPolicy:RestApiPolicy":0,"aws:apigateway/stage:Stage":0,"aws:apigateway/usagePlan:UsagePlan":0,"aws:apigateway/usagePlanKey:UsagePlanKey":0,"aws:apigateway/vpcLink:VpcLink":0,"aws:apigatewayv2/api:Api":0,"aws:apigatewayv2/apiMapping:ApiMapping":0,"aws:apigatewayv2/authorizer:Authorizer":0,"aws:apigatewayv2/deployment:Deployment":0,"aws:apigatewayv2/domainName:DomainName":0,"aws:apigatewayv2/integration:Integration":0,"aws:apigatewayv2/integrationResponse:IntegrationResponse":0,"aws:apigatewayv2/model:Model":0,"aws:apigatewayv2/route:Route":0,"aws:apigatewayv2/routeResponse:RouteResponse":0,"aws:apigatewayv2/stage:Stage":0,"aws:apigatewayv2/vpcLink:VpcLink":0,"aws:appautoscaling/policy:Policy":0,"aws:appautoscaling/scheduledAction:ScheduledAction":0,"aws:appautoscaling/target:Target":0,"aws:appconfig/application:Application":0,"aws:appconfig/configurationProfile:ConfigurationProfile":0,"aws:appconfig/deployment:Deployment":0,"aws:appconfig/deploymentStrategy:DeploymentStrategy":0,"aws:appconfig/environment:Environment":1,"aws:appconfig/eventIntegration:EventIntegration":0,"aws:appconfig/extension:Extension":0,"aws:appconfig/extensionAssociation:ExtensionAssociation":0,"aws:appconfig/hostedConfigurationVersion:HostedConfigurationVersion":0,"aws:appfabric/appAuthorization:AppAuthorization":1,"aws:appfabric/appAuthorizationConnection:AppAuthorizationConnection":1,"aws:appfabric/appBundle:AppBundle":1,"aws:appfabric/ingestion:Ingestion":1,"aws:appfabric/ingestionDestination:IngestionDestination":1,"aws:appflow/connectorProfile:ConnectorProfile":0,"aws:appflow/flow:Flow":0,"aws:appintegrations/dataIntegration:DataIntegration":0,"aws:applicationinsights/application:Application":0,"aws:appmesh/gatewayRoute:GatewayRoute":0,"aws:appmesh/mesh:Mesh":0,"aws:appmesh/route:Route":0,"aws:appmesh/virtualGateway:VirtualGateway":0,"aws:appmesh/virtualNode:VirtualNode":0,"aws:appmesh/virtualRouter:VirtualRouter":0,"aws:appmesh/virtualService:VirtualService":0,"aws:apprunner/autoScalingConfigurationVersion:AutoScalingConfigurationVersion":0,"aws:apprunner/connection:Connection":0,"aws:apprunner/customDomainAssociation:CustomDomainAssociation":0,"aws:apprunner/defaultAutoScalingConfigurationVersion:DefaultAutoScalingConfigurationVersion":1,"aws:apprunner/deployment:Deployment":1,"aws:apprunner/observabilityConfiguration:ObservabilityConfiguration":0,"aws:apprunner/service:Service":0,"aws:apprunner/vpcConnector:VpcConnector":0,"aws:apprunner/vpcIngressConnection:VpcIngressConnection":0,"aws:appstream/directoryConfig:DirectoryConfig":0,"aws:appstream/fleet:Fleet":0,"aws:appstream/fleetStackAssociation:FleetStackAssociation":0,"aws:appstream/imageBuilder:ImageBuilder":0,"aws:appstream/stack:Stack":0,"aws:appstream/user:User":0,"aws:appstream/userStackAssociation:UserStackAssociation":0,"aws:appsync/apiCache:ApiCache":0,"aws:appsync/apiKey:ApiKey":0,"aws:appsync/dataSource:DataSource":0,"aws:appsync/domainName:DomainName":0,"aws:appsync/domainNameApiAssociation:DomainNameApiAssociation":0,"aws:appsync/function:Function":0,"aws:appsync/graphQLApi:GraphQLApi":0,"aws:appsync/resolver:Resolver":0,"aws:appsync/sourceApiAssociation:SourceApiAssociation":1,"aws:appsync/type:Type":0,"aws:athena/dataCatalog:DataCatalog":0,"aws:athena/database:Database":0,"aws:athena/namedQuery:NamedQuery":0,"aws:athena/preparedStatement:PreparedStatement":0,"aws:athena/workgroup:Workgroup":0,"aws:auditmanager/accountRegistration:AccountRegistration":1,"aws:auditmanager/assessment:Assessment":1,"aws:auditmanager/assessmentDelegation:AssessmentDelegation":1,"aws:auditmanager/assessmentReport:AssessmentReport":1,"aws:auditmanager/control:Control":1,"aws:auditmanager/framework:Framework":1,"aws:auditmanager/frameworkShare:FrameworkShare":1,"aws:auditmanager/organizationAdminAccountRegistration:OrganizationAdminAccountRegistration":1,"aws:autoscaling/attachment:Attachment":0,"aws:autoscaling/group:Group":0,"aws:autoscaling/lifecycleHook:LifecycleHook":0,"aws:autoscaling/notification:Notification":0,"aws:autoscaling/policy:Policy":0,"aws:autoscaling/schedule:Schedule":0,"aws:autoscaling/tag:Tag":0,"aws:autoscaling/trafficSourceAttachment:TrafficSourceAttachment":0,"aws:autoscalingplans/scalingPlan:ScalingPlan":0,"aws:backup/framework:Framework":0,"aws:backup/globalSettings:GlobalSettings":0,"aws:backup/logicallyAirGappedVault:LogicallyAirGappedVault":1,"aws:backup/plan:Plan":0,"aws:backup/regionSettings:RegionSettings":0,"aws:backup/reportPlan:ReportPlan":0,"aws:backup/restoreTestingPlan:RestoreTestingPlan":1,"aws:backup/restoreTestingSelection:RestoreTestingSelection":1,"aws:backup/selection:Selection":0,"aws:backup/vault:Vault":0,"aws:backup/vaultLockConfiguration:VaultLockConfiguration":0,"aws:backup/vaultNotifications:VaultNotifications":0,"aws:backup/vaultPolicy:VaultPolicy":0,"aws:batch/computeEnvironment:ComputeEnvironment":0,"aws:batch/jobDefinition:JobDefinition":0,"aws:batch/jobQueue:JobQueue":1,"aws:batch/schedulingPolicy:SchedulingPolicy":0,"aws:bcmdata/export:Export":1,"aws:bedrock/agentAgent:AgentAgent":1,"aws:bedrock/agentAgentActionGroup:AgentAgentActionGroup":1,"aws:bedrock/agentAgentAlias:AgentAgentAlias":1,"aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator":1,"aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation":1,"aws:bedrock/agentDataSource:AgentDataSource":1,"aws:bedrock/agentKnowledgeBase:AgentKnowledgeBase":1,"aws:bedrock/customModel:CustomModel":1,"aws:bedrock/guardrail:Guardrail":1,"aws:bedrock/guardrailVersion:GuardrailVersion":1,"aws:bedrock/inferenceProfile:InferenceProfile":1,"aws:bedrock/provisionedModelThroughput:ProvisionedModelThroughput":1,"aws:bedrockmodel/invocationLoggingConfiguration:InvocationLoggingConfiguration":1,"aws:budgets/budget:Budget":0,"aws:budgets/budgetAction:BudgetAction":0,"aws:cfg/aggregateAuthorization:AggregateAuthorization":0,"aws:cfg/configurationAggregator:ConfigurationAggregator":0,"aws:cfg/conformancePack:ConformancePack":0,"aws:cfg/deliveryChannel:DeliveryChannel":0,"aws:cfg/organizationConformancePack:OrganizationConformancePack":0,"aws:cfg/organizationCustomPolicyRule:OrganizationCustomPolicyRule":0,"aws:cfg/organizationCustomRule:OrganizationCustomRule":0,"aws:cfg/organizationManagedRule:OrganizationManagedRule":0,"aws:cfg/recorder:Recorder":0,"aws:cfg/recorderStatus:RecorderStatus":0,"aws:cfg/remediationConfiguration:RemediationConfiguration":0,"aws:cfg/retentionConfiguration:RetentionConfiguration":1,"aws:cfg/rule:Rule":0,"aws:chatbot/slackChannelConfiguration:SlackChannelConfiguration":1,"aws:chatbot/teamsChannelConfiguration:TeamsChannelConfiguration":1,"aws:chime/sdkvoiceGlobalSettings:SdkvoiceGlobalSettings":0,"aws:chime/sdkvoiceSipMediaApplication:SdkvoiceSipMediaApplication":0,"aws:chime/sdkvoiceSipRule:SdkvoiceSipRule":0,"aws:chime/sdkvoiceVoiceProfileDomain:SdkvoiceVoiceProfileDomain":0,"aws:chime/voiceConnector:VoiceConnector":0,"aws:chime/voiceConnectorGroup:VoiceConnectorGroup":0,"aws:chime/voiceConnectorLogging:VoiceConnectorLogging":0,"aws:chime/voiceConnectorOrganization:VoiceConnectorOrganization":0,"aws:chime/voiceConnectorStreaming:VoiceConnectorStreaming":0,"aws:chime/voiceConnectorTermination:VoiceConnectorTermination":0,"aws:chime/voiceConnectorTerminationCredentials:VoiceConnectorTerminationCredentials":0,"aws:chimesdkmediapipelines/mediaInsightsPipelineConfiguration:MediaInsightsPipelineConfiguration":0,"aws:cleanrooms/collaboration:Collaboration":0,"aws:cleanrooms/configuredTable:ConfiguredTable":0,"aws:cleanrooms/membership:Membership":1,"aws:cloud9/environmentEC2:EnvironmentEC2":0,"aws:cloud9/environmentMembership:EnvironmentMembership":0,"aws:cloudcontrol/resource:Resource":0,"aws:cloudformation/cloudFormationType:CloudFormationType":0,"aws:cloudformation/stack:Stack":0,"aws:cloudformation/stackInstances:StackInstances":0,"aws:cloudformation/stackSet:StackSet":0,"aws:cloudformation/stackSetInstance:StackSetInstance":0,"aws:cloudfront/cachePolicy:CachePolicy":0,"aws:cloudfront/continuousDeploymentPolicy:ContinuousDeploymentPolicy":1,"aws:cloudfront/distribution:Distribution":0,"aws:cloudfront/fieldLevelEncryptionConfig:FieldLevelEncryptionConfig":0,"aws:cloudfront/fieldLevelEncryptionProfile:FieldLevelEncryptionProfile":0,"aws:cloudfront/function:Function":0,"aws:cloudfront/keyGroup:KeyGroup":0,"aws:cloudfront/keyValueStore:KeyValueStore":1,"aws:cloudfront/keyvaluestoreKey:KeyvaluestoreKey":1,"aws:cloudfront/monitoringSubscription:MonitoringSubscription":0,"aws:cloudfront/originAccessControl:OriginAccessControl":0,"aws:cloudfront/originAccessIdentity:OriginAccessIdentity":0,"aws:cloudfront/originRequestPolicy:OriginRequestPolicy":0,"aws:cloudfront/publicKey:PublicKey":0,"aws:cloudfront/realtimeLogConfig:RealtimeLogConfig":0,"aws:cloudfront/responseHeadersPolicy:ResponseHeadersPolicy":0,"aws:cloudfront/vpcOrigin:VpcOrigin":1,"aws:cloudhsmv2/cluster:Cluster":0,"aws:cloudhsmv2/hsm:Hsm":0,"aws:cloudsearch/domain:Domain":0,"aws:cloudsearch/domainServiceAccessPolicy:DomainServiceAccessPolicy":0,"aws:cloudtrail/eventDataStore:EventDataStore":0,"aws:cloudtrail/organizationDelegatedAdminAccount:OrganizationDelegatedAdminAccount":1,"aws:cloudtrail/trail:Trail":0,"aws:cloudwatch/compositeAlarm:CompositeAlarm":0,"aws:cloudwatch/dashboard:Dashboard":0,"aws:cloudwatch/eventApiDestination:EventApiDestination":0,"aws:cloudwatch/eventArchive:EventArchive":0,"aws:cloudwatch/eventBus:EventBus":0,"aws:cloudwatch/eventBusPolicy:EventBusPolicy":0,"aws:cloudwatch/eventConnection:EventConnection":0,"aws:cloudwatch/eventEndpoint:EventEndpoint":0,"aws:cloudwatch/eventPermission:EventPermission":0,"aws:cloudwatch/eventRule:EventRule":0,"aws:cloudwatch/eventTarget:EventTarget":0,"aws:cloudwatch/internetMonitor:InternetMonitor":0,"aws:cloudwatch/logAccountPolicy:LogAccountPolicy":0,"aws:cloudwatch/logAnomalyDetector:LogAnomalyDetector":1,"aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy":0,"aws:cloudwatch/logDelivery:LogDelivery":1,"aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination":1,"aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy":1,"aws:cloudwatch/logDeliverySource:LogDeliverySource":1,"aws:cloudwatch/logDestination:LogDestination":0,"aws:cloudwatch/logDestinationPolicy:LogDestinationPolicy":0,"aws:cloudwatch/logGroup:LogGroup":0,"aws:cloudwatch/logIndexPolicy:LogIndexPolicy":1,"aws:cloudwatch/logMetricFilter:LogMetricFilter":0,"aws:cloudwatch/logResourcePolicy:LogResourcePolicy":0,"aws:cloudwatch/logStream:LogStream":0,"aws:cloudwatch/logSubscriptionFilter:LogSubscriptionFilter":0,"aws:cloudwatch/metricAlarm:MetricAlarm":0,"aws:cloudwatch/metricStream:MetricStream":0,"aws:cloudwatch/queryDefinition:QueryDefinition":0,"aws:codeartifact/domain:Domain":0,"aws:codeartifact/domainPermissions:DomainPermissions":0,"aws:codeartifact/repository:Repository":0,"aws:codeartifact/repositoryPermissionsPolicy:RepositoryPermissionsPolicy":0,"aws:codebuild/fleet:Fleet":0,"aws:codebuild/project:Project":0,"aws:codebuild/reportGroup:ReportGroup":0,"aws:codebuild/resourcePolicy:ResourcePolicy":0,"aws:codebuild/sourceCredential:SourceCredential":0,"aws:codebuild/webhook:Webhook":0,"aws:codecatalyst/devEnvironment:DevEnvironment":0,"aws:codecatalyst/project:Project":0,"aws:codecatalyst/sourceRepository:SourceRepository":0,"aws:codecommit/approvalRuleTemplate:ApprovalRuleTemplate":0,"aws:codecommit/approvalRuleTemplateAssociation:ApprovalRuleTemplateAssociation":0,"aws:codecommit/repository:Repository":0,"aws:codecommit/trigger:Trigger":0,"aws:codeconnections/connection:Connection":1,"aws:codeconnections/host:Host":1,"aws:codedeploy/application:Application":0,"aws:codedeploy/deploymentConfig:DeploymentConfig":0,"aws:codedeploy/deploymentGroup:DeploymentGroup":0,"aws:codeguruprofiler/profilingGroup:ProfilingGroup":1,"aws:codegurureviewer/repositoryAssociation:RepositoryAssociation":0,"aws:codepipeline/customActionType:CustomActionType":0,"aws:codepipeline/pipeline:Pipeline":0,"aws:codepipeline/webhook:Webhook":0,"aws:codestarconnections/connection:Connection":0,"aws:codestarconnections/host:Host":0,"aws:codestarnotifications/notificationRule:NotificationRule":0,"aws:cognito/identityPool:IdentityPool":0,"aws:cognito/identityPoolProviderPrincipalTag:IdentityPoolProviderPrincipalTag":0,"aws:cognito/identityPoolRoleAttachment:IdentityPoolRoleAttachment":0,"aws:cognito/identityProvider:IdentityProvider":0,"aws:cognito/managedUserPoolClient:ManagedUserPoolClient":1,"aws:cognito/resourceServer:ResourceServer":0,"aws:cognito/riskConfiguration:RiskConfiguration":0,"aws:cognito/user:User":0,"aws:cognito/userGroup:UserGroup":0,"aws:cognito/userInGroup:UserInGroup":0,"aws:cognito/userPool:UserPool":0,"aws:cognito/userPoolClient:UserPoolClient":1,"aws:cognito/userPoolDomain:UserPoolDomain":0,"aws:cognito/userPoolUICustomization:UserPoolUICustomization":0,"aws:comprehend/documentClassifier:DocumentClassifier":0,"aws:comprehend/entityRecognizer:EntityRecognizer":0,"aws:computeoptimizer/enrollmentStatus:EnrollmentStatus":1,"aws:computeoptimizer/recommendationPreferences:RecommendationPreferences":1,"aws:connect/botAssociation:BotAssociation":0,"aws:connect/contactFlow:ContactFlow":0,"aws:connect/contactFlowModule:ContactFlowModule":0,"aws:connect/hoursOfOperation:HoursOfOperation":0,"aws:connect/instance:Instance":0,"aws:connect/instanceStorageConfig:InstanceStorageConfig":0,"aws:connect/lambdaFunctionAssociation:LambdaFunctionAssociation":0,"aws:connect/phoneNumber:PhoneNumber":0,"aws:connect/queue:Queue":0,"aws:connect/quickConnect:QuickConnect":0,"aws:connect/routingProfile:RoutingProfile":0,"aws:connect/securityProfile:SecurityProfile":0,"aws:connect/user:User":0,"aws:connect/userHierarchyGroup:UserHierarchyGroup":0,"aws:connect/userHierarchyStructure:UserHierarchyStructure":0,"aws:connect/vocabulary:Vocabulary":0,"aws:controltower/controlTowerControl:ControlTowerControl":0,"aws:controltower/landingZone:LandingZone":0,"aws:costexplorer/anomalyMonitor:AnomalyMonitor":0,"aws:costexplorer/anomalySubscription:AnomalySubscription":0,"aws:costexplorer/costAllocationTag:CostAllocationTag":0,"aws:costexplorer/costCategory:CostCategory":0,"aws:costoptimizationhub/enrollmentStatus:EnrollmentStatus":1,"aws:costoptimizationhub/preferences:Preferences":1,"aws:cur/reportDefinition:ReportDefinition":0,"aws:customerprofiles/domain:Domain":0,"aws:customerprofiles/profile:Profile":0,"aws:dataexchange/dataSet:DataSet":0,"aws:dataexchange/revision:Revision":0,"aws:datapipeline/pipeline:Pipeline":0,"aws:datapipeline/pipelineDefinition:PipelineDefinition":0,"aws:datasync/agent:Agent":0,"aws:datasync/efsLocation:EfsLocation":0,"aws:datasync/fsxOpenZfsFileSystem:FsxOpenZfsFileSystem":0,"aws:datasync/locationAzureBlob:LocationAzureBlob":0,"aws:datasync/locationFsxLustre:LocationFsxLustre":0,"aws:datasync/locationFsxOntapFileSystem:LocationFsxOntapFileSystem":0,"aws:datasync/locationFsxWindows:LocationFsxWindows":0,"aws:datasync/locationHdfs:LocationHdfs":0,"aws:datasync/locationObjectStorage:LocationObjectStorage":0,"aws:datasync/locationSmb:LocationSmb":0,"aws:datasync/nfsLocation:NfsLocation":0,"aws:datasync/s3Location:S3Location":0,"aws:datasync/task:Task":0,"aws:datazone/assetType:AssetType":1,"aws:datazone/domain:Domain":1,"aws:datazone/environment:Environment":1,"aws:datazone/environmentBlueprintConfiguration:EnvironmentBlueprintConfiguration":1,"aws:datazone/environmentProfile:EnvironmentProfile":1,"aws:datazone/formType:FormType":1,"aws:datazone/glossary:Glossary":1,"aws:datazone/glossaryTerm:GlossaryTerm":1,"aws:datazone/project:Project":1,"aws:datazone/userProfile:UserProfile":1,"aws:dax/cluster:Cluster":0,"aws:dax/parameterGroup:ParameterGroup":0,"aws:dax/subnetGroup:SubnetGroup":0,"aws:detective/graph:Graph":0,"aws:detective/invitationAccepter:InvitationAccepter":0,"aws:detective/member:Member":0,"aws:detective/organizationAdminAccount:OrganizationAdminAccount":0,"aws:detective/organizationConfiguration:OrganizationConfiguration":0,"aws:devicefarm/devicePool:DevicePool":0,"aws:devicefarm/instanceProfile:InstanceProfile":0,"aws:devicefarm/networkProfile:NetworkProfile":0,"aws:devicefarm/project:Project":0,"aws:devicefarm/testGridProject:TestGridProject":0,"aws:devicefarm/upload:Upload":0,"aws:devopsguru/eventSourcesConfig:EventSourcesConfig":1,"aws:devopsguru/notificationChannel:NotificationChannel":1,"aws:devopsguru/resourceCollection:ResourceCollection":1,"aws:devopsguru/serviceIntegration:ServiceIntegration":1,"aws:directconnect/bgpPeer:BgpPeer":0,"aws:directconnect/connection:Connection":0,"aws:directconnect/connectionAssociation:ConnectionAssociation":0,"aws:directconnect/connectionConfirmation:ConnectionConfirmation":0,"aws:directconnect/gateway:Gateway":0,"aws:directconnect/gatewayAssociation:GatewayAssociation":0,"aws:directconnect/gatewayAssociationProposal:GatewayAssociationProposal":0,"aws:directconnect/hostedConnection:HostedConnection":0,"aws:directconnect/hostedPrivateVirtualInterface:HostedPrivateVirtualInterface":0,"aws:directconnect/hostedPrivateVirtualInterfaceAccepter:HostedPrivateVirtualInterfaceAccepter":0,"aws:directconnect/hostedPublicVirtualInterface:HostedPublicVirtualInterface":0,"aws:directconnect/hostedPublicVirtualInterfaceAccepter:HostedPublicVirtualInterfaceAccepter":0,"aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface":0,"aws:directconnect/hostedTransitVirtualInterfaceAcceptor:HostedTransitVirtualInterfaceAcceptor":0,"aws:directconnect/linkAggregationGroup:LinkAggregationGroup":0,"aws:directconnect/macsecKeyAssociation:MacsecKeyAssociation":0,"aws:directconnect/privateVirtualInterface:PrivateVirtualInterface":0,"aws:directconnect/publicVirtualInterface:PublicVirtualInterface":0,"aws:directconnect/transitVirtualInterface:TransitVirtualInterface":0,"aws:directoryservice/conditionalForwader:ConditionalForwader":0,"aws:directoryservice/directory:Directory":0,"aws:directoryservice/logService:LogService":0,"aws:directoryservice/radiusSettings:RadiusSettings":0,"aws:directoryservice/serviceRegion:ServiceRegion":0,"aws:directoryservice/sharedDirectory:SharedDirectory":0,"aws:directoryservice/sharedDirectoryAccepter:SharedDirectoryAccepter":0,"aws:directoryservice/trust:Trust":1,"aws:dlm/lifecyclePolicy:LifecyclePolicy":0,"aws:dms/certificate:Certificate":0,"aws:dms/endpoint:Endpoint":0,"aws:dms/eventSubscription:EventSubscription":0,"aws:dms/replicationConfig:ReplicationConfig":0,"aws:dms/replicationInstance:ReplicationInstance":0,"aws:dms/replicationSubnetGroup:ReplicationSubnetGroup":0,"aws:dms/replicationTask:ReplicationTask":0,"aws:dms/s3Endpoint:S3Endpoint":0,"aws:docdb/cluster:Cluster":0,"aws:docdb/clusterInstance:ClusterInstance":0,"aws:docdb/clusterParameterGroup:ClusterParameterGroup":0,"aws:docdb/clusterSnapshot:ClusterSnapshot":0,"aws:docdb/elasticCluster:ElasticCluster":1,"aws:docdb/eventSubscription:EventSubscription":0,"aws:docdb/globalCluster:GlobalCluster":0,"aws:docdb/subnetGroup:SubnetGroup":0,"aws:drs/replicationConfigurationTemplate:ReplicationConfigurationTemplate":1,"aws:dynamodb/contributorInsights:ContributorInsights":0,"aws:dynamodb/globalTable:GlobalTable":0,"aws:dynamodb/kinesisStreamingDestination:KinesisStreamingDestination":0,"aws:dynamodb/resourcePolicy:ResourcePolicy":1,"aws:dynamodb/table:Table":0,"aws:dynamodb/tableExport:TableExport":0,"aws:dynamodb/tableItem:TableItem":0,"aws:dynamodb/tableReplica:TableReplica":0,"aws:dynamodb/tag:Tag":0,"aws:ebs/defaultKmsKey:DefaultKmsKey":0,"aws:ebs/encryptionByDefault:EncryptionByDefault":0,"aws:ebs/fastSnapshotRestore:FastSnapshotRestore":1,"aws:ebs/snapshot:Snapshot":0,"aws:ebs/snapshotBlockPublicAccess:SnapshotBlockPublicAccess":0,"aws:ebs/snapshotCopy:SnapshotCopy":0,"aws:ebs/snapshotImport:SnapshotImport":0,"aws:ebs/volume:Volume":0,"aws:ec2/ami:Ami":0,"aws:ec2/amiCopy:AmiCopy":0,"aws:ec2/amiFromInstance:AmiFromInstance":0,"aws:ec2/amiLaunchPermission:AmiLaunchPermission":0,"aws:ec2/availabilityZoneGroup:AvailabilityZoneGroup":0,"aws:ec2/capacityBlockReservation:CapacityBlockReservation":1,"aws:ec2/capacityReservation:CapacityReservation":0,"aws:ec2/carrierGateway:CarrierGateway":0,"aws:ec2/customerGateway:CustomerGateway":0,"aws:ec2/dedicatedHost:DedicatedHost":0,"aws:ec2/defaultNetworkAcl:DefaultNetworkAcl":0,"aws:ec2/defaultRouteTable:DefaultRouteTable":0,"aws:ec2/defaultSecurityGroup:DefaultSecurityGroup":0,"aws:ec2/defaultSubnet:DefaultSubnet":0,"aws:ec2/defaultVpc:DefaultVpc":0,"aws:ec2/defaultVpcDhcpOptions:DefaultVpcDhcpOptions":0,"aws:ec2/egressOnlyInternetGateway:EgressOnlyInternetGateway":0,"aws:ec2/eip:Eip":0,"aws:ec2/eipAssociation:EipAssociation":0,"aws:ec2/eipDomainName:EipDomainName":1,"aws:ec2/fleet:Fleet":0,"aws:ec2/flowLog:FlowLog":0,"aws:ec2/imageBlockPublicAccess:ImageBlockPublicAccess":0,"aws:ec2/instance:Instance":0,"aws:ec2/instanceMetadataDefaults:InstanceMetadataDefaults":1,"aws:ec2/internetGateway:InternetGateway":0,"aws:ec2/internetGatewayAttachment:InternetGatewayAttachment":0,"aws:ec2/keyPair:KeyPair":0,"aws:ec2/launchConfiguration:LaunchConfiguration":0,"aws:ec2/launchTemplate:LaunchTemplate":0,"aws:ec2/localGatewayRoute:LocalGatewayRoute":0,"aws:ec2/localGatewayRouteTableVpcAssociation:LocalGatewayRouteTableVpcAssociation":0,"aws:ec2/mainRouteTableAssociation:MainRouteTableAssociation":0,"aws:ec2/managedPrefixList:ManagedPrefixList":0,"aws:ec2/managedPrefixListEntry:ManagedPrefixListEntry":0,"aws:ec2/natGateway:NatGateway":0,"aws:ec2/networkAcl:NetworkAcl":0,"aws:ec2/networkAclAssociation:NetworkAclAssociation":0,"aws:ec2/networkAclRule:NetworkAclRule":0,"aws:ec2/networkInsightsAnalysis:NetworkInsightsAnalysis":0,"aws:ec2/networkInsightsPath:NetworkInsightsPath":0,"aws:ec2/networkInterface:NetworkInterface":0,"aws:ec2/networkInterfaceAttachment:NetworkInterfaceAttachment":0,"aws:ec2/networkInterfaceSecurityGroupAttachment:NetworkInterfaceSecurityGroupAttachment":0,"aws:ec2/peeringConnectionOptions:PeeringConnectionOptions":0,"aws:ec2/placementGroup:PlacementGroup":0,"aws:ec2/proxyProtocolPolicy:ProxyProtocolPolicy":0,"aws:ec2/route:Route":0,"aws:ec2/routeTable:RouteTable":0,"aws:ec2/routeTableAssociation:RouteTableAssociation":0,"aws:ec2/securityGroup:SecurityGroup":0,"aws:ec2/securityGroupAssociation:SecurityGroupAssociation":0,"aws:ec2/securityGroupRule:SecurityGroupRule":0,"aws:ec2/serialConsoleAccess:SerialConsoleAccess":0,"aws:ec2/snapshotCreateVolumePermission:SnapshotCreateVolumePermission":0,"aws:ec2/spotDatafeedSubscription:SpotDatafeedSubscription":0,"aws:ec2/spotFleetRequest:SpotFleetRequest":0,"aws:ec2/spotInstanceRequest:SpotInstanceRequest":0,"aws:ec2/subnet:Subnet":0,"aws:ec2/subnetCidrReservation:SubnetCidrReservation":0,"aws:ec2/tag:Tag":0,"aws:ec2/trafficMirrorFilter:TrafficMirrorFilter":0,"aws:ec2/trafficMirrorFilterRule:TrafficMirrorFilterRule":0,"aws:ec2/trafficMirrorSession:TrafficMirrorSession":0,"aws:ec2/trafficMirrorTarget:TrafficMirrorTarget":0,"aws:ec2/volumeAttachment:VolumeAttachment":0,"aws:ec2/vpc:Vpc":0,"aws:ec2/vpcBlockPublicAccessExclusion:VpcBlockPublicAccessExclusion":1,"aws:ec2/vpcBlockPublicAccessOptions:VpcBlockPublicAccessOptions":1,"aws:ec2/vpcDhcpOptions:VpcDhcpOptions":0,"aws:ec2/vpcDhcpOptionsAssociation:VpcDhcpOptionsAssociation":0,"aws:ec2/vpcEndpoint:VpcEndpoint":0,"aws:ec2/vpcEndpointConnectionAccepter:VpcEndpointConnectionAccepter":0,"aws:ec2/vpcEndpointConnectionNotification:VpcEndpointConnectionNotification":0,"aws:ec2/vpcEndpointPolicy:VpcEndpointPolicy":0,"aws:ec2/vpcEndpointRouteTableAssociation:VpcEndpointRouteTableAssociation":0,"aws:ec2/vpcEndpointService:VpcEndpointService":0,"aws:ec2/vpcEndpointServiceAllowedPrinciple:VpcEndpointServiceAllowedPrinciple":0,"aws:ec2/vpcEndpointSubnetAssociation:VpcEndpointSubnetAssociation":0,"aws:ec2/vpcIpam:VpcIpam":0,"aws:ec2/vpcIpamOrganizationAdminAccount:VpcIpamOrganizationAdminAccount":0,"aws:ec2/vpcIpamPool:VpcIpamPool":0,"aws:ec2/vpcIpamPoolCidr:VpcIpamPoolCidr":0,"aws:ec2/vpcIpamPoolCidrAllocation:VpcIpamPoolCidrAllocation":0,"aws:ec2/vpcIpamPreviewNextCidr:VpcIpamPreviewNextCidr":0,"aws:ec2/vpcIpamResourceDiscovery:VpcIpamResourceDiscovery":0,"aws:ec2/vpcIpamResourceDiscoveryAssociation:VpcIpamResourceDiscoveryAssociation":0,"aws:ec2/vpcIpamScope:VpcIpamScope":0,"aws:ec2/vpcIpv4CidrBlockAssociation:VpcIpv4CidrBlockAssociation":0,"aws:ec2/vpcIpv6CidrBlockAssociation:VpcIpv6CidrBlockAssociation":0,"aws:ec2/vpcNetworkPerformanceMetricSubscription:VpcNetworkPerformanceMetricSubscription":0,"aws:ec2/vpcPeeringConnection:VpcPeeringConnection":0,"aws:ec2/vpcPeeringConnectionAccepter:VpcPeeringConnectionAccepter":0,"aws:ec2/vpnConnection:VpnConnection":0,"aws:ec2/vpnConnectionRoute:VpnConnectionRoute":0,"aws:ec2/vpnGateway:VpnGateway":0,"aws:ec2/vpnGatewayAttachment:VpnGatewayAttachment":0,"aws:ec2/vpnGatewayRoutePropagation:VpnGatewayRoutePropagation":0,"aws:ec2clientvpn/authorizationRule:AuthorizationRule":0,"aws:ec2clientvpn/endpoint:Endpoint":0,"aws:ec2clientvpn/networkAssociation:NetworkAssociation":0,"aws:ec2clientvpn/route:Route":0,"aws:ec2transitgateway/connect:Connect":0,"aws:ec2transitgateway/connectPeer:ConnectPeer":0,"aws:ec2transitgateway/defaultRouteTableAssociation:DefaultRouteTableAssociation":1,"aws:ec2transitgateway/defaultRouteTablePropagation:DefaultRouteTablePropagation":1,"aws:ec2transitgateway/instanceConnectEndpoint:InstanceConnectEndpoint":1,"aws:ec2transitgateway/instanceState:InstanceState":0,"aws:ec2transitgateway/multicastDomain:MulticastDomain":0,"aws:ec2transitgateway/multicastDomainAssociation:MulticastDomainAssociation":0,"aws:ec2transitgateway/multicastGroupMember:MulticastGroupMember":0,"aws:ec2transitgateway/multicastGroupSource:MulticastGroupSource":0,"aws:ec2transitgateway/peeringAttachment:PeeringAttachment":0,"aws:ec2transitgateway/peeringAttachmentAccepter:PeeringAttachmentAccepter":0,"aws:ec2transitgateway/policyTable:PolicyTable":0,"aws:ec2transitgateway/policyTableAssociation:PolicyTableAssociation":0,"aws:ec2transitgateway/prefixListReference:PrefixListReference":0,"aws:ec2transitgateway/route:Route":0,"aws:ec2transitgateway/routeTable:RouteTable":0,"aws:ec2transitgateway/routeTableAssociation:RouteTableAssociation":0,"aws:ec2transitgateway/routeTablePropagation:RouteTablePropagation":0,"aws:ec2transitgateway/transitGateway:TransitGateway":0,"aws:ec2transitgateway/vpcAttachment:VpcAttachment":0,"aws:ec2transitgateway/vpcAttachmentAccepter:VpcAttachmentAccepter":0,"aws:ecr/accountSetting:AccountSetting":1,"aws:ecr/lifecyclePolicy:LifecyclePolicy":0,"aws:ecr/pullThroughCacheRule:PullThroughCacheRule":0,"aws:ecr/registryPolicy:RegistryPolicy":0,"aws:ecr/registryScanningConfiguration:RegistryScanningConfiguration":0,"aws:ecr/replicationConfiguration:ReplicationConfiguration":0,"aws:ecr/repository:Repository":0,"aws:ecr/repositoryCreationTemplate:RepositoryCreationTemplate":0,"aws:ecr/repositoryPolicy:RepositoryPolicy":0,"aws:ecrpublic/repository:Repository":0,"aws:ecrpublic/repositoryPolicy:RepositoryPolicy":0,"aws:ecs/accountSettingDefault:AccountSettingDefault":0,"aws:ecs/capacityProvider:CapacityProvider":0,"aws:ecs/cluster:Cluster":0,"aws:ecs/clusterCapacityProviders:ClusterCapacityProviders":0,"aws:ecs/service:Service":0,"aws:ecs/tag:Tag":0,"aws:ecs/taskDefinition:TaskDefinition":0,"aws:ecs/taskSet:TaskSet":0,"aws:efs/accessPoint:AccessPoint":0,"aws:efs/backupPolicy:BackupPolicy":0,"aws:efs/fileSystem:FileSystem":0,"aws:efs/fileSystemPolicy:FileSystemPolicy":0,"aws:efs/mountTarget:MountTarget":0,"aws:efs/replicationConfiguration:ReplicationConfiguration":0,"aws:eks/accessEntry:AccessEntry":0,"aws:eks/accessPolicyAssociation:AccessPolicyAssociation":0,"aws:eks/addon:Addon":0,"aws:eks/cluster:Cluster":0,"aws:eks/fargateProfile:FargateProfile":0,"aws:eks/identityProviderConfig:IdentityProviderConfig":0,"aws:eks/nodeGroup:NodeGroup":0,"aws:eks/podIdentityAssociation:PodIdentityAssociation":1,"aws:elasticache/cluster:Cluster":0,"aws:elasticache/globalReplicationGroup:GlobalReplicationGroup":0,"aws:elasticache/parameterGroup:ParameterGroup":0,"aws:elasticache/replicationGroup:ReplicationGroup":0,"aws:elasticache/reservedCacheNode:ReservedCacheNode":1,"aws:elasticache/serverlessCache:ServerlessCache":1,"aws:elasticache/subnetGroup:SubnetGroup":0,"aws:elasticache/user:User":0,"aws:elasticache/userGroup:UserGroup":0,"aws:elasticache/userGroupAssociation:UserGroupAssociation":0,"aws:elasticbeanstalk/application:Application":0,"aws:elasticbeanstalk/applicationVersion:ApplicationVersion":0,"aws:elasticbeanstalk/configurationTemplate:ConfigurationTemplate":0,"aws:elasticbeanstalk/environment:Environment":0,"aws:elasticsearch/domain:Domain":0,"aws:elasticsearch/domainPolicy:DomainPolicy":0,"aws:elasticsearch/domainSamlOptions:DomainSamlOptions":0,"aws:elasticsearch/vpcEndpoint:VpcEndpoint":0,"aws:elastictranscoder/pipeline:Pipeline":0,"aws:elastictranscoder/preset:Preset":0,"aws:elb/appCookieStickinessPolicy:AppCookieStickinessPolicy":0,"aws:elb/attachment:Attachment":0,"aws:elb/listenerPolicy:ListenerPolicy":0,"aws:elb/loadBalancer:LoadBalancer":0,"aws:elb/loadBalancerBackendServerPolicy:LoadBalancerBackendServerPolicy":0,"aws:elb/loadBalancerCookieStickinessPolicy:LoadBalancerCookieStickinessPolicy":0,"aws:elb/loadBalancerPolicy:LoadBalancerPolicy":0,"aws:elb/sslNegotiationPolicy:SslNegotiationPolicy":0,"aws:emr/blockPublicAccessConfiguration:BlockPublicAccessConfiguration":0,"aws:emr/cluster:Cluster":0,"aws:emr/instanceFleet:InstanceFleet":0,"aws:emr/instanceGroup:InstanceGroup":0,"aws:emr/managedScalingPolicy:ManagedScalingPolicy":0,"aws:emr/securityConfiguration:SecurityConfiguration":0,"aws:emr/studio:Studio":0,"aws:emr/studioSessionMapping:StudioSessionMapping":0,"aws:emrcontainers/jobTemplate:JobTemplate":0,"aws:emrcontainers/virtualCluster:VirtualCluster":0,"aws:emrserverless/application:Application":0,"aws:evidently/feature:Feature":0,"aws:evidently/launch:Launch":0,"aws:evidently/project:Project":0,"aws:evidently/segment:Segment":0,"aws:finspace/kxCluster:KxCluster":0,"aws:finspace/kxDatabase:KxDatabase":0,"aws:finspace/kxDataview:KxDataview":0,"aws:finspace/kxEnvironment:KxEnvironment":0,"aws:finspace/kxScalingGroup:KxScalingGroup":0,"aws:finspace/kxUser:KxUser":0,"aws:finspace/kxVolume:KxVolume":0,"aws:fis/experimentTemplate:ExperimentTemplate":0,"aws:fms/adminAccount:AdminAccount":0,"aws:fms/policy:Policy":0,"aws:fms/resourceSet:ResourceSet":1,"aws:fsx/backup:Backup":0,"aws:fsx/dataRepositoryAssociation:DataRepositoryAssociation":0,"aws:fsx/fileCache:FileCache":0,"aws:fsx/lustreFileSystem:LustreFileSystem":0,"aws:fsx/ontapFileSystem:OntapFileSystem":0,"aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine":0,"aws:fsx/ontapVolume:OntapVolume":0,"aws:fsx/openZfsFileSystem:OpenZfsFileSystem":0,"aws:fsx/openZfsSnapshot:OpenZfsSnapshot":0,"aws:fsx/openZfsVolume:OpenZfsVolume":0,"aws:fsx/windowsFileSystem:WindowsFileSystem":0,"aws:gamelift/alias:Alias":0,"aws:gamelift/build:Build":0,"aws:gamelift/fleet:Fleet":0,"aws:gamelift/gameServerGroup:GameServerGroup":0,"aws:gamelift/gameSessionQueue:GameSessionQueue":0,"aws:gamelift/matchmakingConfiguration:MatchmakingConfiguration":0,"aws:gamelift/matchmakingRuleSet:MatchmakingRuleSet":0,"aws:gamelift/script:Script":0,"aws:glacier/vault:Vault":0,"aws:glacier/vaultLock:VaultLock":0,"aws:globalaccelerator/accelerator:Accelerator":0,"aws:globalaccelerator/crossAccountAttachment:CrossAccountAttachment":1,"aws:globalaccelerator/customRoutingAccelerator:CustomRoutingAccelerator":0,"aws:globalaccelerator/customRoutingEndpointGroup:CustomRoutingEndpointGroup":0,"aws:globalaccelerator/customRoutingListener:CustomRoutingListener":0,"aws:globalaccelerator/endpointGroup:EndpointGroup":0,"aws:globalaccelerator/listener:Listener":0,"aws:glue/catalogDatabase:CatalogDatabase":0,"aws:glue/catalogTable:CatalogTable":0,"aws:glue/catalogTableOptimizer:CatalogTableOptimizer":1,"aws:glue/classifier:Classifier":0,"aws:glue/connection:Connection":0,"aws:glue/crawler:Crawler":0,"aws:glue/dataCatalogEncryptionSettings:DataCatalogEncryptionSettings":0,"aws:glue/dataQualityRuleset:DataQualityRuleset":0,"aws:glue/devEndpoint:DevEndpoint":0,"aws:glue/job:Job":0,"aws:glue/mLTransform:MLTransform":0,"aws:glue/partition:Partition":0,"aws:glue/partitionIndex:PartitionIndex":0,"aws:glue/registry:Registry":0,"aws:glue/resourcePolicy:ResourcePolicy":0,"aws:glue/schema:Schema":0,"aws:glue/securityConfiguration:SecurityConfiguration":0,"aws:glue/trigger:Trigger":0,"aws:glue/userDefinedFunction:UserDefinedFunction":0,"aws:glue/workflow:Workflow":0,"aws:grafana/licenseAssociation:LicenseAssociation":0,"aws:grafana/roleAssociation:RoleAssociation":0,"aws:grafana/workspace:Workspace":0,"aws:grafana/workspaceApiKey:WorkspaceApiKey":0,"aws:grafana/workspaceSamlConfiguration:WorkspaceSamlConfiguration":0,"aws:grafana/workspaceServiceAccount:WorkspaceServiceAccount":1,"aws:grafana/workspaceServiceAccountToken:WorkspaceServiceAccountToken":1,"aws:guardduty/detector:Detector":0,"aws:guardduty/detectorFeature:DetectorFeature":0,"aws:guardduty/filter:Filter":0,"aws:guardduty/iPSet:IPSet":0,"aws:guardduty/inviteAccepter:InviteAccepter":0,"aws:guardduty/malwareProtectionPlan:MalwareProtectionPlan":1,"aws:guardduty/member:Member":0,"aws:guardduty/organizationAdminAccount:OrganizationAdminAccount":0,"aws:guardduty/organizationConfiguration:OrganizationConfiguration":0,"aws:guardduty/organizationConfigurationFeature:OrganizationConfigurationFeature":0,"aws:guardduty/publishingDestination:PublishingDestination":0,"aws:guardduty/threatIntelSet:ThreatIntelSet":0,"aws:iam/accessKey:AccessKey":0,"aws:iam/accountAlias:AccountAlias":0,"aws:iam/accountPasswordPolicy:AccountPasswordPolicy":0,"aws:iam/group:Group":0,"aws:iam/groupMembership:GroupMembership":0,"aws:iam/groupPoliciesExclusive:GroupPoliciesExclusive":1,"aws:iam/groupPolicy:GroupPolicy":0,"aws:iam/groupPolicyAttachment:GroupPolicyAttachment":0,"aws:iam/groupPolicyAttachmentsExclusive:GroupPolicyAttachmentsExclusive":1,"aws:iam/instanceProfile:InstanceProfile":0,"aws:iam/openIdConnectProvider:OpenIdConnectProvider":0,"aws:iam/organizationsFeatures:OrganizationsFeatures":1,"aws:iam/policy:Policy":0,"aws:iam/policyAttachment:PolicyAttachment":0,"aws:iam/role:Role":0,"aws:iam/rolePoliciesExclusive:RolePoliciesExclusive":1,"aws:iam/rolePolicy:RolePolicy":0,"aws:iam/rolePolicyAttachment:RolePolicyAttachment":0,"aws:iam/rolePolicyAttachmentsExclusive:RolePolicyAttachmentsExclusive":1,"aws:iam/samlProvider:SamlProvider":0,"aws:iam/securityTokenServicePreferences:SecurityTokenServicePreferences":0,"aws:iam/serverCertificate:ServerCertificate":0,"aws:iam/serviceLinkedRole:ServiceLinkedRole":0,"aws:iam/serviceSpecificCredential:ServiceSpecificCredential":0,"aws:iam/signingCertificate:SigningCertificate":0,"aws:iam/sshKey:SshKey":0,"aws:iam/user:User":0,"aws:iam/userGroupMembership:UserGroupMembership":0,"aws:iam/userLoginProfile:UserLoginProfile":0,"aws:iam/userPoliciesExclusive:UserPoliciesExclusive":1,"aws:iam/userPolicy:UserPolicy":0,"aws:iam/userPolicyAttachment:UserPolicyAttachment":0,"aws:iam/userPolicyAttachmentsExclusive:UserPolicyAttachmentsExclusive":1,"aws:iam/virtualMfaDevice:VirtualMfaDevice":0,"aws:identitystore/group:Group":0,"aws:identitystore/groupMembership:GroupMembership":0,"aws:identitystore/user:User":0,"aws:imagebuilder/component:Component":0,"aws:imagebuilder/containerRecipe:ContainerRecipe":0,"aws:imagebuilder/distributionConfiguration:DistributionConfiguration":0,"aws:imagebuilder/image:Image":0,"aws:imagebuilder/imagePipeline:ImagePipeline":0,"aws:imagebuilder/imageRecipe:ImageRecipe":0,"aws:imagebuilder/infrastructureConfiguration:InfrastructureConfiguration":0,"aws:imagebuilder/lifecyclePolicy:LifecyclePolicy":1,"aws:imagebuilder/workflow:Workflow":0,"aws:inspector/assessmentTarget:AssessmentTarget":0,"aws:inspector/assessmentTemplate:AssessmentTemplate":0,"aws:inspector/resourceGroup:ResourceGroup":0,"aws:inspector2/delegatedAdminAccount:DelegatedAdminAccount":0,"aws:inspector2/enabler:Enabler":0,"aws:inspector2/memberAssociation:MemberAssociation":0,"aws:inspector2/organizationConfiguration:OrganizationConfiguration":0,"aws:iot/authorizer:Authorizer":0,"aws:iot/billingGroup:BillingGroup":1,"aws:iot/caCertificate:CaCertificate":0,"aws:iot/certificate:Certificate":0,"aws:iot/domainConfiguration:DomainConfiguration":0,"aws:iot/eventConfigurations:EventConfigurations":0,"aws:iot/indexingConfiguration:IndexingConfiguration":0,"aws:iot/loggingOptions:LoggingOptions":0,"aws:iot/policy:Policy":0,"aws:iot/policyAttachment:PolicyAttachment":0,"aws:iot/provisioningTemplate:ProvisioningTemplate":0,"aws:iot/roleAlias:RoleAlias":0,"aws:iot/thing:Thing":0,"aws:iot/thingGroup:ThingGroup":0,"aws:iot/thingGroupMembership:ThingGroupMembership":0,"aws:iot/thingPrincipalAttachment:ThingPrincipalAttachment":0,"aws:iot/thingType:ThingType":0,"aws:iot/topicRule:TopicRule":0,"aws:iot/topicRuleDestination:TopicRuleDestination":0,"aws:ivs/channel:Channel":0,"aws:ivs/playbackKeyPair:PlaybackKeyPair":0,"aws:ivs/recordingConfiguration:RecordingConfiguration":0,"aws:ivschat/loggingConfiguration:LoggingConfiguration":0,"aws:ivschat/room:Room":0,"aws:kendra/dataSource:DataSource":0,"aws:kendra/experience:Experience":0,"aws:kendra/faq:Faq":0,"aws:kendra/index:Index":0,"aws:kendra/querySuggestionsBlockList:QuerySuggestionsBlockList":0,"aws:kendra/thesaurus:Thesaurus":0,"aws:keyspaces/keyspace:Keyspace":0,"aws:keyspaces/table:Table":0,"aws:kinesis/analyticsApplication:AnalyticsApplication":0,"aws:kinesis/firehoseDeliveryStream:FirehoseDeliveryStream":0,"aws:kinesis/resourcePolicy:ResourcePolicy":1,"aws:kinesis/stream:Stream":0,"aws:kinesis/streamConsumer:StreamConsumer":0,"aws:kinesis/videoStream:VideoStream":0,"aws:kinesisanalyticsv2/application:Application":0,"aws:kinesisanalyticsv2/applicationSnapshot:ApplicationSnapshot":0,"aws:kms/alias:Alias":0,"aws:kms/ciphertext:Ciphertext":0,"aws:kms/customKeyStore:CustomKeyStore":0,"aws:kms/externalKey:ExternalKey":0,"aws:kms/grant:Grant":0,"aws:kms/key:Key":0,"aws:kms/keyPolicy:KeyPolicy":0,"aws:kms/replicaExternalKey:ReplicaExternalKey":0,"aws:kms/replicaKey:ReplicaKey":0,"aws:lakeformation/dataCellsFilter:DataCellsFilter":1,"aws:lakeformation/dataLakeSettings:DataLakeSettings":0,"aws:lakeformation/lfTag:LfTag":0,"aws:lakeformation/permissions:Permissions":0,"aws:lakeformation/resource:Resource":0,"aws:lakeformation/resourceLfTag:ResourceLfTag":1,"aws:lakeformation/resourceLfTags:ResourceLfTags":0,"aws:lambda/alias:Alias":0,"aws:lambda/codeSigningConfig:CodeSigningConfig":0,"aws:lambda/eventSourceMapping:EventSourceMapping":0,"aws:lambda/function:Function":0,"aws:lambda/functionEventInvokeConfig:FunctionEventInvokeConfig":0,"aws:lambda/functionRecursionConfig:FunctionRecursionConfig":1,"aws:lambda/functionUrl:FunctionUrl":0,"aws:lambda/invocation:Invocation":0,"aws:lambda/layerVersion:LayerVersion":0,"aws:lambda/layerVersionPermission:LayerVersionPermission":0,"aws:lambda/permission:Permission":0,"aws:lambda/provisionedConcurrencyConfig:ProvisionedConcurrencyConfig":0,"aws:lambda/runtimeManagementConfig:RuntimeManagementConfig":1,"aws:lb/listener:Listener":0,"aws:lb/listenerCertificate:ListenerCertificate":0,"aws:lb/listenerRule:ListenerRule":0,"aws:lb/loadBalancer:LoadBalancer":0,"aws:lb/targetGroup:TargetGroup":0,"aws:lb/targetGroupAttachment:TargetGroupAttachment":0,"aws:lb/trustStore:TrustStore":0,"aws:lb/trustStoreRevocation:TrustStoreRevocation":0,"aws:lex/bot:Bot":0,"aws:lex/botAlias:BotAlias":0,"aws:lex/intent:Intent":0,"aws:lex/slotType:SlotType":0,"aws:lex/v2modelsBot:V2modelsBot":1,"aws:lex/v2modelsBotLocale:V2modelsBotLocale":1,"aws:lex/v2modelsBotVersion:V2modelsBotVersion":1,"aws:lex/v2modelsIntent:V2modelsIntent":1,"aws:lex/v2modelsSlot:V2modelsSlot":1,"aws:lex/v2modelsSlotType:V2modelsSlotType":1,"aws:licensemanager/association:Association":0,"aws:licensemanager/licenseConfiguration:LicenseConfiguration":0,"aws:licensemanager/licenseGrant:LicenseGrant":0,"aws:licensemanager/licenseGrantAccepter:LicenseGrantAccepter":0,"aws:lightsail/bucket:Bucket":0,"aws:lightsail/bucketAccessKey:BucketAccessKey":0,"aws:lightsail/bucketResourceAccess:BucketResourceAccess":0,"aws:lightsail/certificate:Certificate":0,"aws:lightsail/containerService:ContainerService":0,"aws:lightsail/containerServiceDeploymentVersion:ContainerServiceDeploymentVersion":0,"aws:lightsail/database:Database":0,"aws:lightsail/disk:Disk":0,"aws:lightsail/disk_attachment:Disk_attachment":0,"aws:lightsail/distribution:Distribution":0,"aws:lightsail/domain:Domain":0,"aws:lightsail/domainEntry:DomainEntry":0,"aws:lightsail/instance:Instance":0,"aws:lightsail/instancePublicPorts:InstancePublicPorts":0,"aws:lightsail/keyPair:KeyPair":0,"aws:lightsail/lb:Lb":0,"aws:lightsail/lbAttachment:LbAttachment":0,"aws:lightsail/lbCertificate:LbCertificate":0,"aws:lightsail/lbCertificateAttachment:LbCertificateAttachment":0,"aws:lightsail/lbHttpsRedirectionPolicy:LbHttpsRedirectionPolicy":0,"aws:lightsail/lbStickinessPolicy:LbStickinessPolicy":0,"aws:lightsail/staticIp:StaticIp":0,"aws:lightsail/staticIpAttachment:StaticIpAttachment":0,"aws:location/geofenceCollection:GeofenceCollection":0,"aws:location/map:Map":0,"aws:location/placeIndex:PlaceIndex":0,"aws:location/routeCalculation:RouteCalculation":0,"aws:location/tracker:Tracker":0,"aws:location/trackerAssociation:TrackerAssociation":0,"aws:m2/application:Application":1,"aws:m2/deployment:Deployment":1,"aws:m2/environment:Environment":1,"aws:macie/customDataIdentifier:CustomDataIdentifier":0,"aws:macie/findingsFilter:FindingsFilter":0,"aws:macie2/account:Account":0,"aws:macie2/classificationExportConfiguration:ClassificationExportConfiguration":0,"aws:macie2/classificationJob:ClassificationJob":0,"aws:macie2/invitationAccepter:InvitationAccepter":0,"aws:macie2/member:Member":0,"aws:macie2/organizationAdminAccount:OrganizationAdminAccount":0,"aws:mediaconvert/queue:Queue":0,"aws:medialive/channel:Channel":0,"aws:medialive/input:Input":0,"aws:medialive/inputSecurityGroup:InputSecurityGroup":0,"aws:medialive/multiplex:Multiplex":0,"aws:medialive/multiplexProgram:MultiplexProgram":1,"aws:mediapackage/channel:Channel":0,"aws:mediastore/container:Container":0,"aws:mediastore/containerPolicy:ContainerPolicy":0,"aws:memorydb/acl:Acl":0,"aws:memorydb/cluster:Cluster":0,"aws:memorydb/multiRegionCluster:MultiRegionCluster":1,"aws:memorydb/parameterGroup:ParameterGroup":0,"aws:memorydb/snapshot:Snapshot":0,"aws:memorydb/subnetGroup:SubnetGroup":0,"aws:memorydb/user:User":0,"aws:mq/broker:Broker":0,"aws:mq/configuration:Configuration":0,"aws:msk/cluster:Cluster":0,"aws:msk/clusterPolicy:ClusterPolicy":0,"aws:msk/configuration:Configuration":0,"aws:msk/replicator:Replicator":0,"aws:msk/scramSecretAssociation:ScramSecretAssociation":0,"aws:msk/serverlessCluster:ServerlessCluster":0,"aws:msk/singleScramSecretAssociation:SingleScramSecretAssociation":1,"aws:msk/vpcConnection:VpcConnection":0,"aws:mskconnect/connector:Connector":0,"aws:mskconnect/customPlugin:CustomPlugin":0,"aws:mskconnect/workerConfiguration:WorkerConfiguration":0,"aws:mwaa/environment:Environment":0,"aws:neptune/cluster:Cluster":0,"aws:neptune/clusterEndpoint:ClusterEndpoint":0,"aws:neptune/clusterInstance:ClusterInstance":0,"aws:neptune/clusterParameterGroup:ClusterParameterGroup":0,"aws:neptune/clusterSnapshot:ClusterSnapshot":0,"aws:neptune/eventSubscription:EventSubscription":0,"aws:neptune/globalCluster:GlobalCluster":0,"aws:neptune/parameterGroup:ParameterGroup":0,"aws:neptune/subnetGroup:SubnetGroup":0,"aws:networkfirewall/firewall:Firewall":0,"aws:networkfirewall/firewallPolicy:FirewallPolicy":0,"aws:networkfirewall/loggingConfiguration:LoggingConfiguration":0,"aws:networkfirewall/resourcePolicy:ResourcePolicy":0,"aws:networkfirewall/ruleGroup:RuleGroup":0,"aws:networkfirewall/tlsInspectionConfiguration:TlsInspectionConfiguration":1,"aws:networkmanager/attachmentAccepter:AttachmentAccepter":0,"aws:networkmanager/connectAttachment:ConnectAttachment":0,"aws:networkmanager/connectPeer:ConnectPeer":0,"aws:networkmanager/connection:Connection":0,"aws:networkmanager/coreNetwork:CoreNetwork":0,"aws:networkmanager/coreNetworkPolicyAttachment:CoreNetworkPolicyAttachment":0,"aws:networkmanager/customerGatewayAssociation:CustomerGatewayAssociation":0,"aws:networkmanager/device:Device":0,"aws:networkmanager/dxGatewayAttachment:DxGatewayAttachment":1,"aws:networkmanager/globalNetwork:GlobalNetwork":0,"aws:networkmanager/link:Link":0,"aws:networkmanager/linkAssociation:LinkAssociation":0,"aws:networkmanager/site:Site":0,"aws:networkmanager/siteToSiteVpnAttachment:SiteToSiteVpnAttachment":0,"aws:networkmanager/transitGatewayConnectPeerAssociation:TransitGatewayConnectPeerAssociation":0,"aws:networkmanager/transitGatewayPeering:TransitGatewayPeering":0,"aws:networkmanager/transitGatewayRegistration:TransitGatewayRegistration":0,"aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment":0,"aws:networkmanager/vpcAttachment:VpcAttachment":0,"aws:networkmonitor/monitor:Monitor":1,"aws:networkmonitor/probe:Probe":1,"aws:oam/link:Link":0,"aws:oam/sink:Sink":0,"aws:oam/sinkPolicy:SinkPolicy":0,"aws:opensearch/authorizeVpcEndpointAccess:AuthorizeVpcEndpointAccess":1,"aws:opensearch/domain:Domain":0,"aws:opensearch/domainPolicy:DomainPolicy":0,"aws:opensearch/domainSamlOptions:DomainSamlOptions":0,"aws:opensearch/inboundConnectionAccepter:InboundConnectionAccepter":0,"aws:opensearch/outboundConnection:OutboundConnection":0,"aws:opensearch/package:Package":0,"aws:opensearch/packageAssociation:PackageAssociation":0,"aws:opensearch/serverlessAccessPolicy:ServerlessAccessPolicy":1,"aws:opensearch/serverlessCollection:ServerlessCollection":1,"aws:opensearch/serverlessLifecyclePolicy:ServerlessLifecyclePolicy":1,"aws:opensearch/serverlessSecurityConfig:ServerlessSecurityConfig":1,"aws:opensearch/serverlessSecurityPolicy:ServerlessSecurityPolicy":1,"aws:opensearch/serverlessVpcEndpoint:ServerlessVpcEndpoint":1,"aws:opensearch/vpcEndpoint:VpcEndpoint":0,"aws:opensearchingest/pipeline:Pipeline":1,"aws:opsworks/application:Application":0,"aws:opsworks/customLayer:CustomLayer":0,"aws:opsworks/ecsClusterLayer:EcsClusterLayer":0,"aws:opsworks/gangliaLayer:GangliaLayer":0,"aws:opsworks/haproxyLayer:HaproxyLayer":0,"aws:opsworks/instance:Instance":0,"aws:opsworks/javaAppLayer:JavaAppLayer":0,"aws:opsworks/memcachedLayer:MemcachedLayer":0,"aws:opsworks/mysqlLayer:MysqlLayer":0,"aws:opsworks/nodejsAppLayer:NodejsAppLayer":0,"aws:opsworks/permission:Permission":0,"aws:opsworks/phpAppLayer:PhpAppLayer":0,"aws:opsworks/railsAppLayer:RailsAppLayer":0,"aws:opsworks/rdsDbInstance:RdsDbInstance":0,"aws:opsworks/stack:Stack":0,"aws:opsworks/staticWebLayer:StaticWebLayer":0,"aws:opsworks/userProfile:UserProfile":0,"aws:organizations/account:Account":0,"aws:organizations/delegatedAdministrator:DelegatedAdministrator":0,"aws:organizations/organization:Organization":0,"aws:organizations/organizationalUnit:OrganizationalUnit":0,"aws:organizations/policy:Policy":0,"aws:organizations/policyAttachment:PolicyAttachment":0,"aws:organizations/resourcePolicy:ResourcePolicy":0,"aws:paymentcryptography/key:Key":1,"aws:paymentcryptography/keyAlias:KeyAlias":1,"aws:pinpoint/admChannel:AdmChannel":0,"aws:pinpoint/apnsChannel:ApnsChannel":0,"aws:pinpoint/apnsSandboxChannel:ApnsSandboxChannel":0,"aws:pinpoint/apnsVoipChannel:ApnsVoipChannel":0,"aws:pinpoint/apnsVoipSandboxChannel:ApnsVoipSandboxChannel":0,"aws:pinpoint/app:App":0,"aws:pinpoint/baiduChannel:BaiduChannel":0,"aws:pinpoint/emailChannel:EmailChannel":0,"aws:pinpoint/emailTemplate:EmailTemplate":1,"aws:pinpoint/eventStream:EventStream":0,"aws:pinpoint/gcmChannel:GcmChannel":0,"aws:pinpoint/smsChannel:SmsChannel":0,"aws:pinpoint/smsvoicev2ConfigurationSet:Smsvoicev2ConfigurationSet":1,"aws:pinpoint/smsvoicev2OptOutList:Smsvoicev2OptOutList":1,"aws:pinpoint/smsvoicev2PhoneNumber:Smsvoicev2PhoneNumber":1,"aws:pipes/pipe:Pipe":0,"aws:qldb/ledger:Ledger":0,"aws:qldb/stream:Stream":0,"aws:quicksight/accountSubscription:AccountSubscription":0,"aws:quicksight/analysis:Analysis":0,"aws:quicksight/dashboard:Dashboard":0,"aws:quicksight/dataSet:DataSet":0,"aws:quicksight/dataSource:DataSource":0,"aws:quicksight/folder:Folder":0,"aws:quicksight/folderMembership:FolderMembership":1,"aws:quicksight/group:Group":0,"aws:quicksight/groupMembership:GroupMembership":0,"aws:quicksight/iamPolicyAssignment:IamPolicyAssignment":1,"aws:quicksight/ingestion:Ingestion":1,"aws:quicksight/namespace:Namespace":1,"aws:quicksight/refreshSchedule:RefreshSchedule":1,"aws:quicksight/template:Template":0,"aws:quicksight/templateAlias:TemplateAlias":1,"aws:quicksight/theme:Theme":0,"aws:quicksight/user:User":0,"aws:quicksight/vpcConnection:VpcConnection":1,"aws:ram/principalAssociation:PrincipalAssociation":0,"aws:ram/resourceAssociation:ResourceAssociation":0,"aws:ram/resourceShare:ResourceShare":0,"aws:ram/resourceShareAccepter:ResourceShareAccepter":0,"aws:ram/sharingWithOrganization:SharingWithOrganization":0,"aws:rbin/rule:Rule":0,"aws:rds/certificate:Certificate":0,"aws:rds/cluster:Cluster":0,"aws:rds/clusterActivityStream:ClusterActivityStream":0,"aws:rds/clusterEndpoint:ClusterEndpoint":0,"aws:rds/clusterInstance:ClusterInstance":0,"aws:rds/clusterParameterGroup:ClusterParameterGroup":0,"aws:rds/clusterRoleAssociation:ClusterRoleAssociation":0,"aws:rds/clusterSnapshot:ClusterSnapshot":0,"aws:rds/clusterSnapshotCopy:ClusterSnapshotCopy":1,"aws:rds/customDbEngineVersion:CustomDbEngineVersion":0,"aws:rds/eventSubscription:EventSubscription":0,"aws:rds/exportTask:ExportTask":1,"aws:rds/globalCluster:GlobalCluster":0,"aws:rds/instance:Instance":0,"aws:rds/instanceAutomatedBackupsReplication:InstanceAutomatedBackupsReplication":0,"aws:rds/instanceDesiredState:InstanceDesiredState":1,"aws:rds/integration:Integration":1,"aws:rds/optionGroup:OptionGroup":0,"aws:rds/parameterGroup:ParameterGroup":0,"aws:rds/proxy:Proxy":0,"aws:rds/proxyDefaultTargetGroup:ProxyDefaultTargetGroup":0,"aws:rds/proxyEndpoint:ProxyEndpoint":0,"aws:rds/proxyTarget:ProxyTarget":0,"aws:rds/reservedInstance:ReservedInstance":0,"aws:rds/roleAssociation:RoleAssociation":0,"aws:rds/snapshot:Snapshot":0,"aws:rds/snapshotCopy:SnapshotCopy":0,"aws:rds/subnetGroup:SubnetGroup":0,"aws:redshift/authenticationProfile:AuthenticationProfile":0,"aws:redshift/cluster:Cluster":0,"aws:redshift/clusterIamRoles:ClusterIamRoles":0,"aws:redshift/clusterSnapshot:ClusterSnapshot":0,"aws:redshift/dataShareAuthorization:DataShareAuthorization":1,"aws:redshift/dataShareConsumerAssociation:DataShareConsumerAssociation":1,"aws:redshift/endpointAccess:EndpointAccess":0,"aws:redshift/endpointAuthorization:EndpointAuthorization":0,"aws:redshift/eventSubscription:EventSubscription":0,"aws:redshift/hsmClientCertificate:HsmClientCertificate":0,"aws:redshift/hsmConfiguration:HsmConfiguration":0,"aws:redshift/logging:Logging":1,"aws:redshift/parameterGroup:ParameterGroup":0,"aws:redshift/partner:Partner":0,"aws:redshift/resourcePolicy:ResourcePolicy":0,"aws:redshift/scheduledAction:ScheduledAction":0,"aws:redshift/snapshotCopy:SnapshotCopy":1,"aws:redshift/snapshotCopyGrant:SnapshotCopyGrant":0,"aws:redshift/snapshotSchedule:SnapshotSchedule":0,"aws:redshift/snapshotScheduleAssociation:SnapshotScheduleAssociation":0,"aws:redshift/subnetGroup:SubnetGroup":0,"aws:redshift/usageLimit:UsageLimit":0,"aws:redshiftdata/statement:Statement":0,"aws:redshiftserverless/customDomainAssociation:CustomDomainAssociation":1,"aws:redshiftserverless/endpointAccess:EndpointAccess":0,"aws:redshiftserverless/namespace:Namespace":0,"aws:redshiftserverless/resourcePolicy:ResourcePolicy":0,"aws:redshiftserverless/snapshot:Snapshot":0,"aws:redshiftserverless/usageLimit:UsageLimit":0,"aws:redshiftserverless/workgroup:Workgroup":0,"aws:rekognition/collection:Collection":1,"aws:rekognition/project:Project":1,"aws:rekognition/streamProcessor:StreamProcessor":1,"aws:resiliencehub/resiliencyPolicy:ResiliencyPolicy":1,"aws:resourceexplorer/index:Index":1,"aws:resourceexplorer/view:View":1,"aws:resourcegroups/group:Group":0,"aws:resourcegroups/resource:Resource":0,"aws:rolesanywhere/profile:Profile":0,"aws:rolesanywhere/trustAnchor:TrustAnchor":0,"aws:route53/cidrCollection:CidrCollection":1,"aws:route53/cidrLocation:CidrLocation":1,"aws:route53/delegationSet:DelegationSet":0,"aws:route53/healthCheck:HealthCheck":0,"aws:route53/hostedZoneDnsSec:HostedZoneDnsSec":0,"aws:route53/keySigningKey:KeySigningKey":0,"aws:route53/profilesAssociation:ProfilesAssociation":1,"aws:route53/profilesProfile:ProfilesProfile":1,"aws:route53/profilesResourceAssociation:ProfilesResourceAssociation":1,"aws:route53/queryLog:QueryLog":0,"aws:route53/record:Record":0,"aws:route53/resolverConfig:ResolverConfig":0,"aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig":0,"aws:route53/resolverEndpoint:ResolverEndpoint":0,"aws:route53/resolverFirewallConfig:ResolverFirewallConfig":0,"aws:route53/resolverFirewallDomainList:ResolverFirewallDomainList":0,"aws:route53/resolverFirewallRule:ResolverFirewallRule":0,"aws:route53/resolverFirewallRuleGroup:ResolverFirewallRuleGroup":0,"aws:route53/resolverFirewallRuleGroupAssociation:ResolverFirewallRuleGroupAssociation":0,"aws:route53/resolverQueryLogConfig:ResolverQueryLogConfig":0,"aws:route53/resolverQueryLogConfigAssociation:ResolverQueryLogConfigAssociation":0,"aws:route53/resolverRule:ResolverRule":0,"aws:route53/resolverRuleAssociation:ResolverRuleAssociation":0,"aws:route53/trafficPolicy:TrafficPolicy":0,"aws:route53/trafficPolicyInstance:TrafficPolicyInstance":0,"aws:route53/vpcAssociationAuthorization:VpcAssociationAuthorization":0,"aws:route53/zone:Zone":0,"aws:route53/zoneAssociation:ZoneAssociation":0,"aws:route53domains/delegationSignerRecord:DelegationSignerRecord":1,"aws:route53domains/registeredDomain:RegisteredDomain":0,"aws:route53recoverycontrol/cluster:Cluster":0,"aws:route53recoverycontrol/controlPanel:ControlPanel":0,"aws:route53recoverycontrol/routingControl:RoutingControl":0,"aws:route53recoverycontrol/safetyRule:SafetyRule":0,"aws:route53recoveryreadiness/cell:Cell":0,"aws:route53recoveryreadiness/readinessCheck:ReadinessCheck":0,"aws:route53recoveryreadiness/recoveryGroup:RecoveryGroup":0,"aws:route53recoveryreadiness/resourceSet:ResourceSet":0,"aws:rum/appMonitor:AppMonitor":0,"aws:rum/metricsDestination:MetricsDestination":0,"aws:s3/accessPoint:AccessPoint":0,"aws:s3/accountPublicAccessBlock:AccountPublicAccessBlock":0,"aws:s3/analyticsConfiguration:AnalyticsConfiguration":0,"aws:s3/bucket:Bucket":0,"aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2":0,"aws:s3/bucketAclV2:BucketAclV2":0,"aws:s3/bucketCorsConfigurationV2:BucketCorsConfigurationV2":0,"aws:s3/bucketIntelligentTieringConfiguration:BucketIntelligentTieringConfiguration":0,"aws:s3/bucketLifecycleConfigurationV2:BucketLifecycleConfigurationV2":0,"aws:s3/bucketLoggingV2:BucketLoggingV2":0,"aws:s3/bucketMetric:BucketMetric":0,"aws:s3/bucketNotification:BucketNotification":0,"aws:s3/bucketObject:BucketObject":0,"aws:s3/bucketObjectLockConfigurationV2:BucketObjectLockConfigurationV2":0,"aws:s3/bucketObjectv2:BucketObjectv2":0,"aws:s3/bucketOwnershipControls:BucketOwnershipControls":0,"aws:s3/bucketPolicy:BucketPolicy":0,"aws:s3/bucketPublicAccessBlock:BucketPublicAccessBlock":0,"aws:s3/bucketReplicationConfig:BucketReplicationConfig":0,"aws:s3/bucketRequestPaymentConfigurationV2:BucketRequestPaymentConfigurationV2":0,"aws:s3/bucketServerSideEncryptionConfigurationV2:BucketServerSideEncryptionConfigurationV2":0,"aws:s3/bucketV2:BucketV2":0,"aws:s3/bucketVersioningV2:BucketVersioningV2":0,"aws:s3/bucketWebsiteConfigurationV2:BucketWebsiteConfigurationV2":0,"aws:s3/directoryBucket:DirectoryBucket":1,"aws:s3/inventory:Inventory":0,"aws:s3/objectCopy:ObjectCopy":0,"aws:s3control/accessGrant:AccessGrant":1,"aws:s3control/accessGrantsInstance:AccessGrantsInstance":1,"aws:s3control/accessGrantsInstanceResourcePolicy:AccessGrantsInstanceResourcePolicy":1,"aws:s3control/accessGrantsLocation:AccessGrantsLocation":1,"aws:s3control/accessPointPolicy:AccessPointPolicy":0,"aws:s3control/bucket:Bucket":0,"aws:s3control/bucketLifecycleConfiguration:BucketLifecycleConfiguration":0,"aws:s3control/bucketPolicy:BucketPolicy":0,"aws:s3control/multiRegionAccessPoint:MultiRegionAccessPoint":0,"aws:s3control/multiRegionAccessPointPolicy:MultiRegionAccessPointPolicy":0,"aws:s3control/objectLambdaAccessPoint:ObjectLambdaAccessPoint":0,"aws:s3control/objectLambdaAccessPointPolicy:ObjectLambdaAccessPointPolicy":0,"aws:s3control/storageLensConfiguration:StorageLensConfiguration":0,"aws:s3outposts/endpoint:Endpoint":0,"aws:s3tables/namespace:Namespace":1,"aws:s3tables/table:Table":1,"aws:s3tables/tableBucket:TableBucket":1,"aws:s3tables/tableBucketPolicy:TableBucketPolicy":1,"aws:s3tables/tablePolicy:TablePolicy":1,"aws:sagemaker/app:App":0,"aws:sagemaker/appImageConfig:AppImageConfig":0,"aws:sagemaker/codeRepository:CodeRepository":0,"aws:sagemaker/dataQualityJobDefinition:DataQualityJobDefinition":0,"aws:sagemaker/device:Device":0,"aws:sagemaker/deviceFleet:DeviceFleet":0,"aws:sagemaker/domain:Domain":0,"aws:sagemaker/endpoint:Endpoint":0,"aws:sagemaker/endpointConfiguration:EndpointConfiguration":0,"aws:sagemaker/featureGroup:FeatureGroup":0,"aws:sagemaker/flowDefinition:FlowDefinition":0,"aws:sagemaker/hub:Hub":0,"aws:sagemaker/humanTaskUI:HumanTaskUI":0,"aws:sagemaker/image:Image":0,"aws:sagemaker/imageVersion:ImageVersion":0,"aws:sagemaker/mlflowTrackingServer:MlflowTrackingServer":0,"aws:sagemaker/model:Model":0,"aws:sagemaker/modelPackageGroup:ModelPackageGroup":0,"aws:sagemaker/modelPackageGroupPolicy:ModelPackageGroupPolicy":0,"aws:sagemaker/monitoringSchedule:MonitoringSchedule":0,"aws:sagemaker/notebookInstance:NotebookInstance":0,"aws:sagemaker/notebookInstanceLifecycleConfiguration:NotebookInstanceLifecycleConfiguration":0,"aws:sagemaker/pipeline:Pipeline":0,"aws:sagemaker/project:Project":0,"aws:sagemaker/servicecatalogPortfolioStatus:ServicecatalogPortfolioStatus":0,"aws:sagemaker/space:Space":0,"aws:sagemaker/studioLifecycleConfig:StudioLifecycleConfig":0,"aws:sagemaker/userProfile:UserProfile":0,"aws:sagemaker/workforce:Workforce":0,"aws:sagemaker/workteam:Workteam":0,"aws:scheduler/schedule:Schedule":0,"aws:scheduler/scheduleGroup:ScheduleGroup":0,"aws:schemas/discoverer:Discoverer":0,"aws:schemas/registry:Registry":0,"aws:schemas/registryPolicy:RegistryPolicy":0,"aws:schemas/schema:Schema":0,"aws:secretsmanager/secret:Secret":0,"aws:secretsmanager/secretPolicy:SecretPolicy":0,"aws:secretsmanager/secretRotation:SecretRotation":0,"aws:secretsmanager/secretVersion:SecretVersion":0,"aws:securityhub/account:Account":0,"aws:securityhub/actionTarget:ActionTarget":0,"aws:securityhub/automationRule:AutomationRule":1,"aws:securityhub/configurationPolicy:ConfigurationPolicy":0,"aws:securityhub/configurationPolicyAssociation:ConfigurationPolicyAssociation":0,"aws:securityhub/findingAggregator:FindingAggregator":0,"aws:securityhub/insight:Insight":0,"aws:securityhub/inviteAccepter:InviteAccepter":0,"aws:securityhub/member:Member":0,"aws:securityhub/organizationAdminAccount:OrganizationAdminAccount":0,"aws:securityhub/organizationConfiguration:OrganizationConfiguration":0,"aws:securityhub/productSubscription:ProductSubscription":0,"aws:securityhub/standardsControl:StandardsControl":0,"aws:securityhub/standardsControlAssociation:StandardsControlAssociation":1,"aws:securityhub/standardsSubscription:StandardsSubscription":0,"aws:securitylake/awsLogSource:AwsLogSource":1,"aws:securitylake/customLogSource:CustomLogSource":1,"aws:securitylake/dataLake:DataLake":1,"aws:securitylake/subscriber:Subscriber":1,"aws:securitylake/subscriberNotification:SubscriberNotification":1,"aws:serverlessrepository/cloudFormationStack:CloudFormationStack":0,"aws:servicecatalog/appregistryApplication:AppregistryApplication":1,"aws:servicecatalog/appregistryAttributeGroup:AppregistryAttributeGroup":1,"aws:servicecatalog/appregistryAttributeGroupAssociation:AppregistryAttributeGroupAssociation":1,"aws:servicecatalog/budgetResourceAssociation:BudgetResourceAssociation":0,"aws:servicecatalog/constraint:Constraint":0,"aws:servicecatalog/organizationsAccess:OrganizationsAccess":0,"aws:servicecatalog/portfolio:Portfolio":0,"aws:servicecatalog/portfolioShare:PortfolioShare":0,"aws:servicecatalog/principalPortfolioAssociation:PrincipalPortfolioAssociation":0,"aws:servicecatalog/product:Product":0,"aws:servicecatalog/productPortfolioAssociation:ProductPortfolioAssociation":0,"aws:servicecatalog/provisionedProduct:ProvisionedProduct":0,"aws:servicecatalog/provisioningArtifact:ProvisioningArtifact":0,"aws:servicecatalog/serviceAction:ServiceAction":0,"aws:servicecatalog/tagOption:TagOption":0,"aws:servicecatalog/tagOptionResourceAssociation:TagOptionResourceAssociation":0,"aws:servicediscovery/httpNamespace:HttpNamespace":0,"aws:servicediscovery/instance:Instance":0,"aws:servicediscovery/privateDnsNamespace:PrivateDnsNamespace":0,"aws:servicediscovery/publicDnsNamespace:PublicDnsNamespace":0,"aws:servicediscovery/service:Service":0,"aws:servicequotas/serviceQuota:ServiceQuota":0,"aws:servicequotas/template:Template":1,"aws:servicequotas/templateAssociation:TemplateAssociation":1,"aws:ses/activeReceiptRuleSet:ActiveReceiptRuleSet":0,"aws:ses/configurationSet:ConfigurationSet":0,"aws:ses/domainDkim:DomainDkim":0,"aws:ses/domainIdentity:DomainIdentity":0,"aws:ses/domainIdentityVerification:DomainIdentityVerification":0,"aws:ses/emailIdentity:EmailIdentity":0,"aws:ses/eventDestination:EventDestination":0,"aws:ses/identityNotificationTopic:IdentityNotificationTopic":0,"aws:ses/identityPolicy:IdentityPolicy":0,"aws:ses/mailFrom:MailFrom":0,"aws:ses/receiptFilter:ReceiptFilter":0,"aws:ses/receiptRule:ReceiptRule":0,"aws:ses/receiptRuleSet:ReceiptRuleSet":0,"aws:ses/template:Template":0,"aws:sesv2/accountSuppressionAttributes:AccountSuppressionAttributes":1,"aws:sesv2/accountVdmAttributes:AccountVdmAttributes":0,"aws:sesv2/configurationSet:ConfigurationSet":0,"aws:sesv2/configurationSetEventDestination:ConfigurationSetEventDestination":0,"aws:sesv2/contactList:ContactList":0,"aws:sesv2/dedicatedIpAssignment:DedicatedIpAssignment":0,"aws:sesv2/dedicatedIpPool:DedicatedIpPool":0,"aws:sesv2/emailIdentity:EmailIdentity":0,"aws:sesv2/emailIdentityFeedbackAttributes:EmailIdentityFeedbackAttributes":0,"aws:sesv2/emailIdentityMailFromAttributes:EmailIdentityMailFromAttributes":0,"aws:sesv2/emailIdentityPolicy:EmailIdentityPolicy":0,"aws:sfn/activity:Activity":0,"aws:sfn/alias:Alias":0,"aws:sfn/stateMachine:StateMachine":0,"aws:shield/applicationLayerAutomaticResponse:ApplicationLayerAutomaticResponse":1,"aws:shield/drtAccessLogBucketAssociation:DrtAccessLogBucketAssociation":1,"aws:shield/drtAccessRoleArnAssociation:DrtAccessRoleArnAssociation":1,"aws:shield/proactiveEngagement:ProactiveEngagement":1,"aws:shield/protection:Protection":0,"aws:shield/protectionGroup:ProtectionGroup":0,"aws:shield/protectionHealthCheckAssociation:ProtectionHealthCheckAssociation":0,"aws:shield/subscription:Subscription":1,"aws:signer/signingJob:SigningJob":0,"aws:signer/signingProfile:SigningProfile":0,"aws:signer/signingProfilePermission:SigningProfilePermission":0,"aws:simpledb/domain:Domain":1,"aws:sns/dataProtectionPolicy:DataProtectionPolicy":0,"aws:sns/platformApplication:PlatformApplication":0,"aws:sns/smsPreferences:SmsPreferences":0,"aws:sns/topic:Topic":0,"aws:sns/topicPolicy:TopicPolicy":0,"aws:sns/topicSubscription:TopicSubscription":0,"aws:sqs/queue:Queue":0,"aws:sqs/queuePolicy:QueuePolicy":0,"aws:sqs/redriveAllowPolicy:RedriveAllowPolicy":0,"aws:sqs/redrivePolicy:RedrivePolicy":0,"aws:ssm/activation:Activation":0,"aws:ssm/association:Association":0,"aws:ssm/contactsRotation:ContactsRotation":1,"aws:ssm/defaultPatchBaseline:DefaultPatchBaseline":0,"aws:ssm/document:Document":0,"aws:ssm/maintenanceWindow:MaintenanceWindow":0,"aws:ssm/maintenanceWindowTarget:MaintenanceWindowTarget":0,"aws:ssm/maintenanceWindowTask:MaintenanceWindowTask":0,"aws:ssm/parameter:Parameter":0,"aws:ssm/patchBaseline:PatchBaseline":0,"aws:ssm/patchGroup:PatchGroup":0,"aws:ssm/quicksetupConfigurationManager:QuicksetupConfigurationManager":1,"aws:ssm/resourceDataSync:ResourceDataSync":0,"aws:ssm/serviceSetting:ServiceSetting":0,"aws:ssmcontacts/contact:Contact":0,"aws:ssmcontacts/contactChannel:ContactChannel":0,"aws:ssmcontacts/plan:Plan":0,"aws:ssmincidents/replicationSet:ReplicationSet":0,"aws:ssmincidents/responsePlan:ResponsePlan":0,"aws:ssoadmin/accountAssignment:AccountAssignment":0,"aws:ssoadmin/application:Application":1,"aws:ssoadmin/applicationAccessScope:ApplicationAccessScope":1,"aws:ssoadmin/applicationAssignment:ApplicationAssignment":1,"aws:ssoadmin/applicationAssignmentConfiguration:ApplicationAssignmentConfiguration":1,"aws:ssoadmin/customerManagedPolicyAttachment:CustomerManagedPolicyAttachment":0,"aws:ssoadmin/instanceAccessControlAttributes:InstanceAccessControlAttributes":0,"aws:ssoadmin/managedPolicyAttachment:ManagedPolicyAttachment":0,"aws:ssoadmin/permissionSet:PermissionSet":0,"aws:ssoadmin/permissionSetInlinePolicy:PermissionSetInlinePolicy":0,"aws:ssoadmin/permissionsBoundaryAttachment:PermissionsBoundaryAttachment":0,"aws:ssoadmin/trustedTokenIssuer:TrustedTokenIssuer":1,"aws:storagegateway/cache:Cache":0,"aws:storagegateway/cachesIscsiVolume:CachesIscsiVolume":0,"aws:storagegateway/fileSystemAssociation:FileSystemAssociation":0,"aws:storagegateway/gateway:Gateway":0,"aws:storagegateway/nfsFileShare:NfsFileShare":0,"aws:storagegateway/smbFileShare:SmbFileShare":0,"aws:storagegateway/storedIscsiVolume:StoredIscsiVolume":0,"aws:storagegateway/tapePool:TapePool":0,"aws:storagegateway/uploadBuffer:UploadBuffer":0,"aws:storagegateway/workingStorage:WorkingStorage":0,"aws:swf/domain:Domain":0,"aws:synthetics/canary:Canary":0,"aws:synthetics/group:Group":0,"aws:synthetics/groupAssociation:GroupAssociation":0,"aws:timestreaminfluxdb/dbInstance:DbInstance":1,"aws:timestreamwrite/database:Database":0,"aws:timestreamwrite/table:Table":0,"aws:transcribe/languageModel:LanguageModel":0,"aws:transcribe/medicalVocabulary:MedicalVocabulary":0,"aws:transcribe/vocabulary:Vocabulary":0,"aws:transcribe/vocabularyFilter:VocabularyFilter":0,"aws:transfer/access:Access":0,"aws:transfer/agreement:Agreement":0,"aws:transfer/certificate:Certificate":0,"aws:transfer/connector:Connector":0,"aws:transfer/profile:Profile":0,"aws:transfer/server:Server":0,"aws:transfer/sshKey:SshKey":0,"aws:transfer/tag:Tag":0,"aws:transfer/user:User":0,"aws:transfer/workflow:Workflow":0,"aws:verifiedaccess/endpoint:Endpoint":0,"aws:verifiedaccess/group:Group":0,"aws:verifiedaccess/instance:Instance":0,"aws:verifiedaccess/instanceLoggingConfiguration:InstanceLoggingConfiguration":0,"aws:verifiedaccess/instanceTrustProviderAttachment:InstanceTrustProviderAttachment":0,"aws:verifiedaccess/trustProvider:TrustProvider":0,"aws:verifiedpermissions/identitySource:IdentitySource":1,"aws:verifiedpermissions/policy:Policy":1,"aws:verifiedpermissions/policyStore:PolicyStore":1,"aws:verifiedpermissions/policyTemplate:PolicyTemplate":1,"aws:verifiedpermissions/schema:Schema":1,"aws:vpc/endpointPrivateDns:EndpointPrivateDns":1,"aws:vpc/endpointServicePrivateDnsVerification:EndpointServicePrivateDnsVerification":1,"aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule":1,"aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule":1,"aws:vpc/securityGroupVpcAssociation:SecurityGroupVpcAssociation":1,"aws:vpclattice/accessLogSubscription:AccessLogSubscription":0,"aws:vpclattice/authPolicy:AuthPolicy":0,"aws:vpclattice/listener:Listener":0,"aws:vpclattice/listenerRule:ListenerRule":0,"aws:vpclattice/resourceGateway:ResourceGateway":1,"aws:vpclattice/resourcePolicy:ResourcePolicy":0,"aws:vpclattice/service:Service":0,"aws:vpclattice/serviceNetwork:ServiceNetwork":0,"aws:vpclattice/serviceNetworkServiceAssociation:ServiceNetworkServiceAssociation":0,"aws:vpclattice/serviceNetworkVpcAssociation:ServiceNetworkVpcAssociation":0,"aws:vpclattice/targetGroup:TargetGroup":0,"aws:vpclattice/targetGroupAttachment:TargetGroupAttachment":0,"aws:waf/byteMatchSet:ByteMatchSet":0,"aws:waf/geoMatchSet:GeoMatchSet":0,"aws:waf/ipSet:IpSet":0,"aws:waf/rateBasedRule:RateBasedRule":0,"aws:waf/regexMatchSet:RegexMatchSet":0,"aws:waf/regexPatternSet:RegexPatternSet":0,"aws:waf/rule:Rule":0,"aws:waf/ruleGroup:RuleGroup":0,"aws:waf/sizeConstraintSet:SizeConstraintSet":0,"aws:waf/sqlInjectionMatchSet:SqlInjectionMatchSet":0,"aws:waf/webAcl:WebAcl":0,"aws:waf/xssMatchSet:XssMatchSet":0,"aws:wafregional/byteMatchSet:ByteMatchSet":0,"aws:wafregional/geoMatchSet:GeoMatchSet":0,"aws:wafregional/ipSet:IpSet":0,"aws:wafregional/rateBasedRule:RateBasedRule":0,"aws:wafregional/regexMatchSet:RegexMatchSet":0,"aws:wafregional/regexPatternSet:RegexPatternSet":0,"aws:wafregional/rule:Rule":0,"aws:wafregional/ruleGroup:RuleGroup":0,"aws:wafregional/sizeConstraintSet:SizeConstraintSet":0,"aws:wafregional/sqlInjectionMatchSet:SqlInjectionMatchSet":0,"aws:wafregional/webAcl:WebAcl":0,"aws:wafregional/webAclAssociation:WebAclAssociation":0,"aws:wafregional/xssMatchSet:XssMatchSet":0,"aws:wafv2/ipSet:IpSet":0,"aws:wafv2/regexPatternSet:RegexPatternSet":0,"aws:wafv2/ruleGroup:RuleGroup":0,"aws:wafv2/webAcl:WebAcl":0,"aws:wafv2/webAclAssociation:WebAclAssociation":0,"aws:wafv2/webAclLoggingConfiguration:WebAclLoggingConfiguration":0,"aws:worklink/fleet:Fleet":0,"aws:worklink/websiteCertificateAuthorityAssociation:WebsiteCertificateAuthorityAssociation":0,"aws:workspaces/connectionAlias:ConnectionAlias":1,"aws:workspaces/directory:Directory":0,"aws:workspaces/ipGroup:IpGroup":0,"aws:workspaces/workspace:Workspace":0,"aws:xray/encryptionConfig:EncryptionConfig":0,"aws:xray/group:Group":0,"aws:xray/samplingRule:SamplingRule":0},"functions":{"aws:acm/getCertificate:getCertificate":0,"aws:acmpca/getCertificate:getCertificate":0,"aws:acmpca/getCertificateAuthority:getCertificateAuthority":0,"aws:alb/getListener:getListener":0,"aws:alb/getLoadBalancer:getLoadBalancer":0,"aws:alb/getTargetGroup:getTargetGroup":0,"aws:amp/getDefaultScraperConfiguration:getDefaultScraperConfiguration":1,"aws:amp/getWorkspace:getWorkspace":0,"aws:amp/getWorkspaces:getWorkspaces":0,"aws:apigateway/getAuthorizer:getAuthorizer":0,"aws:apigateway/getAuthorizers:getAuthorizers":0,"aws:apigateway/getDomainName:getDomainName":0,"aws:apigateway/getExport:getExport":0,"aws:apigateway/getKey:getKey":0,"aws:apigateway/getResource:getResource":0,"aws:apigateway/getRestApi:getRestApi":0,"aws:apigateway/getSdk:getSdk":0,"aws:apigateway/getVpcLink:getVpcLink":0,"aws:apigatewayv2/getApi:getApi":0,"aws:apigatewayv2/getApis:getApis":0,"aws:apigatewayv2/getExport:getExport":0,"aws:apigatewayv2/getVpcLink:getVpcLink":0,"aws:appconfig/getConfigurationProfile:getConfigurationProfile":0,"aws:appconfig/getConfigurationProfiles:getConfigurationProfiles":0,"aws:appconfig/getEnvironment:getEnvironment":0,"aws:appconfig/getEnvironments:getEnvironments":0,"aws:appintegrations/getEventIntegration:getEventIntegration":0,"aws:appmesh/getGatewayRoute:getGatewayRoute":0,"aws:appmesh/getMesh:getMesh":0,"aws:appmesh/getRoute:getRoute":0,"aws:appmesh/getVirtualGateway:getVirtualGateway":0,"aws:appmesh/getVirtualNode:getVirtualNode":0,"aws:appmesh/getVirtualRouter:getVirtualRouter":0,"aws:appmesh/getVirtualService:getVirtualService":0,"aws:apprunner/getHostedZoneId:getHostedZoneId":1,"aws:appstream/getImage:getImage":1,"aws:athena/getNamedQuery:getNamedQuery":0,"aws:auditmanager/getControl:getControl":1,"aws:auditmanager/getFramework:getFramework":1,"aws:autoscaling/getAmiIds:getAmiIds":0,"aws:autoscaling/getGroup:getGroup":0,"aws:backup/getFramework:getFramework":0,"aws:backup/getPlan:getPlan":0,"aws:backup/getReportPlan:getReportPlan":0,"aws:backup/getSelection:getSelection":0,"aws:backup/getVault:getVault":0,"aws:batch/getComputeEnvironment:getComputeEnvironment":0,"aws:batch/getJobDefinition:getJobDefinition":1,"aws:batch/getJobQueue:getJobQueue":0,"aws:batch/getSchedulingPolicy:getSchedulingPolicy":0,"aws:bedrock/getAgentAgentVersions:getAgentAgentVersions":1,"aws:bedrock/getCustomModel:getCustomModel":1,"aws:bedrock/getCustomModels:getCustomModels":1,"aws:bedrock/getInferenceProfile:getInferenceProfile":1,"aws:bedrock/getInferenceProfiles:getInferenceProfiles":1,"aws:bedrockfoundation/getModel:getModel":1,"aws:bedrockfoundation/getModels:getModels":1,"aws:budgets/getBudget:getBudget":0,"aws:chatbot/getSlackWorkspace:getSlackWorkspace":1,"aws:cloudcontrol/getResource:getResource":0,"aws:cloudformation/getCloudFormationType:getCloudFormationType":0,"aws:cloudformation/getExport:getExport":0,"aws:cloudformation/getStack:getStack":0,"aws:cloudfront/getCachePolicy:getCachePolicy":0,"aws:cloudfront/getDistribution:getDistribution":0,"aws:cloudfront/getFunction:getFunction":0,"aws:cloudfront/getLogDeliveryCanonicalUserId:getLogDeliveryCanonicalUserId":0,"aws:cloudfront/getOriginAccessControl:getOriginAccessControl":1,"aws:cloudfront/getOriginAccessIdentities:getOriginAccessIdentities":0,"aws:cloudfront/getOriginAccessIdentity:getOriginAccessIdentity":0,"aws:cloudfront/getOriginRequestPolicy:getOriginRequestPolicy":0,"aws:cloudfront/getRealtimeLogConfig:getRealtimeLogConfig":0,"aws:cloudfront/getResponseHeadersPolicy:getResponseHeadersPolicy":0,"aws:cloudhsmv2/getCluster:getCluster":0,"aws:cloudtrail/getServiceAccount:getServiceAccount":0,"aws:cloudwatch/getEventBus:getEventBus":0,"aws:cloudwatch/getEventBuses:getEventBuses":1,"aws:cloudwatch/getEventConnection:getEventConnection":0,"aws:cloudwatch/getEventSource:getEventSource":0,"aws:cloudwatch/getLogDataProtectionPolicyDocument:getLogDataProtectionPolicyDocument":0,"aws:cloudwatch/getLogGroup:getLogGroup":0,"aws:cloudwatch/getLogGroups:getLogGroups":0,"aws:codeartifact/getAuthorizationToken:getAuthorizationToken":0,"aws:codeartifact/getRepositoryEndpoint:getRepositoryEndpoint":0,"aws:codebuild/getFleet:getFleet":0,"aws:codecatalyst/getDevEnvironment:getDevEnvironment":0,"aws:codecommit/getApprovalRuleTemplate:getApprovalRuleTemplate":0,"aws:codecommit/getRepository:getRepository":0,"aws:codeguruprofiler/getProfilingGroup:getProfilingGroup":1,"aws:codestarconnections/getConnection:getConnection":0,"aws:cognito/getIdentityPool:getIdentityPool":0,"aws:cognito/getUserGroup:getUserGroup":1,"aws:cognito/getUserGroups:getUserGroups":1,"aws:cognito/getUserPool:getUserPool":1,"aws:cognito/getUserPoolClient:getUserPoolClient":0,"aws:cognito/getUserPoolClients:getUserPoolClients":0,"aws:cognito/getUserPoolSigningCertificate:getUserPoolSigningCertificate":0,"aws:cognito/getUserPools:getUserPools":0,"aws:connect/getBotAssociation:getBotAssociation":0,"aws:connect/getContactFlow:getContactFlow":0,"aws:connect/getContactFlowModule:getContactFlowModule":0,"aws:connect/getHoursOfOperation:getHoursOfOperation":0,"aws:connect/getInstance:getInstance":0,"aws:connect/getInstanceStorageConfig:getInstanceStorageConfig":0,"aws:connect/getLambdaFunctionAssociation:getLambdaFunctionAssociation":0,"aws:connect/getPrompt:getPrompt":0,"aws:connect/getQueue:getQueue":0,"aws:connect/getQuickConnect:getQuickConnect":0,"aws:connect/getRoutingProfile:getRoutingProfile":0,"aws:connect/getSecurityProfile:getSecurityProfile":0,"aws:connect/getUser:getUser":0,"aws:connect/getUserHierarchyGroup:getUserHierarchyGroup":0,"aws:connect/getUserHierarchyStructure:getUserHierarchyStructure":0,"aws:connect/getVocabulary:getVocabulary":0,"aws:controltower/getControls:getControls":0,"aws:costexplorer/getCostCategory:getCostCategory":0,"aws:costexplorer/getTags:getTags":0,"aws:cur/getReportDefinition:getReportDefinition":0,"aws:datapipeline/getPipeline:getPipeline":0,"aws:datapipeline/getPipelineDefinition:getPipelineDefinition":0,"aws:datazone/getEnvironmentBlueprint:getEnvironmentBlueprint":1,"aws:devopsguru/getNotificationChannel:getNotificationChannel":1,"aws:devopsguru/getResourceCollection:getResourceCollection":1,"aws:directconnect/getConnection:getConnection":0,"aws:directconnect/getGateway:getGateway":0,"aws:directconnect/getLocation:getLocation":0,"aws:directconnect/getLocations:getLocations":0,"aws:directconnect/getRouterConfiguration:getRouterConfiguration":0,"aws:directoryservice/getDirectory:getDirectory":0,"aws:dms/getCertificate:getCertificate":0,"aws:dms/getEndpoint:getEndpoint":0,"aws:dms/getReplicationInstance:getReplicationInstance":0,"aws:dms/getReplicationSubnetGroup:getReplicationSubnetGroup":0,"aws:dms/getReplicationTask:getReplicationTask":0,"aws:docdb/getEngineVersion:getEngineVersion":0,"aws:docdb/getOrderableDbInstance:getOrderableDbInstance":0,"aws:dynamodb/getTable:getTable":0,"aws:dynamodb/getTableItem:getTableItem":0,"aws:ebs/getDefaultKmsKey:getDefaultKmsKey":0,"aws:ebs/getEbsVolumes:getEbsVolumes":0,"aws:ebs/getEncryptionByDefault:getEncryptionByDefault":0,"aws:ebs/getSnapshot:getSnapshot":0,"aws:ebs/getSnapshotIds:getSnapshotIds":0,"aws:ebs/getVolume:getVolume":0,"aws:ec2/getAmi:getAmi":0,"aws:ec2/getAmiIds:getAmiIds":0,"aws:ec2/getCapacityBlockOffering:getCapacityBlockOffering":1,"aws:ec2/getCoipPool:getCoipPool":0,"aws:ec2/getCoipPools:getCoipPools":0,"aws:ec2/getCustomerGateway:getCustomerGateway":0,"aws:ec2/getDedicatedHost:getDedicatedHost":0,"aws:ec2/getEips:getEips":0,"aws:ec2/getElasticIp:getElasticIp":0,"aws:ec2/getInstance:getInstance":0,"aws:ec2/getInstanceType:getInstanceType":0,"aws:ec2/getInstanceTypeOffering:getInstanceTypeOffering":0,"aws:ec2/getInstanceTypeOfferings:getInstanceTypeOfferings":0,"aws:ec2/getInstanceTypes:getInstanceTypes":0,"aws:ec2/getInstances:getInstances":0,"aws:ec2/getInternetGateway:getInternetGateway":0,"aws:ec2/getIpamPreviewNextCidr:getIpamPreviewNextCidr":0,"aws:ec2/getKeyPair:getKeyPair":0,"aws:ec2/getLaunchConfiguration:getLaunchConfiguration":0,"aws:ec2/getLaunchTemplate:getLaunchTemplate":0,"aws:ec2/getLocalGateway:getLocalGateway":0,"aws:ec2/getLocalGatewayRouteTable:getLocalGatewayRouteTable":0,"aws:ec2/getLocalGatewayRouteTables:getLocalGatewayRouteTables":0,"aws:ec2/getLocalGatewayVirtualInterface:getLocalGatewayVirtualInterface":0,"aws:ec2/getLocalGatewayVirtualInterfaceGroup:getLocalGatewayVirtualInterfaceGroup":0,"aws:ec2/getLocalGatewayVirtualInterfaceGroups:getLocalGatewayVirtualInterfaceGroups":0,"aws:ec2/getLocalGateways:getLocalGateways":0,"aws:ec2/getManagedPrefixList:getManagedPrefixList":0,"aws:ec2/getManagedPrefixLists:getManagedPrefixLists":0,"aws:ec2/getNatGateway:getNatGateway":0,"aws:ec2/getNatGateways:getNatGateways":0,"aws:ec2/getNetworkAcls:getNetworkAcls":0,"aws:ec2/getNetworkInsightsAnalysis:getNetworkInsightsAnalysis":0,"aws:ec2/getNetworkInsightsPath:getNetworkInsightsPath":0,"aws:ec2/getNetworkInterface:getNetworkInterface":0,"aws:ec2/getNetworkInterfaces:getNetworkInterfaces":0,"aws:ec2/getPrefixList:getPrefixList":0,"aws:ec2/getPublicIpv4Pool:getPublicIpv4Pool":0,"aws:ec2/getPublicIpv4Pools:getPublicIpv4Pools":0,"aws:ec2/getRoute:getRoute":0,"aws:ec2/getRouteTable:getRouteTable":0,"aws:ec2/getRouteTables:getRouteTables":0,"aws:ec2/getSecurityGroup:getSecurityGroup":0,"aws:ec2/getSecurityGroups:getSecurityGroups":0,"aws:ec2/getSerialConsoleAccess:getSerialConsoleAccess":0,"aws:ec2/getSpotDatafeedSubscription:getSpotDatafeedSubscription":1,"aws:ec2/getSpotPrice:getSpotPrice":0,"aws:ec2/getSubnet:getSubnet":0,"aws:ec2/getSubnets:getSubnets":0,"aws:ec2/getTransitGatewayRouteTables:getTransitGatewayRouteTables":0,"aws:ec2/getVpc:getVpc":0,"aws:ec2/getVpcDhcpOptions:getVpcDhcpOptions":0,"aws:ec2/getVpcEndpoint:getVpcEndpoint":0,"aws:ec2/getVpcEndpointService:getVpcEndpointService":0,"aws:ec2/getVpcIamPool:getVpcIamPool":0,"aws:ec2/getVpcIamPoolCidrs:getVpcIamPoolCidrs":0,"aws:ec2/getVpcIamPools:getVpcIamPools":0,"aws:ec2/getVpcIpamPool:getVpcIpamPool":0,"aws:ec2/getVpcIpamPoolCidrs:getVpcIpamPoolCidrs":0,"aws:ec2/getVpcIpamPools:getVpcIpamPools":0,"aws:ec2/getVpcPeeringConnection:getVpcPeeringConnection":0,"aws:ec2/getVpcPeeringConnections:getVpcPeeringConnections":0,"aws:ec2/getVpcs:getVpcs":0,"aws:ec2/getVpnGateway:getVpnGateway":0,"aws:ec2clientvpn/getEndpoint:getEndpoint":0,"aws:ec2transitgateway/getAttachment:getAttachment":0,"aws:ec2transitgateway/getAttachments:getAttachments":0,"aws:ec2transitgateway/getConnect:getConnect":0,"aws:ec2transitgateway/getConnectPeer:getConnectPeer":0,"aws:ec2transitgateway/getDirectConnectGatewayAttachment:getDirectConnectGatewayAttachment":0,"aws:ec2transitgateway/getMulticastDomain:getMulticastDomain":0,"aws:ec2transitgateway/getPeeringAttachment:getPeeringAttachment":0,"aws:ec2transitgateway/getPeeringAttachments:getPeeringAttachments":0,"aws:ec2transitgateway/getRouteTable:getRouteTable":0,"aws:ec2transitgateway/getRouteTableAssociations:getRouteTableAssociations":0,"aws:ec2transitgateway/getRouteTablePropagations:getRouteTablePropagations":0,"aws:ec2transitgateway/getRouteTableRoutes:getRouteTableRoutes":0,"aws:ec2transitgateway/getTransitGateway:getTransitGateway":0,"aws:ec2transitgateway/getVpcAttachment:getVpcAttachment":0,"aws:ec2transitgateway/getVpcAttachments:getVpcAttachments":0,"aws:ec2transitgateway/getVpnAttachment:getVpnAttachment":0,"aws:ecr/getAuthorizationToken:getAuthorizationToken":0,"aws:ecr/getCredentials:getCredentials":0,"aws:ecr/getImage:getImage":0,"aws:ecr/getLifecyclePolicyDocument:getLifecyclePolicyDocument":1,"aws:ecr/getPullThroughCacheRule:getPullThroughCacheRule":0,"aws:ecr/getRepositories:getRepositories":1,"aws:ecr/getRepository:getRepository":0,"aws:ecr/getRepositoryCreationTemplate:getRepositoryCreationTemplate":0,"aws:ecrpublic/getAuthorizationToken:getAuthorizationToken":0,"aws:ecs/getCluster:getCluster":0,"aws:ecs/getClusters:getClusters":1,"aws:ecs/getContainerDefinition:getContainerDefinition":0,"aws:ecs/getService:getService":0,"aws:ecs/getTaskDefinition:getTaskDefinition":0,"aws:ecs/getTaskExecution:getTaskExecution":0,"aws:efs/getAccessPoint:getAccessPoint":0,"aws:efs/getAccessPoints:getAccessPoints":0,"aws:efs/getFileSystem:getFileSystem":0,"aws:efs/getMountTarget:getMountTarget":0,"aws:eks/getAccessEntry:getAccessEntry":0,"aws:eks/getAddon:getAddon":0,"aws:eks/getAddonVersion:getAddonVersion":0,"aws:eks/getCluster:getCluster":0,"aws:eks/getClusterAuth:getClusterAuth":0,"aws:eks/getClusters:getClusters":0,"aws:eks/getNodeGroup:getNodeGroup":0,"aws:eks/getNodeGroups:getNodeGroups":0,"aws:elasticache/getCluster:getCluster":0,"aws:elasticache/getReplicationGroup:getReplicationGroup":0,"aws:elasticache/getReservedCacheNodeOffering:getReservedCacheNodeOffering":1,"aws:elasticache/getServerlessCache:getServerlessCache":1,"aws:elasticache/getSubnetGroup:getSubnetGroup":0,"aws:elasticache/getUser:getUser":0,"aws:elasticbeanstalk/getApplication:getApplication":0,"aws:elasticbeanstalk/getHostedZone:getHostedZone":0,"aws:elasticbeanstalk/getSolutionStack:getSolutionStack":0,"aws:elasticsearch/getDomain:getDomain":0,"aws:elb/getHostedZoneId:getHostedZoneId":0,"aws:elb/getLoadBalancer:getLoadBalancer":0,"aws:elb/getServiceAccount:getServiceAccount":0,"aws:emr/getReleaseLabels:getReleaseLabels":0,"aws:emr/getSupportedInstanceTypes:getSupportedInstanceTypes":1,"aws:emrcontainers/getVirtualCluster:getVirtualCluster":0,"aws:fsx/getOntapFileSystem:getOntapFileSystem":0,"aws:fsx/getOntapStorageVirtualMachine:getOntapStorageVirtualMachine":0,"aws:fsx/getOntapStorageVirtualMachines:getOntapStorageVirtualMachines":0,"aws:fsx/getOpenZfsSnapshot:getOpenZfsSnapshot":0,"aws:fsx/getWindowsFileSystem:getWindowsFileSystem":0,"aws:globalaccelerator/getAccelerator:getAccelerator":1,"aws:globalaccelerator/getCustomRoutingAccelerator:getCustomRoutingAccelerator":0,"aws:glue/getCatalogTable:getCatalogTable":0,"aws:glue/getConnection:getConnection":0,"aws:glue/getDataCatalogEncryptionSettings:getDataCatalogEncryptionSettings":0,"aws:glue/getRegistry:getRegistry":1,"aws:glue/getScript:getScript":0,"aws:grafana/getWorkspace:getWorkspace":0,"aws:guardduty/getDetector:getDetector":0,"aws:guardduty/getFindingIds:getFindingIds":1,"aws:iam/getAccessKeys:getAccessKeys":0,"aws:iam/getAccountAlias:getAccountAlias":0,"aws:iam/getGroup:getGroup":0,"aws:iam/getInstanceProfile:getInstanceProfile":0,"aws:iam/getInstanceProfiles:getInstanceProfiles":0,"aws:iam/getOpenIdConnectProvider:getOpenIdConnectProvider":0,"aws:iam/getPolicy:getPolicy":0,"aws:iam/getPolicyDocument:getPolicyDocument":0,"aws:iam/getPrincipalPolicySimulation:getPrincipalPolicySimulation":0,"aws:iam/getRole:getRole":0,"aws:iam/getRoles:getRoles":0,"aws:iam/getSamlProvider:getSamlProvider":0,"aws:iam/getServerCertificate:getServerCertificate":0,"aws:iam/getSessionContext:getSessionContext":0,"aws:iam/getUser:getUser":0,"aws:iam/getUserSshKey:getUserSshKey":0,"aws:iam/getUsers:getUsers":0,"aws:identitystore/getGroup:getGroup":0,"aws:identitystore/getGroups:getGroups":1,"aws:identitystore/getUser:getUser":0,"aws:imagebuilder/getComponent:getComponent":0,"aws:imagebuilder/getComponents:getComponents":0,"aws:imagebuilder/getContainerRecipe:getContainerRecipe":0,"aws:imagebuilder/getContainerRecipes:getContainerRecipes":0,"aws:imagebuilder/getDistributionConfiguration:getDistributionConfiguration":0,"aws:imagebuilder/getDistributionConfigurations:getDistributionConfigurations":0,"aws:imagebuilder/getImage:getImage":0,"aws:imagebuilder/getImagePipeline:getImagePipeline":0,"aws:imagebuilder/getImagePipelines:getImagePipelines":0,"aws:imagebuilder/getImageRecipe:getImageRecipe":0,"aws:imagebuilder/getImageRecipes:getImageRecipes":0,"aws:imagebuilder/getInfrastructureConfiguration:getInfrastructureConfiguration":0,"aws:imagebuilder/getInfrastructureConfigurations:getInfrastructureConfigurations":0,"aws:index/getArn:getArn":1,"aws:index/getAvailabilityZone:getAvailabilityZone":0,"aws:index/getAvailabilityZones:getAvailabilityZones":0,"aws:index/getBillingServiceAccount:getBillingServiceAccount":1,"aws:index/getCallerIdentity:getCallerIdentity":1,"aws:index/getDefaultTags:getDefaultTags":1,"aws:index/getIpRanges:getIpRanges":1,"aws:index/getPartition:getPartition":1,"aws:index/getRegion:getRegion":1,"aws:index/getRegions:getRegions":1,"aws:index/getService:getService":1,"aws:index/getServicePrincipal:getServicePrincipal":1,"aws:inspector/getRulesPackages:getRulesPackages":0,"aws:iot/getEndpoint:getEndpoint":0,"aws:iot/getRegistrationCode:getRegistrationCode":0,"aws:ivs/getStreamKey:getStreamKey":0,"aws:kendra/getExperience:getExperience":0,"aws:kendra/getFaq:getFaq":0,"aws:kendra/getIndex:getIndex":0,"aws:kendra/getQuerySuggestionsBlockList:getQuerySuggestionsBlockList":0,"aws:kendra/getThesaurus:getThesaurus":0,"aws:kinesis/getFirehoseDeliveryStream:getFirehoseDeliveryStream":0,"aws:kinesis/getStream:getStream":0,"aws:kinesis/getStreamConsumer:getStreamConsumer":0,"aws:kms/getAlias:getAlias":0,"aws:kms/getCipherText:getCipherText":0,"aws:kms/getCustomKeyStore:getCustomKeyStore":0,"aws:kms/getKey:getKey":0,"aws:kms/getPublicKey:getPublicKey":0,"aws:kms/getSecret:getSecret":0,"aws:kms/getSecrets:getSecrets":0,"aws:lakeformation/getDataLakeSettings:getDataLakeSettings":0,"aws:lakeformation/getPermissions:getPermissions":0,"aws:lakeformation/getResource:getResource":0,"aws:lambda/getAlias:getAlias":0,"aws:lambda/getCodeSigningConfig:getCodeSigningConfig":0,"aws:lambda/getFunction:getFunction":0,"aws:lambda/getFunctionUrl:getFunctionUrl":0,"aws:lambda/getFunctions:getFunctions":0,"aws:lambda/getInvocation:getInvocation":0,"aws:lambda/getLayerVersion:getLayerVersion":0,"aws:lb/getHostedZoneId:getHostedZoneId":0,"aws:lb/getLbs:getLbs":0,"aws:lb/getListener:getListener":0,"aws:lb/getListenerRule:getListenerRule":1,"aws:lb/getLoadBalancer:getLoadBalancer":0,"aws:lb/getTargetGroup:getTargetGroup":0,"aws:lb/getTrustStore:getTrustStore":0,"aws:lex/getBot:getBot":0,"aws:lex/getBotAlias:getBotAlias":0,"aws:lex/getIntent:getIntent":0,"aws:lex/getSlotType:getSlotType":0,"aws:licensemanager/getLicenseGrants:getLicenseGrants":0,"aws:licensemanager/getReceivedLicense:getReceivedLicense":0,"aws:licensemanager/getReceivedLicenses:getReceivedLicenses":0,"aws:location/getGeofenceCollection:getGeofenceCollection":0,"aws:location/getMap:getMap":0,"aws:location/getPlaceIndex:getPlaceIndex":0,"aws:location/getRouteCalculator:getRouteCalculator":0,"aws:location/getTracker:getTracker":0,"aws:location/getTrackerAssociation:getTrackerAssociation":0,"aws:location/getTrackerAssociations:getTrackerAssociations":0,"aws:mediaconvert/getQueue:getQueue":0,"aws:medialive/getInput:getInput":1,"aws:memorydb/getAcl:getAcl":0,"aws:memorydb/getCluster:getCluster":0,"aws:memorydb/getParameterGroup:getParameterGroup":0,"aws:memorydb/getSnapshot:getSnapshot":0,"aws:memorydb/getSubnetGroup:getSubnetGroup":0,"aws:memorydb/getUser:getUser":0,"aws:mq/getBroker:getBroker":0,"aws:mq/getBrokerEngineTypes:getBrokerEngineTypes":0,"aws:mq/getInstanceTypeOfferings:getInstanceTypeOfferings":0,"aws:msk/getBootstrapBrokers:getBootstrapBrokers":0,"aws:msk/getBrokerNodes:getBrokerNodes":0,"aws:msk/getCluster:getCluster":0,"aws:msk/getConfiguration:getConfiguration":0,"aws:msk/getKafkaVersion:getKafkaVersion":0,"aws:msk/getVpcConnection:getVpcConnection":0,"aws:mskconnect/getConnector:getConnector":0,"aws:mskconnect/getCustomPlugin:getCustomPlugin":0,"aws:mskconnect/getWorkerConfiguration:getWorkerConfiguration":0,"aws:neptune/getEngineVersion:getEngineVersion":0,"aws:neptune/getOrderableDbInstance:getOrderableDbInstance":0,"aws:networkfirewall/getFirewall:getFirewall":0,"aws:networkfirewall/getFirewallPolicy:getFirewallPolicy":0,"aws:networkfirewall/getResourcePolicy:getResourcePolicy":0,"aws:networkmanager/getConnection:getConnection":0,"aws:networkmanager/getConnections:getConnections":0,"aws:networkmanager/getCoreNetworkPolicyDocument:getCoreNetworkPolicyDocument":0,"aws:networkmanager/getDevice:getDevice":0,"aws:networkmanager/getDevices:getDevices":0,"aws:networkmanager/getGlobalNetwork:getGlobalNetwork":0,"aws:networkmanager/getGlobalNetworks:getGlobalNetworks":0,"aws:networkmanager/getLink:getLink":0,"aws:networkmanager/getLinks:getLinks":0,"aws:networkmanager/getSite:getSite":0,"aws:networkmanager/getSites:getSites":0,"aws:oam/getLink:getLink":0,"aws:oam/getLinks:getLinks":0,"aws:oam/getSink:getSink":0,"aws:oam/getSinks:getSinks":0,"aws:opensearch/getDomain:getDomain":0,"aws:opensearch/getServerlessAccessPolicy:getServerlessAccessPolicy":1,"aws:opensearch/getServerlessCollection:getServerlessCollection":1,"aws:opensearch/getServerlessLifecyclePolicy:getServerlessLifecyclePolicy":1,"aws:opensearch/getServerlessSecurityConfig:getServerlessSecurityConfig":1,"aws:opensearch/getServerlessSecurityPolicy:getServerlessSecurityPolicy":0,"aws:opensearch/getServerlessVpcEndpoint:getServerlessVpcEndpoint":0,"aws:organizations/getDelegatedAdministrators:getDelegatedAdministrators":0,"aws:organizations/getDelegatedServices:getDelegatedServices":0,"aws:organizations/getOrganization:getOrganization":0,"aws:organizations/getOrganizationalUnit:getOrganizationalUnit":0,"aws:organizations/getOrganizationalUnitChildAccounts:getOrganizationalUnitChildAccounts":0,"aws:organizations/getOrganizationalUnitDescendantAccounts:getOrganizationalUnitDescendantAccounts":0,"aws:organizations/getOrganizationalUnitDescendantOrganizationalUnits:getOrganizationalUnitDescendantOrganizationalUnits":0,"aws:organizations/getOrganizationalUnits:getOrganizationalUnits":0,"aws:organizations/getPolicies:getPolicies":0,"aws:organizations/getPoliciesForTarget:getPoliciesForTarget":0,"aws:organizations/getPolicy:getPolicy":0,"aws:organizations/getResourceTags:getResourceTags":0,"aws:outposts/getAsset:getAsset":0,"aws:outposts/getAssets:getAssets":0,"aws:outposts/getOutpost:getOutpost":0,"aws:outposts/getOutpostInstanceType:getOutpostInstanceType":0,"aws:outposts/getOutpostInstanceTypes:getOutpostInstanceTypes":0,"aws:outposts/getOutposts:getOutposts":0,"aws:outposts/getSite:getSite":0,"aws:outposts/getSites:getSites":0,"aws:polly/getVoices:getVoices":1,"aws:pricing/getProduct:getProduct":0,"aws:qldb/getLedger:getLedger":0,"aws:quicksight/getAnalysis:getAnalysis":0,"aws:quicksight/getDataSet:getDataSet":0,"aws:quicksight/getQuicksightAnalysis:getQuicksightAnalysis":0,"aws:quicksight/getQuicksightGroup:getQuicksightGroup":0,"aws:quicksight/getQuicksightUser:getQuicksightUser":0,"aws:quicksight/getTheme:getTheme":0,"aws:ram/getResourceShare:getResourceShare":0,"aws:rds/getCertificate:getCertificate":0,"aws:rds/getCluster:getCluster":0,"aws:rds/getClusterParameterGroup:getClusterParameterGroup":1,"aws:rds/getClusterSnapshot:getClusterSnapshot":0,"aws:rds/getClusters:getClusters":0,"aws:rds/getEngineVersion:getEngineVersion":0,"aws:rds/getEventCategories:getEventCategories":0,"aws:rds/getInstance:getInstance":0,"aws:rds/getInstances:getInstances":0,"aws:rds/getOrderableDbInstance:getOrderableDbInstance":0,"aws:rds/getParameterGroup:getParameterGroup":0,"aws:rds/getProxy:getProxy":0,"aws:rds/getReservedInstanceOffering:getReservedInstanceOffering":0,"aws:rds/getSnapshot:getSnapshot":0,"aws:rds/getSubnetGroup:getSubnetGroup":0,"aws:redshift/getCluster:getCluster":0,"aws:redshift/getClusterCredentials:getClusterCredentials":0,"aws:redshift/getDataShares:getDataShares":1,"aws:redshift/getOrderableCluster:getOrderableCluster":0,"aws:redshift/getProducerDataShares:getProducerDataShares":1,"aws:redshift/getServiceAccount:getServiceAccount":0,"aws:redshift/getSubnetGroup:getSubnetGroup":0,"aws:redshiftserverless/getCredentials:getCredentials":0,"aws:redshiftserverless/getNamespace:getNamespace":0,"aws:redshiftserverless/getWorkgroup:getWorkgroup":0,"aws:resourceexplorer/search:Search":1,"aws:resourcegroupstaggingapi/getResources:getResources":0,"aws:route53/getDelegationSet:getDelegationSet":0,"aws:route53/getProfilesProfiles:getProfilesProfiles":1,"aws:route53/getQueryLogConfig:getQueryLogConfig":0,"aws:route53/getRecords:getRecords":1,"aws:route53/getResolverEndpoint:getResolverEndpoint":0,"aws:route53/getResolverFirewallConfig:getResolverFirewallConfig":0,"aws:route53/getResolverFirewallDomainList:getResolverFirewallDomainList":0,"aws:route53/getResolverFirewallRuleGroup:getResolverFirewallRuleGroup":0,"aws:route53/getResolverFirewallRuleGroupAssociation:getResolverFirewallRuleGroupAssociation":0,"aws:route53/getResolverFirewallRules:getResolverFirewallRules":0,"aws:route53/getResolverRule:getResolverRule":0,"aws:route53/getResolverRules:getResolverRules":0,"aws:route53/getTrafficPolicyDocument:getTrafficPolicyDocument":0,"aws:route53/getZone:getZone":0,"aws:route53/getZones:getZones":1,"aws:s3/getAccountPublicAccessBlock:getAccountPublicAccessBlock":0,"aws:s3/getBucket:getBucket":0,"aws:s3/getBucketObject:getBucketObject":0,"aws:s3/getBucketObjects:getBucketObjects":0,"aws:s3/getBucketPolicy:getBucketPolicy":0,"aws:s3/getCanonicalUserId:getCanonicalUserId":0,"aws:s3/getDirectoryBuckets:getDirectoryBuckets":1,"aws:s3/getObject:getObject":0,"aws:s3/getObjects:getObjects":0,"aws:s3control/getMultiRegionAccessPoint:getMultiRegionAccessPoint":0,"aws:sagemaker/getPrebuiltEcrImage:getPrebuiltEcrImage":0,"aws:secretsmanager/getRandomPassword:getRandomPassword":0,"aws:secretsmanager/getSecret:getSecret":0,"aws:secretsmanager/getSecretRotation:getSecretRotation":0,"aws:secretsmanager/getSecretVersion:getSecretVersion":0,"aws:secretsmanager/getSecretVersions:getSecretVersions":1,"aws:secretsmanager/getSecrets:getSecrets":0,"aws:securityhub/getStandardsControlAssociations:getStandardsControlAssociations":1,"aws:serverlessrepository/getApplication:getApplication":0,"aws:servicecatalog/getAppregistryApplication:getAppregistryApplication":1,"aws:servicecatalog/getAppregistryAttributeGroup:getAppregistryAttributeGroup":1,"aws:servicecatalog/getAppregistryAttributeGroupAssociations:getAppregistryAttributeGroupAssociations":1,"aws:servicecatalog/getConstraint:getConstraint":0,"aws:servicecatalog/getLaunchPaths:getLaunchPaths":0,"aws:servicecatalog/getPortfolio:getPortfolio":0,"aws:servicecatalog/getPortfolioConstraints:getPortfolioConstraints":0,"aws:servicecatalog/getProduct:getProduct":0,"aws:servicecatalog/getProvisioningArtifacts:getProvisioningArtifacts":0,"aws:servicediscovery/getDnsNamespace:getDnsNamespace":0,"aws:servicediscovery/getHttpNamespace:getHttpNamespace":0,"aws:servicediscovery/getService:getService":0,"aws:servicequotas/getService:getService":0,"aws:servicequotas/getServiceQuota:getServiceQuota":0,"aws:servicequotas/getTemplates:getTemplates":1,"aws:ses/getActiveReceiptRuleSet:getActiveReceiptRuleSet":0,"aws:ses/getDomainIdentity:getDomainIdentity":0,"aws:ses/getEmailIdentity:getEmailIdentity":0,"aws:sesv2/getConfigurationSet:getConfigurationSet":0,"aws:sesv2/getDedicatedIpPool:getDedicatedIpPool":0,"aws:sesv2/getEmailIdentity:getEmailIdentity":0,"aws:sesv2/getEmailIdentityMailFromAttributes:getEmailIdentityMailFromAttributes":0,"aws:sfn/getActivity:getActivity":0,"aws:sfn/getAlias:getAlias":0,"aws:sfn/getStateMachine:getStateMachine":0,"aws:sfn/getStateMachineVersions:getStateMachineVersions":0,"aws:shield/getProtection:getProtection":1,"aws:signer/getSigningJob:getSigningJob":0,"aws:signer/getSigningProfile:getSigningProfile":0,"aws:sns/getTopic:getTopic":0,"aws:sqs/getQueue:getQueue":0,"aws:sqs/getQueues:getQueues":0,"aws:ssm/getContactsRotation:getContactsRotation":1,"aws:ssm/getDocument:getDocument":0,"aws:ssm/getInstances:getInstances":0,"aws:ssm/getMaintenanceWindows:getMaintenanceWindows":0,"aws:ssm/getParameter:getParameter":0,"aws:ssm/getParametersByPath:getParametersByPath":0,"aws:ssm/getPatchBaseline:getPatchBaseline":0,"aws:ssm/getPatchBaselines:getPatchBaselines":1,"aws:ssmcontacts/getContact:getContact":0,"aws:ssmcontacts/getContactChannel:getContactChannel":0,"aws:ssmcontacts/getPlan:getPlan":0,"aws:ssmincidents/getReplicationSet:getReplicationSet":0,"aws:ssmincidents/getResponsePlan:getResponsePlan":0,"aws:ssoadmin/getApplication:getApplication":1,"aws:ssoadmin/getApplicationAssignments:getApplicationAssignments":1,"aws:ssoadmin/getApplicationProviders:getApplicationProviders":1,"aws:ssoadmin/getInstances:getInstances":0,"aws:ssoadmin/getPermissionSet:getPermissionSet":0,"aws:ssoadmin/getPermissionSets:getPermissionSets":1,"aws:ssoadmin/getPrincipalApplicationAssignments:getPrincipalApplicationAssignments":1,"aws:storagegateway/getLocalDisk:getLocalDisk":0,"aws:synthetics/getRuntimeVersion:getRuntimeVersion":1,"aws:synthetics/getRuntimeVersions:getRuntimeVersions":1,"aws:timestreamwrite/getDatabase:getDatabase":1,"aws:timestreamwrite/getTable:getTable":1,"aws:transfer/getConnector:getConnector":1,"aws:transfer/getServer:getServer":0,"aws:verifiedpermissions/getPolicyStore:getPolicyStore":1,"aws:vpc/getSecurityGroupRule:getSecurityGroupRule":1,"aws:vpc/getSecurityGroupRules:getSecurityGroupRules":1,"aws:vpclattice/getAuthPolicy:getAuthPolicy":0,"aws:vpclattice/getListener:getListener":0,"aws:vpclattice/getResourcePolicy:getResourcePolicy":0,"aws:vpclattice/getService:getService":0,"aws:vpclattice/getServiceNetwork:getServiceNetwork":0,"aws:waf/getIpset:getIpset":0,"aws:waf/getRateBasedRule:getRateBasedRule":0,"aws:waf/getRule:getRule":0,"aws:waf/getSubscribedRuleGroup:getSubscribedRuleGroup":0,"aws:waf/getWebAcl:getWebAcl":0,"aws:wafregional/getIpset:getIpset":0,"aws:wafregional/getRateBasedMod:getRateBasedMod":0,"aws:wafregional/getRule:getRule":0,"aws:wafregional/getSubscribedRuleGroup:getSubscribedRuleGroup":0,"aws:wafregional/getWebAcl:getWebAcl":0,"aws:wafv2/getIpSet:getIpSet":0,"aws:wafv2/getRegexPatternSet:getRegexPatternSet":0,"aws:wafv2/getRuleGroup:getRuleGroup":0,"aws:wafv2/getWebAcl:getWebAcl":0,"aws:workspaces/getBundle:getBundle":0,"aws:workspaces/getDirectory:getDirectory":0,"aws:workspaces/getImage:getImage":0,"aws:workspaces/getWorkspace:getWorkspace":0}}} \ No newline at end of file diff --git a/provider/cmd/pulumi-resource-aws/schema.json b/provider/cmd/pulumi-resource-aws/schema.json index b41e8b8e106..ed519ebfeb3 100644 --- a/provider/cmd/pulumi-resource-aws/schema.json +++ b/provider/cmd/pulumi-resource-aws/schema.json @@ -5800,6 +5800,10 @@ }, "aws:appflow/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce:FlowSourceFlowConfigSourceConnectorPropertiesSalesforce": { "properties": { + "dataTransferApi": { + "type": "string", + "description": "Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce.\n" + }, "enableDynamicFieldUpdate": { "type": "boolean", "description": "Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.\n" @@ -20251,10 +20255,11 @@ "properties": { "action": { "type": "string", - "description": "The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `\"CANCEL\"`\n* `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` \u0026 `86400`\n" + "description": "The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `\"CANCEL\"`\n" }, "maxTimeSeconds": { - "type": "integer" + "type": "integer", + "description": "The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` \u0026 `86400`\n" }, "reason": { "type": "string", @@ -22117,6 +22122,35 @@ }, "type": "object" }, + "aws:bedrock/AgentAgentCollaboratorAgentDescriptor:AgentAgentCollaboratorAgentDescriptor": { + "properties": { + "aliasArn": { + "type": "string", + "description": "ARN of the Alias of an Agent to use as the collaborator.\n" + } + }, + "type": "object", + "required": [ + "aliasArn" + ] + }, + "aws:bedrock/AgentAgentCollaboratorTimeouts:AgentAgentCollaboratorTimeouts": { + "properties": { + "create": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n" + }, + "delete": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n" + }, + "update": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n" + } + }, + "type": "object" + }, "aws:bedrock/AgentAgentGuardrailConfiguration:AgentAgentGuardrailConfiguration": { "properties": { "guardrailIdentifier": { @@ -25229,6 +25263,64 @@ "tableName" ] }, + "aws:cleanrooms/MembershipDefaultResultConfiguration:MembershipDefaultResultConfiguration": { + "properties": { + "outputConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipDefaultResultConfigurationOutputConfiguration:MembershipDefaultResultConfigurationOutputConfiguration" + }, + "roleArn": { + "type": "string", + "description": "The ARN of the IAM role which will be used to create the membership.\n- `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored.\n- `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`.\n- `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results.\n" + } + }, + "type": "object" + }, + "aws:cleanrooms/MembershipDefaultResultConfigurationOutputConfiguration:MembershipDefaultResultConfigurationOutputConfiguration": { + "properties": { + "s3": { + "$ref": "#/types/aws:cleanrooms/MembershipDefaultResultConfigurationOutputConfigurationS3:MembershipDefaultResultConfigurationOutputConfigurationS3" + } + }, + "type": "object" + }, + "aws:cleanrooms/MembershipDefaultResultConfigurationOutputConfigurationS3:MembershipDefaultResultConfigurationOutputConfigurationS3": { + "properties": { + "bucket": { + "type": "string" + }, + "keyPrefix": { + "type": "string" + }, + "resultFormat": { + "type": "string" + } + }, + "type": "object", + "required": [ + "bucket", + "resultFormat" + ] + }, + "aws:cleanrooms/MembershipPaymentConfiguration:MembershipPaymentConfiguration": { + "properties": { + "queryCompute": { + "$ref": "#/types/aws:cleanrooms/MembershipPaymentConfigurationQueryCompute:MembershipPaymentConfigurationQueryCompute" + } + }, + "type": "object" + }, + "aws:cleanrooms/MembershipPaymentConfigurationQueryCompute:MembershipPaymentConfigurationQueryCompute": { + "properties": { + "isResponsible": { + "type": "boolean", + "description": "Indicates whether the collaboration member has accepted to pay for query compute costs.\n" + } + }, + "type": "object", + "required": [ + "isResponsible" + ] + }, "aws:cloudformation/CloudFormationTypeLoggingConfig:CloudFormationTypeLoggingConfig": { "properties": { "logGroupName": { @@ -25787,7 +25879,7 @@ }, "defaultTtl": { "type": "integer", - "description": "Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header.\n" + "description": "Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration.\n" }, "fieldLevelEncryptionId": { "type": "string", @@ -25804,6 +25896,10 @@ }, "description": "A config block that triggers a cloudfront function with specific actions (maximum 2).\n" }, + "grpcConfig": { + "$ref": "#/types/aws:cloudfront/DistributionDefaultCacheBehaviorGrpcConfig:DistributionDefaultCacheBehaviorGrpcConfig", + "description": "A config block that sets the grpc config.\n" + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -25813,11 +25909,11 @@ }, "maxTtl": { "type": "integer", - "description": "Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers.\n" + "description": "Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration.\n" }, "minTtl": { "type": "integer", - "description": "Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds.\n" + "description": "Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration.\n" }, "originRequestPolicyId": { "type": "string", @@ -25871,6 +25967,7 @@ "allowedMethods", "cachedMethods", "defaultTtl", + "grpcConfig", "maxTtl", "targetOriginId", "trustedKeyGroups", @@ -25965,6 +26062,22 @@ "functionArn" ] }, + "aws:cloudfront/DistributionDefaultCacheBehaviorGrpcConfig:DistributionDefaultCacheBehaviorGrpcConfig": { + "properties": { + "enabled": { + "type": "boolean", + "description": "`true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "enabled" + ] + } + } + }, "aws:cloudfront/DistributionDefaultCacheBehaviorLambdaFunctionAssociation:DistributionDefaultCacheBehaviorLambdaFunctionAssociation": { "properties": { "eventType": { @@ -25990,7 +26103,7 @@ "properties": { "bucket": { "type": "string", - "description": "Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`.\n" + "description": "Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with \"FULL_CONTROL\" permission for \"awslogsdelivery\" account (Canonical ID: \"c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0\") for log transfer to work.\n" }, "includeCookies": { "type": "boolean", @@ -26032,7 +26145,7 @@ }, "defaultTtl": { "type": "integer", - "description": "Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header.\n" + "description": "Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration.\n" }, "fieldLevelEncryptionId": { "type": "string", @@ -26049,6 +26162,10 @@ }, "description": "A config block that triggers a cloudfront function with specific actions (maximum 2).\n" }, + "grpcConfig": { + "$ref": "#/types/aws:cloudfront/DistributionOrderedCacheBehaviorGrpcConfig:DistributionOrderedCacheBehaviorGrpcConfig", + "description": "A config block that sets the grpc config.\n" + }, "lambdaFunctionAssociations": { "type": "array", "items": { @@ -26058,11 +26175,11 @@ }, "maxTtl": { "type": "integer", - "description": "Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers.\n" + "description": "Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration.\n" }, "minTtl": { "type": "integer", - "description": "Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds.\n" + "description": "Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration.\n" }, "originRequestPolicyId": { "type": "string", @@ -26121,6 +26238,7 @@ "allowedMethods", "cachedMethods", "defaultTtl", + "grpcConfig", "maxTtl", "pathPattern", "targetOriginId", @@ -26206,6 +26324,22 @@ "functionArn" ] }, + "aws:cloudfront/DistributionOrderedCacheBehaviorGrpcConfig:DistributionOrderedCacheBehaviorGrpcConfig": { + "properties": { + "enabled": { + "type": "boolean", + "description": "`true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "enabled" + ] + } + } + }, "aws:cloudfront/DistributionOrderedCacheBehaviorLambdaFunctionAssociation:DistributionOrderedCacheBehaviorLambdaFunctionAssociation": { "properties": { "eventType": { @@ -29181,6 +29315,35 @@ "bucketName" ] }, + "aws:cloudwatch/LogDeliveryDestinationDeliveryDestinationConfiguration:LogDeliveryDestinationDeliveryDestinationConfiguration": { + "properties": { + "destinationResourceArn": { + "type": "string", + "description": "The ARN of the AWS destination that this delivery destination represents.\n" + } + }, + "type": "object", + "required": [ + "destinationResourceArn" + ] + }, + "aws:cloudwatch/LogDeliveryS3DeliveryConfiguration:LogDeliveryS3DeliveryConfiguration": { + "properties": { + "enableHiveCompatiblePath": { + "type": "boolean", + "description": "This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive.\n" + }, + "suffixPath": { + "type": "string", + "description": "This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source.\n" + } + }, + "type": "object", + "required": [ + "enableHiveCompatiblePath", + "suffixPath" + ] + }, "aws:cloudwatch/LogMetricFilterMetricTransformation:LogMetricFilterMetricTransformation": { "properties": { "defaultValue": { @@ -29368,6 +29531,48 @@ "namespace" ] }, + "aws:cloudwatch/getEventBusesEventBus:getEventBusesEventBus": { + "properties": { + "arn": { + "type": "string", + "description": "The ARN of the event bus.\n" + }, + "creationTime": { + "type": "string", + "description": "The time the event bus was created.\n" + }, + "description": { + "type": "string", + "description": "The event bus description.\n" + }, + "lastModifiedTime": { + "type": "string", + "description": "The time the event bus was last modified.\n" + }, + "name": { + "type": "string", + "description": "The name of the event bus.\n" + }, + "policy": { + "type": "string", + "description": "The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus.\n" + } + }, + "type": "object", + "required": [ + "arn", + "creationTime", + "description", + "lastModifiedTime", + "name", + "policy" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "aws:cloudwatch/getLogDataProtectionPolicyDocumentStatement:getLogDataProtectionPolicyDocumentStatement": { "properties": { "dataIdentifiers": { @@ -29524,6 +29729,36 @@ "repositoryName" ] }, + "aws:codebuild/FleetComputeConfiguration:FleetComputeConfiguration": { + "properties": { + "disk": { + "type": "integer", + "description": "Amount of disk space of the instance type included in the fleet.\n" + }, + "machineType": { + "type": "string", + "description": "Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`.\n" + }, + "memory": { + "type": "integer", + "description": "Amount of memory of the instance type included in the fleet.\n" + }, + "vcpu": { + "type": "integer", + "description": "Number of vCPUs of the instance type included in the fleet.\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "disk", + "memory", + "vcpu" + ] + } + } + }, "aws:codebuild/FleetScalingConfiguration:FleetScalingConfiguration": { "properties": { "desiredCapacity": { @@ -30229,6 +30464,38 @@ "scope" ] }, + "aws:codebuild/getFleetComputeConfiguration:getFleetComputeConfiguration": { + "properties": { + "disk": { + "type": "integer", + "description": "Amount of disk space of the instance type included in the fleet.\n" + }, + "machineType": { + "type": "string", + "description": "Machine type of the instance type included in the fleet.\n" + }, + "memory": { + "type": "integer", + "description": "Amount of memory of the instance type included in the fleet.\n" + }, + "vcpu": { + "type": "integer", + "description": "Number of vCPUs of the instance type included in the fleet.\n" + } + }, + "type": "object", + "required": [ + "disk", + "machineType", + "memory", + "vcpu" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "aws:codebuild/getFleetScalingConfiguration:getFleetScalingConfiguration": { "properties": { "desiredCapacity": { @@ -32274,6 +32541,19 @@ }, "type": "object" }, + "aws:cognito/UserPoolEmailMfaConfiguration:UserPoolEmailMfaConfiguration": { + "properties": { + "message": { + "type": "string", + "description": "The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format.\n" + }, + "subject": { + "type": "string", + "description": "The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in.\n" + } + }, + "type": "object" + }, "aws:cognito/UserPoolLambdaConfig:UserPoolLambdaConfig": { "properties": { "createAuthChallenge": { @@ -32495,6 +32775,18 @@ }, "type": "object" }, + "aws:cognito/UserPoolSignInPolicy:UserPoolSignInPolicy": { + "properties": { + "allowedFirstAuthFactors": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`.\n" + } + }, + "type": "object" + }, "aws:cognito/UserPoolSmsConfiguration:UserPoolSmsConfiguration": { "properties": { "externalId": { @@ -32617,6 +32909,19 @@ } } }, + "aws:cognito/UserPoolWebAuthnConfiguration:UserPoolWebAuthnConfiguration": { + "properties": { + "relyingPartyId": { + "type": "string", + "description": "The authentication domain that passkeys providers use as a relying party.\n" + }, + "userVerification": { + "type": "string", + "description": "If your user pool should require a passkey. Must be one of `required` or `preferred`.\n" + } + }, + "type": "object" + }, "aws:cognito/getIdentityPoolCognitoIdentityProvider:getIdentityPoolCognitoIdentityProvider": { "properties": { "clientId": { @@ -43115,6 +43420,10 @@ "type": "boolean", "description": "Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`.\n" }, + "saslMechanism": { + "type": "string", + "description": "For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`.\n" + }, "saslPassword": { "type": "string", "description": "Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication.\n", @@ -43638,6 +43947,9 @@ "partitionIncludeSchemaTable": { "type": "boolean" }, + "saslMechanism": { + "type": "string" + }, "saslPassword": { "type": "string" }, @@ -43675,6 +43987,7 @@ "messageMaxBytes", "noHexPrefix", "partitionIncludeSchemaTable", + "saslMechanism", "saslPassword", "saslUsername", "securityProtocol", @@ -63874,6 +64187,15 @@ } } }, + "aws:eks/NodeGroupNodeRepairConfig:NodeGroupNodeRepairConfig": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default.\n" + } + }, + "type": "object" + }, "aws:eks/NodeGroupRemoteAccess:NodeGroupRemoteAccess": { "properties": { "ec2SshKey": { @@ -121595,7 +121917,8 @@ "description": "Configuration for specifying the position in the topics to start replicating from.\n" }, "topicNameConfiguration": { - "$ref": "#/types/aws:msk/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration:ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration" + "$ref": "#/types/aws:msk/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration:ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration", + "description": "Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias.\n" }, "topicsToExcludes": { "type": "array", @@ -121640,6 +121963,7 @@ "properties": { "type": { "type": "string", + "description": "The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`.\n", "willReplaceOnChanges": true } }, @@ -135077,7 +135401,7 @@ }, "clientPasswordAuthType": { "type": "string", - "description": "The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.\n" + "description": "The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.\n" }, "description": { "type": "string", @@ -136932,6 +137256,243 @@ "values" ] }, + "aws:route53/getRecordsResourceRecordSet:getRecordsResourceRecordSet": { + "properties": { + "aliasTarget": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetAliasTarget:getRecordsResourceRecordSetAliasTarget", + "description": "Information about the AWS resource traffic is routed to.\n" + }, + "cidrRoutingConfig": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetCidrRoutingConfig:getRecordsResourceRecordSetCidrRoutingConfig", + "description": "Information about the CIDR location traffic is routed to.\n" + }, + "failover": { + "type": "string", + "description": "`PRIMARY` or `SECONDARY`.\n" + }, + "geolocation": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetGeolocation:getRecordsResourceRecordSetGeolocation", + "description": "Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query.\n" + }, + "geoproximityLocation": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetGeoproximityLocation:getRecordsResourceRecordSetGeoproximityLocation", + "description": "Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query.\n" + }, + "healthCheckId": { + "type": "string", + "description": "ID of any applicable health check.\n" + }, + "multiValueAnswer": { + "type": "boolean", + "description": "Traffic is routed approximately randomly to multiple resources.\n" + }, + "name": { + "type": "string", + "description": "The name of the record.\n" + }, + "region": { + "type": "string", + "description": "The Amazon EC2 Region of the resource that this resource record set refers to.\n" + }, + "resourceRecords": { + "type": "array", + "items": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetResourceRecord:getRecordsResourceRecordSetResourceRecord" + }, + "description": "The resource records.\n" + }, + "setIdentifier": { + "type": "string", + "description": "An identifier that differentiates among multiple resource record sets that have the same combination of name and type.\n" + }, + "trafficPolicyInstanceId": { + "type": "string", + "description": "The ID of any traffic policy instance that Route 53 created this resource record set for.\n" + }, + "ttl": { + "type": "integer", + "description": "The resource record cache time to live (TTL), in seconds.\n" + }, + "type": { + "type": "string", + "description": "The DNS record type.\n" + }, + "weight": { + "type": "integer", + "description": "Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set.\n" + } + }, + "type": "object", + "required": [ + "aliasTarget", + "cidrRoutingConfig", + "failover", + "geolocation", + "geoproximityLocation", + "healthCheckId", + "multiValueAnswer", + "name", + "region", + "resourceRecords", + "setIdentifier", + "trafficPolicyInstanceId", + "ttl", + "type", + "weight" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetAliasTarget:getRecordsResourceRecordSetAliasTarget": { + "properties": { + "dnsName": { + "type": "string", + "description": "Target DNS name.\n" + }, + "evaluateTargetHealth": { + "type": "boolean", + "description": "Whether an alias resource record set inherits the health of the referenced AWS resource.\n" + }, + "hostedZoneId": { + "type": "string", + "description": "Target hosted zone ID.\n" + } + }, + "type": "object", + "required": [ + "dnsName", + "evaluateTargetHealth", + "hostedZoneId" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetCidrRoutingConfig:getRecordsResourceRecordSetCidrRoutingConfig": { + "properties": { + "collectionId": { + "type": "string", + "description": "The CIDR collection ID.\n" + }, + "locationName": { + "type": "string", + "description": "The CIDR collection location name.\n" + } + }, + "type": "object", + "required": [ + "collectionId", + "locationName" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetGeolocation:getRecordsResourceRecordSetGeolocation": { + "properties": { + "continentCode": { + "type": "string", + "description": "The two-letter code for the continent.\n" + }, + "countryCode": { + "type": "string", + "description": "The two-letter code for a country.\n" + }, + "subdivisionCode": { + "type": "string", + "description": "The two-letter code for a state of the United States.\n" + } + }, + "type": "object", + "required": [ + "continentCode", + "countryCode", + "subdivisionCode" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetGeoproximityLocation:getRecordsResourceRecordSetGeoproximityLocation": { + "properties": { + "awsRegion": { + "type": "string", + "description": "The AWS Region the resource you are directing DNS traffic to, is in.\n" + }, + "bias": { + "type": "integer", + "description": "The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource.\n" + }, + "coordinates": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSetGeoproximityLocationCoordinates:getRecordsResourceRecordSetGeoproximityLocationCoordinates", + "description": "Contains the longitude and latitude for a geographic region.\n" + }, + "localZoneGroup": { + "type": "string", + "description": "An AWS Local Zone Group.\n" + } + }, + "type": "object", + "required": [ + "awsRegion", + "bias", + "coordinates", + "localZoneGroup" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetGeoproximityLocationCoordinates:getRecordsResourceRecordSetGeoproximityLocationCoordinates": { + "properties": { + "latitude": { + "type": "string", + "description": "Latitude.\n" + }, + "longitude": { + "type": "string", + "description": "Longitude.\n" + } + }, + "type": "object", + "required": [ + "latitude", + "longitude" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, + "aws:route53/getRecordsResourceRecordSetResourceRecord:getRecordsResourceRecordSetResourceRecord": { + "properties": { + "value": { + "type": "string", + "description": "The DNS record value.\n" + } + }, + "type": "object", + "required": [ + "value" + ], + "language": { + "nodejs": { + "requiredInputs": [] + } + } + }, "aws:route53/getResolverEndpointFilter:getResolverEndpointFilter": { "properties": { "name": { @@ -140289,6 +140850,27 @@ "type" ] }, + "aws:s3/ObjectCopyOverrideProvider:ObjectCopyOverrideProvider": { + "properties": { + "defaultTags": { + "$ref": "#/types/aws:s3/ObjectCopyOverrideProviderDefaultTags:ObjectCopyOverrideProviderDefaultTags", + "description": "Override the provider `default_tags` configuration block.\n" + } + }, + "type": "object" + }, + "aws:s3/ObjectCopyOverrideProviderDefaultTags:ObjectCopyOverrideProviderDefaultTags": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + } + }, + "type": "object" + }, "aws:s3control/AccessGrantAccessGrantsLocationConfiguration:AccessGrantAccessGrantsLocationConfiguration": { "properties": { "s3SubPrefix": { @@ -156102,7 +156684,7 @@ }, "userSecretId": { "type": "string", - "description": "Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password.\n" + "description": "Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password.\n" } }, "type": "object", @@ -156881,6 +157463,23 @@ }, "type": "object" }, + "aws:vpclattice/ResourceGatewayTimeouts:ResourceGatewayTimeouts": { + "properties": { + "create": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n" + }, + "delete": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.\n" + }, + "update": { + "type": "string", + "description": "A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as \"30s\" or \"2h45m\". Valid time units are \"s\" (seconds), \"m\" (minutes), \"h\" (hours).\n" + } + }, + "type": "object" + }, "aws:vpclattice/ServiceDnsEntry:ServiceDnsEntry": { "properties": { "domainName": { @@ -194528,6 +195127,125 @@ "type": "object" } }, + "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator": { + "description": "Resource for managing an AWS Bedrock Agents Agent Collaborator.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst current = aws.getCallerIdentity({});\nconst currentGetPartition = aws.getPartition({});\nconst currentGetRegion = aws.getRegion({});\nconst exampleAgentTrust = Promise.all([current, currentGetPartition, currentGetRegion, current]).then(([current, currentGetPartition, currentGetRegion, current1]) =\u003e aws.iam.getPolicyDocument({\n statements: [{\n actions: [\"sts:AssumeRole\"],\n principals: [{\n identifiers: [\"bedrock.amazonaws.com\"],\n type: \"Service\",\n }],\n conditions: [\n {\n test: \"StringEquals\",\n values: [current.accountId],\n variable: \"aws:SourceAccount\",\n },\n {\n test: \"ArnLike\",\n values: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}:${current1.accountId}:agent/*`],\n variable: \"AWS:SourceArn\",\n },\n ],\n }],\n}));\nconst exampleAgentPermissions = Promise.all([currentGetPartition, currentGetRegion, currentGetRegion, current, currentGetRegion, current]).then(([currentGetPartition, currentGetRegion, currentGetRegion1, current, currentGetRegion2, current1]) =\u003e aws.iam.getPolicyDocument({\n statements: [\n {\n actions: [\"bedrock:InvokeModel\"],\n resources: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0`],\n },\n {\n actions: [\n \"bedrock:GetAgentAlias\",\n \"bedrock:InvokeAgent\",\n ],\n resources: [\n `arn:${currentAgent.partition}:bedrock:${currentGetRegion1.name}:${current.accountId}:agent/*`,\n `arn:${currentAgent.partition}:bedrock:${currentGetRegion2.name}:${current1.accountId}:agent-alias/*`,\n ],\n },\n ],\n}));\nconst example = new aws.iam.Role(\"example\", {\n assumeRolePolicy: exampleAgentTrust.then(exampleAgentTrust =\u003e exampleAgentTrust.json),\n namePrefix: \"AmazonBedrockExecutionRoleForAgents_\",\n});\nconst exampleRolePolicy = new aws.iam.RolePolicy(\"example\", {\n policy: exampleAgentPermissions.then(exampleAgentPermissions =\u003e exampleAgentPermissions.json),\n role: example.id,\n});\nconst exampleCollaborator = new aws.bedrock.AgentAgent(\"example_collaborator\", {\n agentName: \"my-agent-collaborator\",\n agentResourceRoleArn: example.arn,\n idleSessionTtlInSeconds: 500,\n foundationModel: \"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n instruction: \"do what the supervisor tells you to do\",\n});\nconst exampleSupervisor = new aws.bedrock.AgentAgent(\"example_supervisor\", {\n agentName: \"my-agent-supervisor\",\n agentResourceRoleArn: example.arn,\n agentCollaboration: \"SUPERVISOR\",\n idleSessionTtlInSeconds: 500,\n foundationModel: \"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n instruction: \"tell the sub agent what to do\",\n prepareAgent: false,\n});\nconst exampleAgentAgentAlias = new aws.bedrock.AgentAgentAlias(\"example\", {\n agentAliasName: \"my-agent-alias\",\n agentId: exampleCollaborator.agentId,\n description: \"Test Alias\",\n});\nconst exampleAgentAgentCollaborator = new aws.bedrock.AgentAgentCollaborator(\"example\", {\n agentId: exampleSupervisor.agentId,\n collaborationInstruction: \"tell the other agent what to do\",\n collaboratorName: \"my-collab-example\",\n relayConversationHistory: \"TO_COLLABORATOR\",\n agentDescriptor: {\n aliasArn: exampleAgentAgentAlias.agentAliasArn,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ncurrent = aws.get_caller_identity()\ncurrent_get_partition = aws.get_partition()\ncurrent_get_region = aws.get_region()\nexample_agent_trust = aws.iam.get_policy_document(statements=[{\n \"actions\": [\"sts:AssumeRole\"],\n \"principals\": [{\n \"identifiers\": [\"bedrock.amazonaws.com\"],\n \"type\": \"Service\",\n }],\n \"conditions\": [\n {\n \"test\": \"StringEquals\",\n \"values\": [current.account_id],\n \"variable\": \"aws:SourceAccount\",\n },\n {\n \"test\": \"ArnLike\",\n \"values\": [f\"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}:{current.account_id}:agent/*\"],\n \"variable\": \"AWS:SourceArn\",\n },\n ],\n}])\nexample_agent_permissions = aws.iam.get_policy_document(statements=[\n {\n \"actions\": [\"bedrock:InvokeModel\"],\n \"resources\": [f\"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0\"],\n },\n {\n \"actions\": [\n \"bedrock:GetAgentAlias\",\n \"bedrock:InvokeAgent\",\n ],\n \"resources\": [\n f\"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent/*\",\n f\"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent-alias/*\",\n ],\n },\n])\nexample = aws.iam.Role(\"example\",\n assume_role_policy=example_agent_trust.json,\n name_prefix=\"AmazonBedrockExecutionRoleForAgents_\")\nexample_role_policy = aws.iam.RolePolicy(\"example\",\n policy=example_agent_permissions.json,\n role=example.id)\nexample_collaborator = aws.bedrock.AgentAgent(\"example_collaborator\",\n agent_name=\"my-agent-collaborator\",\n agent_resource_role_arn=example.arn,\n idle_session_ttl_in_seconds=500,\n foundation_model=\"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n instruction=\"do what the supervisor tells you to do\")\nexample_supervisor = aws.bedrock.AgentAgent(\"example_supervisor\",\n agent_name=\"my-agent-supervisor\",\n agent_resource_role_arn=example.arn,\n agent_collaboration=\"SUPERVISOR\",\n idle_session_ttl_in_seconds=500,\n foundation_model=\"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n instruction=\"tell the sub agent what to do\",\n prepare_agent=False)\nexample_agent_agent_alias = aws.bedrock.AgentAgentAlias(\"example\",\n agent_alias_name=\"my-agent-alias\",\n agent_id=example_collaborator.agent_id,\n description=\"Test Alias\")\nexample_agent_agent_collaborator = aws.bedrock.AgentAgentCollaborator(\"example\",\n agent_id=example_supervisor.agent_id,\n collaboration_instruction=\"tell the other agent what to do\",\n collaborator_name=\"my-collab-example\",\n relay_conversation_history=\"TO_COLLABORATOR\",\n agent_descriptor={\n \"alias_arn\": example_agent_agent_alias.agent_alias_arn,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Aws.GetCallerIdentity.Invoke();\n\n var currentGetPartition = Aws.GetPartition.Invoke();\n\n var currentGetRegion = Aws.GetRegion.Invoke();\n\n var exampleAgentTrust = Aws.Iam.GetPolicyDocument.Invoke(new()\n {\n Statements = new[]\n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs\n {\n Actions = new[]\n {\n \"sts:AssumeRole\",\n },\n Principals = new[]\n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs\n {\n Identifiers = new[]\n {\n \"bedrock.amazonaws.com\",\n },\n Type = \"Service\",\n },\n },\n Conditions = new[]\n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs\n {\n Test = \"StringEquals\",\n Values = new[]\n {\n current.Apply(getCallerIdentityResult =\u003e getCallerIdentityResult.AccountId),\n },\n Variable = \"aws:SourceAccount\",\n },\n new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs\n {\n Test = \"ArnLike\",\n Values = new[]\n {\n $\"arn:{currentGetPartition.Apply(getPartitionResult =\u003e getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult =\u003e getRegionResult.Name)}:{current.Apply(getCallerIdentityResult =\u003e getCallerIdentityResult.AccountId)}:agent/*\",\n },\n Variable = \"AWS:SourceArn\",\n },\n },\n },\n },\n });\n\n var exampleAgentPermissions = Aws.Iam.GetPolicyDocument.Invoke(new()\n {\n Statements = new[]\n {\n new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs\n {\n Actions = new[]\n {\n \"bedrock:InvokeModel\",\n },\n Resources = new[]\n {\n $\"arn:{currentGetPartition.Apply(getPartitionResult =\u003e getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult =\u003e getRegionResult.Name)}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0\",\n },\n },\n new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs\n {\n Actions = new[]\n {\n \"bedrock:GetAgentAlias\",\n \"bedrock:InvokeAgent\",\n },\n Resources = new[]\n {\n $\"arn:{currentAgent.Partition}:bedrock:{currentGetRegion.Apply(getRegionResult =\u003e getRegionResult.Name)}:{current.Apply(getCallerIdentityResult =\u003e getCallerIdentityResult.AccountId)}:agent/*\",\n $\"arn:{currentAgent.Partition}:bedrock:{currentGetRegion.Apply(getRegionResult =\u003e getRegionResult.Name)}:{current.Apply(getCallerIdentityResult =\u003e getCallerIdentityResult.AccountId)}:agent-alias/*\",\n },\n },\n },\n });\n\n var example = new Aws.Iam.Role(\"example\", new()\n {\n AssumeRolePolicy = exampleAgentTrust.Apply(getPolicyDocumentResult =\u003e getPolicyDocumentResult.Json),\n NamePrefix = \"AmazonBedrockExecutionRoleForAgents_\",\n });\n\n var exampleRolePolicy = new Aws.Iam.RolePolicy(\"example\", new()\n {\n Policy = exampleAgentPermissions.Apply(getPolicyDocumentResult =\u003e getPolicyDocumentResult.Json),\n Role = example.Id,\n });\n\n var exampleCollaborator = new Aws.Bedrock.AgentAgent(\"example_collaborator\", new()\n {\n AgentName = \"my-agent-collaborator\",\n AgentResourceRoleArn = example.Arn,\n IdleSessionTtlInSeconds = 500,\n FoundationModel = \"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n Instruction = \"do what the supervisor tells you to do\",\n });\n\n var exampleSupervisor = new Aws.Bedrock.AgentAgent(\"example_supervisor\", new()\n {\n AgentName = \"my-agent-supervisor\",\n AgentResourceRoleArn = example.Arn,\n AgentCollaboration = \"SUPERVISOR\",\n IdleSessionTtlInSeconds = 500,\n FoundationModel = \"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n Instruction = \"tell the sub agent what to do\",\n PrepareAgent = false,\n });\n\n var exampleAgentAgentAlias = new Aws.Bedrock.AgentAgentAlias(\"example\", new()\n {\n AgentAliasName = \"my-agent-alias\",\n AgentId = exampleCollaborator.AgentId,\n Description = \"Test Alias\",\n });\n\n var exampleAgentAgentCollaborator = new Aws.Bedrock.AgentAgentCollaborator(\"example\", new()\n {\n AgentId = exampleSupervisor.AgentId,\n CollaborationInstruction = \"tell the other agent what to do\",\n CollaboratorName = \"my-collab-example\",\n RelayConversationHistory = \"TO_COLLABORATOR\",\n AgentDescriptor = new Aws.Bedrock.Inputs.AgentAgentCollaboratorAgentDescriptorArgs\n {\n AliasArn = exampleAgentAgentAlias.AgentAliasArn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrock\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\ncurrent, err := aws.GetCallerIdentity(ctx, \u0026aws.GetCallerIdentityArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ncurrentGetPartition, err := aws.GetPartition(ctx, \u0026aws.GetPartitionArgs{\n}, nil);\nif err != nil {\nreturn err\n}\ncurrentGetRegion, err := aws.GetRegion(ctx, \u0026aws.GetRegionArgs{\n}, nil);\nif err != nil {\nreturn err\n}\nexampleAgentTrust, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\nStatements: []iam.GetPolicyDocumentStatement{\n{\nActions: []string{\n\"sts:AssumeRole\",\n},\nPrincipals: []iam.GetPolicyDocumentStatementPrincipal{\n{\nIdentifiers: []string{\n\"bedrock.amazonaws.com\",\n},\nType: \"Service\",\n},\n},\nConditions: []iam.GetPolicyDocumentStatementCondition{\n{\nTest: \"StringEquals\",\nValues: interface{}{\ncurrent.AccountId,\n},\nVariable: \"aws:SourceAccount\",\n},\n{\nTest: \"ArnLike\",\nValues: []string{\nfmt.Sprintf(\"arn:%v:bedrock:%v:%v:agent/*\", currentGetPartition.Partition, currentGetRegion.Name, current.AccountId),\n},\nVariable: \"AWS:SourceArn\",\n},\n},\n},\n},\n}, nil);\nif err != nil {\nreturn err\n}\nexampleAgentPermissions, err := iam.GetPolicyDocument(ctx, \u0026iam.GetPolicyDocumentArgs{\nStatements: []iam.GetPolicyDocumentStatement{\n{\nActions: []string{\n\"bedrock:InvokeModel\",\n},\nResources: []string{\nfmt.Sprintf(\"arn:%v:bedrock:%v::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0\", currentGetPartition.Partition, currentGetRegion.Name),\n},\n},\n{\nActions: []string{\n\"bedrock:GetAgentAlias\",\n\"bedrock:InvokeAgent\",\n},\nResources: []string{\nfmt.Sprintf(\"arn:%v:bedrock:%v:%v:agent/*\", currentAgent.Partition, currentGetRegion.Name, current.AccountId),\nfmt.Sprintf(\"arn:%v:bedrock:%v:%v:agent-alias/*\", currentAgent.Partition, currentGetRegion.Name, current.AccountId),\n},\n},\n},\n}, nil);\nif err != nil {\nreturn err\n}\nexample, err := iam.NewRole(ctx, \"example\", \u0026iam.RoleArgs{\nAssumeRolePolicy: pulumi.String(exampleAgentTrust.Json),\nNamePrefix: pulumi.String(\"AmazonBedrockExecutionRoleForAgents_\"),\n})\nif err != nil {\nreturn err\n}\n_, err = iam.NewRolePolicy(ctx, \"example\", \u0026iam.RolePolicyArgs{\nPolicy: pulumi.String(exampleAgentPermissions.Json),\nRole: example.ID(),\n})\nif err != nil {\nreturn err\n}\nexampleCollaborator, err := bedrock.NewAgentAgent(ctx, \"example_collaborator\", \u0026bedrock.AgentAgentArgs{\nAgentName: pulumi.String(\"my-agent-collaborator\"),\nAgentResourceRoleArn: example.Arn,\nIdleSessionTtlInSeconds: pulumi.Int(500),\nFoundationModel: pulumi.String(\"anthropic.claude-3-5-sonnet-20241022-v2:0\"),\nInstruction: pulumi.String(\"do what the supervisor tells you to do\"),\n})\nif err != nil {\nreturn err\n}\nexampleSupervisor, err := bedrock.NewAgentAgent(ctx, \"example_supervisor\", \u0026bedrock.AgentAgentArgs{\nAgentName: pulumi.String(\"my-agent-supervisor\"),\nAgentResourceRoleArn: example.Arn,\nAgentCollaboration: pulumi.String(\"SUPERVISOR\"),\nIdleSessionTtlInSeconds: pulumi.Int(500),\nFoundationModel: pulumi.String(\"anthropic.claude-3-5-sonnet-20241022-v2:0\"),\nInstruction: pulumi.String(\"tell the sub agent what to do\"),\nPrepareAgent: pulumi.Bool(false),\n})\nif err != nil {\nreturn err\n}\nexampleAgentAgentAlias, err := bedrock.NewAgentAgentAlias(ctx, \"example\", \u0026bedrock.AgentAgentAliasArgs{\nAgentAliasName: pulumi.String(\"my-agent-alias\"),\nAgentId: exampleCollaborator.AgentId,\nDescription: pulumi.String(\"Test Alias\"),\n})\nif err != nil {\nreturn err\n}\n_, err = bedrock.NewAgentAgentCollaborator(ctx, \"example\", \u0026bedrock.AgentAgentCollaboratorArgs{\nAgentId: exampleSupervisor.AgentId,\nCollaborationInstruction: pulumi.String(\"tell the other agent what to do\"),\nCollaboratorName: pulumi.String(\"my-collab-example\"),\nRelayConversationHistory: pulumi.String(\"TO_COLLABORATOR\"),\nAgentDescriptor: \u0026bedrock.AgentAgentCollaboratorAgentDescriptorArgs{\nAliasArn: exampleAgentAgentAlias.AgentAliasArn,\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.AwsFunctions;\nimport com.pulumi.aws.inputs.GetCallerIdentityArgs;\nimport com.pulumi.aws.inputs.GetPartitionArgs;\nimport com.pulumi.aws.inputs.GetRegionArgs;\nimport com.pulumi.aws.iam.IamFunctions;\nimport com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;\nimport com.pulumi.aws.iam.Role;\nimport com.pulumi.aws.iam.RoleArgs;\nimport com.pulumi.aws.iam.RolePolicy;\nimport com.pulumi.aws.iam.RolePolicyArgs;\nimport com.pulumi.aws.bedrock.AgentAgent;\nimport com.pulumi.aws.bedrock.AgentAgentArgs;\nimport com.pulumi.aws.bedrock.AgentAgentAlias;\nimport com.pulumi.aws.bedrock.AgentAgentAliasArgs;\nimport com.pulumi.aws.bedrock.AgentAgentCollaborator;\nimport com.pulumi.aws.bedrock.AgentAgentCollaboratorArgs;\nimport com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorAgentDescriptorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AwsFunctions.getCallerIdentity();\n\n final var currentGetPartition = AwsFunctions.getPartition();\n\n final var currentGetRegion = AwsFunctions.getRegion();\n\n final var exampleAgentTrust = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()\n .statements(GetPolicyDocumentStatementArgs.builder()\n .actions(\"sts:AssumeRole\")\n .principals(GetPolicyDocumentStatementPrincipalArgs.builder()\n .identifiers(\"bedrock.amazonaws.com\")\n .type(\"Service\")\n .build())\n .conditions( \n GetPolicyDocumentStatementConditionArgs.builder()\n .test(\"StringEquals\")\n .values(current.applyValue(getCallerIdentityResult -\u003e getCallerIdentityResult.accountId()))\n .variable(\"aws:SourceAccount\")\n .build(),\n GetPolicyDocumentStatementConditionArgs.builder()\n .test(\"ArnLike\")\n .values(String.format(\"arn:%s:bedrock:%s:%s:agent/*\", currentGetPartition.applyValue(getPartitionResult -\u003e getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -\u003e getRegionResult.name()),current.applyValue(getCallerIdentityResult -\u003e getCallerIdentityResult.accountId())))\n .variable(\"AWS:SourceArn\")\n .build())\n .build())\n .build());\n\n final var exampleAgentPermissions = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()\n .statements( \n GetPolicyDocumentStatementArgs.builder()\n .actions(\"bedrock:InvokeModel\")\n .resources(String.format(\"arn:%s:bedrock:%s::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0\", currentGetPartition.applyValue(getPartitionResult -\u003e getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -\u003e getRegionResult.name())))\n .build(),\n GetPolicyDocumentStatementArgs.builder()\n .actions( \n \"bedrock:GetAgentAlias\",\n \"bedrock:InvokeAgent\")\n .resources( \n String.format(\"arn:%s:bedrock:%s:%s:agent/*\", currentAgent.partition(),currentGetRegion.applyValue(getRegionResult -\u003e getRegionResult.name()),current.applyValue(getCallerIdentityResult -\u003e getCallerIdentityResult.accountId())),\n String.format(\"arn:%s:bedrock:%s:%s:agent-alias/*\", currentAgent.partition(),currentGetRegion.applyValue(getRegionResult -\u003e getRegionResult.name()),current.applyValue(getCallerIdentityResult -\u003e getCallerIdentityResult.accountId())))\n .build())\n .build());\n\n var example = new Role(\"example\", RoleArgs.builder()\n .assumeRolePolicy(exampleAgentTrust.applyValue(getPolicyDocumentResult -\u003e getPolicyDocumentResult.json()))\n .namePrefix(\"AmazonBedrockExecutionRoleForAgents_\")\n .build());\n\n var exampleRolePolicy = new RolePolicy(\"exampleRolePolicy\", RolePolicyArgs.builder()\n .policy(exampleAgentPermissions.applyValue(getPolicyDocumentResult -\u003e getPolicyDocumentResult.json()))\n .role(example.id())\n .build());\n\n var exampleCollaborator = new AgentAgent(\"exampleCollaborator\", AgentAgentArgs.builder()\n .agentName(\"my-agent-collaborator\")\n .agentResourceRoleArn(example.arn())\n .idleSessionTtlInSeconds(500)\n .foundationModel(\"anthropic.claude-3-5-sonnet-20241022-v2:0\")\n .instruction(\"do what the supervisor tells you to do\")\n .build());\n\n var exampleSupervisor = new AgentAgent(\"exampleSupervisor\", AgentAgentArgs.builder()\n .agentName(\"my-agent-supervisor\")\n .agentResourceRoleArn(example.arn())\n .agentCollaboration(\"SUPERVISOR\")\n .idleSessionTtlInSeconds(500)\n .foundationModel(\"anthropic.claude-3-5-sonnet-20241022-v2:0\")\n .instruction(\"tell the sub agent what to do\")\n .prepareAgent(false)\n .build());\n\n var exampleAgentAgentAlias = new AgentAgentAlias(\"exampleAgentAgentAlias\", AgentAgentAliasArgs.builder()\n .agentAliasName(\"my-agent-alias\")\n .agentId(exampleCollaborator.agentId())\n .description(\"Test Alias\")\n .build());\n\n var exampleAgentAgentCollaborator = new AgentAgentCollaborator(\"exampleAgentAgentCollaborator\", AgentAgentCollaboratorArgs.builder()\n .agentId(exampleSupervisor.agentId())\n .collaborationInstruction(\"tell the other agent what to do\")\n .collaboratorName(\"my-collab-example\")\n .relayConversationHistory(\"TO_COLLABORATOR\")\n .agentDescriptor(AgentAgentCollaboratorAgentDescriptorArgs.builder()\n .aliasArn(exampleAgentAgentAlias.agentAliasArn())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:iam:Role\n properties:\n assumeRolePolicy: ${exampleAgentTrust.json}\n namePrefix: AmazonBedrockExecutionRoleForAgents_\n exampleRolePolicy:\n type: aws:iam:RolePolicy\n name: example\n properties:\n policy: ${exampleAgentPermissions.json}\n role: ${example.id}\n exampleCollaborator:\n type: aws:bedrock:AgentAgent\n name: example_collaborator\n properties:\n agentName: my-agent-collaborator\n agentResourceRoleArn: ${example.arn}\n idleSessionTtlInSeconds: 500\n foundationModel: anthropic.claude-3-5-sonnet-20241022-v2:0\n instruction: do what the supervisor tells you to do\n exampleSupervisor:\n type: aws:bedrock:AgentAgent\n name: example_supervisor\n properties:\n agentName: my-agent-supervisor\n agentResourceRoleArn: ${example.arn}\n agentCollaboration: SUPERVISOR\n idleSessionTtlInSeconds: 500\n foundationModel: anthropic.claude-3-5-sonnet-20241022-v2:0\n instruction: tell the sub agent what to do\n prepareAgent: false\n exampleAgentAgentAlias:\n type: aws:bedrock:AgentAgentAlias\n name: example\n properties:\n agentAliasName: my-agent-alias\n agentId: ${exampleCollaborator.agentId}\n description: Test Alias\n exampleAgentAgentCollaborator:\n type: aws:bedrock:AgentAgentCollaborator\n name: example\n properties:\n agentId: ${exampleSupervisor.agentId}\n collaborationInstruction: tell the other agent what to do\n collaboratorName: my-collab-example\n relayConversationHistory: TO_COLLABORATOR\n agentDescriptor:\n aliasArn: ${exampleAgentAgentAlias.agentAliasArn}\nvariables:\n current:\n fn::invoke:\n function: aws:getCallerIdentity\n arguments: {}\n currentGetPartition:\n fn::invoke:\n function: aws:getPartition\n arguments: {}\n currentGetRegion:\n fn::invoke:\n function: aws:getRegion\n arguments: {}\n exampleAgentTrust:\n fn::invoke:\n function: aws:iam:getPolicyDocument\n arguments:\n statements:\n - actions:\n - sts:AssumeRole\n principals:\n - identifiers:\n - bedrock.amazonaws.com\n type: Service\n conditions:\n - test: StringEquals\n values:\n - ${current.accountId}\n variable: aws:SourceAccount\n - test: ArnLike\n values:\n - arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}:${current.accountId}:agent/*\n variable: AWS:SourceArn\n exampleAgentPermissions:\n fn::invoke:\n function: aws:iam:getPolicyDocument\n arguments:\n statements:\n - actions:\n - bedrock:InvokeModel\n resources:\n - arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0\n - actions:\n - bedrock:GetAgentAlias\n - bedrock:InvokeAgent\n resources:\n - arn:${currentAgent.partition}:bedrock:${currentGetRegion.name}:${current.accountId}:agent/*\n - arn:${currentAgent.partition}:bedrock:${currentGetRegion.name}:${current.accountId}:agent-alias/*\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example:\n\n```sh\n$ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY\n```\n", + "properties": { + "agentDescriptor": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorAgentDescriptor:AgentAgentCollaboratorAgentDescriptor" + }, + "agentId": { + "type": "string", + "description": "ID if the agent to associate the collaborator.\n" + }, + "agentVersion": { + "type": "string" + }, + "collaborationInstruction": { + "type": "string", + "description": "Instruction to give the collaborator.\n" + }, + "collaboratorId": { + "type": "string", + "description": "ID of the Agent Collaborator.\n" + }, + "collaboratorName": { + "type": "string" + }, + "prepareAgent": { + "type": "boolean", + "description": "Whether to prepare the agent after creation or modification. Defaults to `true`.\n" + }, + "relayConversationHistory": { + "type": "string", + "description": "Configure relaying the history to the collaborator.\n" + }, + "timeouts": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorTimeouts:AgentAgentCollaboratorTimeouts" + } + }, + "required": [ + "agentId", + "agentVersion", + "collaborationInstruction", + "collaboratorId", + "collaboratorName", + "prepareAgent", + "relayConversationHistory" + ], + "inputProperties": { + "agentDescriptor": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorAgentDescriptor:AgentAgentCollaboratorAgentDescriptor" + }, + "agentId": { + "type": "string", + "description": "ID if the agent to associate the collaborator.\n" + }, + "agentVersion": { + "type": "string" + }, + "collaborationInstruction": { + "type": "string", + "description": "Instruction to give the collaborator.\n" + }, + "collaboratorName": { + "type": "string" + }, + "prepareAgent": { + "type": "boolean", + "description": "Whether to prepare the agent after creation or modification. Defaults to `true`.\n" + }, + "relayConversationHistory": { + "type": "string", + "description": "Configure relaying the history to the collaborator.\n" + }, + "timeouts": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorTimeouts:AgentAgentCollaboratorTimeouts" + } + }, + "requiredInputs": [ + "agentId", + "collaborationInstruction", + "collaboratorName" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering AgentAgentCollaborator resources.\n", + "properties": { + "agentDescriptor": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorAgentDescriptor:AgentAgentCollaboratorAgentDescriptor" + }, + "agentId": { + "type": "string", + "description": "ID if the agent to associate the collaborator.\n" + }, + "agentVersion": { + "type": "string" + }, + "collaborationInstruction": { + "type": "string", + "description": "Instruction to give the collaborator.\n" + }, + "collaboratorId": { + "type": "string", + "description": "ID of the Agent Collaborator.\n" + }, + "collaboratorName": { + "type": "string" + }, + "prepareAgent": { + "type": "boolean", + "description": "Whether to prepare the agent after creation or modification. Defaults to `true`.\n" + }, + "relayConversationHistory": { + "type": "string", + "description": "Configure relaying the history to the collaborator.\n" + }, + "timeouts": { + "$ref": "#/types/aws:bedrock/AgentAgentCollaboratorTimeouts:AgentAgentCollaboratorTimeouts" + } + }, + "type": "object" + } + }, "aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation": { "description": "Resource for managing an AWS Agents for Amazon Bedrock Agent Knowledge Base Association.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.bedrock.AgentAgentKnowledgeBaseAssociation(\"example\", {\n agentId: \"GGRRAED6JP\",\n description: \"Example Knowledge base\",\n knowledgeBaseId: \"EMDPPAYPZI\",\n knowledgeBaseState: \"ENABLED\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.bedrock.AgentAgentKnowledgeBaseAssociation(\"example\",\n agent_id=\"GGRRAED6JP\",\n description=\"Example Knowledge base\",\n knowledge_base_id=\"EMDPPAYPZI\",\n knowledge_base_state=\"ENABLED\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Bedrock.AgentAgentKnowledgeBaseAssociation(\"example\", new()\n {\n AgentId = \"GGRRAED6JP\",\n Description = \"Example Knowledge base\",\n KnowledgeBaseId = \"EMDPPAYPZI\",\n KnowledgeBaseState = \"ENABLED\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrock\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := bedrock.NewAgentAgentKnowledgeBaseAssociation(ctx, \"example\", \u0026bedrock.AgentAgentKnowledgeBaseAssociationArgs{\n\t\t\tAgentId: pulumi.String(\"GGRRAED6JP\"),\n\t\t\tDescription: pulumi.String(\"Example Knowledge base\"),\n\t\t\tKnowledgeBaseId: pulumi.String(\"EMDPPAYPZI\"),\n\t\t\tKnowledgeBaseState: pulumi.String(\"ENABLED\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.bedrock.AgentAgentKnowledgeBaseAssociation;\nimport com.pulumi.aws.bedrock.AgentAgentKnowledgeBaseAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new AgentAgentKnowledgeBaseAssociation(\"example\", AgentAgentKnowledgeBaseAssociationArgs.builder()\n .agentId(\"GGRRAED6JP\")\n .description(\"Example Knowledge base\")\n .knowledgeBaseId(\"EMDPPAYPZI\")\n .knowledgeBaseState(\"ENABLED\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:bedrock:AgentAgentKnowledgeBaseAssociation\n properties:\n agentId: GGRRAED6JP\n description: Example Knowledge base\n knowledgeBaseId: EMDPPAYPZI\n knowledgeBaseState: ENABLED\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Agents for Amazon Bedrock Agent Knowledge Base Association using the agent ID, the agent version, and the knowledge base ID separated by `,`. For example:\n\n```sh\n$ pulumi import aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation example GGRRAED6JP,DRAFT,EMDPPAYPZI\n```\n", "properties": { @@ -199727,6 +200445,195 @@ "type": "object" } }, + "aws:cleanrooms/membership:Membership": { + "description": "Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member.\n\n## Example Usage\n\n### Membership with tags\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst testMembership = new aws.cleanrooms.Membership(\"test_membership\", {\n collaborationId: \"1234abcd-12ab-34cd-56ef-1234567890ab\",\n queryLogStatus: \"DISABLED\",\n defaultResultConfiguration: {\n roleArn: \"arn:aws:iam::123456789012:role/role-name\",\n outputConfiguration: {\n s3: {\n bucket: \"test-bucket\",\n resultFormat: \"PARQUET\",\n keyPrefix: \"test-prefix\",\n },\n },\n },\n tags: {\n Project: \"Terraform\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest_membership = aws.cleanrooms.Membership(\"test_membership\",\n collaboration_id=\"1234abcd-12ab-34cd-56ef-1234567890ab\",\n query_log_status=\"DISABLED\",\n default_result_configuration={\n \"role_arn\": \"arn:aws:iam::123456789012:role/role-name\",\n \"output_configuration\": {\n \"s3\": {\n \"bucket\": \"test-bucket\",\n \"result_format\": \"PARQUET\",\n \"key_prefix\": \"test-prefix\",\n },\n },\n },\n tags={\n \"Project\": \"Terraform\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testMembership = new Aws.CleanRooms.Membership(\"test_membership\", new()\n {\n CollaborationId = \"1234abcd-12ab-34cd-56ef-1234567890ab\",\n QueryLogStatus = \"DISABLED\",\n DefaultResultConfiguration = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationArgs\n {\n RoleArn = \"arn:aws:iam::123456789012:role/role-name\",\n OutputConfiguration = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationOutputConfigurationArgs\n {\n S3 = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationOutputConfigurationS3Args\n {\n Bucket = \"test-bucket\",\n ResultFormat = \"PARQUET\",\n KeyPrefix = \"test-prefix\",\n },\n },\n },\n Tags = \n {\n { \"Project\", \"Terraform\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cleanrooms\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cleanrooms.NewMembership(ctx, \"test_membership\", \u0026cleanrooms.MembershipArgs{\n\t\t\tCollaborationId: pulumi.String(\"1234abcd-12ab-34cd-56ef-1234567890ab\"),\n\t\t\tQueryLogStatus: pulumi.String(\"DISABLED\"),\n\t\t\tDefaultResultConfiguration: \u0026cleanrooms.MembershipDefaultResultConfigurationArgs{\n\t\t\t\tRoleArn: pulumi.String(\"arn:aws:iam::123456789012:role/role-name\"),\n\t\t\t\tOutputConfiguration: \u0026cleanrooms.MembershipDefaultResultConfigurationOutputConfigurationArgs{\n\t\t\t\t\tS3: \u0026cleanrooms.MembershipDefaultResultConfigurationOutputConfigurationS3Args{\n\t\t\t\t\t\tBucket: pulumi.String(\"test-bucket\"),\n\t\t\t\t\t\tResultFormat: pulumi.String(\"PARQUET\"),\n\t\t\t\t\t\tKeyPrefix: pulumi.String(\"test-prefix\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Project\": pulumi.String(\"Terraform\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cleanrooms.Membership;\nimport com.pulumi.aws.cleanrooms.MembershipArgs;\nimport com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationArgs;\nimport com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationArgs;\nimport com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationS3Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testMembership = new Membership(\"testMembership\", MembershipArgs.builder()\n .collaborationId(\"1234abcd-12ab-34cd-56ef-1234567890ab\")\n .queryLogStatus(\"DISABLED\")\n .defaultResultConfiguration(MembershipDefaultResultConfigurationArgs.builder()\n .roleArn(\"arn:aws:iam::123456789012:role/role-name\")\n .outputConfiguration(MembershipDefaultResultConfigurationOutputConfigurationArgs.builder()\n .s3(MembershipDefaultResultConfigurationOutputConfigurationS3Args.builder()\n .bucket(\"test-bucket\")\n .resultFormat(\"PARQUET\")\n .keyPrefix(\"test-prefix\")\n .build())\n .build())\n .build())\n .tags(Map.of(\"Project\", \"Terraform\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testMembership:\n type: aws:cleanrooms:Membership\n name: test_membership\n properties:\n collaborationId: 1234abcd-12ab-34cd-56ef-1234567890ab\n queryLogStatus: DISABLED\n defaultResultConfiguration:\n roleArn: arn:aws:iam::123456789012:role/role-name\n outputConfiguration:\n s3:\n bucket: test-bucket\n resultFormat: PARQUET\n keyPrefix: test-prefix\n tags:\n Project: Terraform\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example:\n\n```sh\n$ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab\n```\n", + "properties": { + "arn": { + "type": "string", + "description": "The ARN of the membership.\n" + }, + "collaborationArn": { + "type": "string", + "description": "The ARN of the joined collaboration.\n" + }, + "collaborationCreatorAccountId": { + "type": "string", + "description": "The account ID of the collaboration's creator.\n" + }, + "collaborationCreatorDisplayName": { + "type": "string", + "description": "The display name of the collaboration's creator.\n" + }, + "collaborationId": { + "type": "string", + "description": "The ID of the collaboration to which the member was invited.\n" + }, + "collaborationName": { + "type": "string", + "description": "The name of the joined collaboration.\n" + }, + "createTime": { + "type": "string", + "description": "The date and time the membership was created.\n" + }, + "defaultResultConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipDefaultResultConfiguration:MembershipDefaultResultConfiguration", + "description": "The default configuration for a query result.\n" + }, + "memberAbilities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of abilities for the invited member.\n" + }, + "paymentConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipPaymentConfiguration:MembershipPaymentConfiguration" + }, + "queryLogStatus": { + "type": "string", + "description": "An indicator as to whether query logging has been enabled or disabled for the membership.\n" + }, + "status": { + "type": "string", + "description": "The status of the membership.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key value pairs which tag the membership.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "deprecationMessage": "Please use `tags` instead." + }, + "updateTime": { + "type": "string", + "description": "The date and time the membership was last updated.\n" + } + }, + "required": [ + "arn", + "collaborationArn", + "collaborationCreatorAccountId", + "collaborationCreatorDisplayName", + "collaborationId", + "collaborationName", + "createTime", + "memberAbilities", + "queryLogStatus", + "status", + "tagsAll", + "updateTime" + ], + "inputProperties": { + "collaborationId": { + "type": "string", + "description": "The ID of the collaboration to which the member was invited.\n" + }, + "defaultResultConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipDefaultResultConfiguration:MembershipDefaultResultConfiguration", + "description": "The default configuration for a query result.\n" + }, + "paymentConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipPaymentConfiguration:MembershipPaymentConfiguration" + }, + "queryLogStatus": { + "type": "string", + "description": "An indicator as to whether query logging has been enabled or disabled for the membership.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key value pairs which tag the membership.\n" + } + }, + "requiredInputs": [ + "collaborationId", + "queryLogStatus" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Membership resources.\n", + "properties": { + "arn": { + "type": "string", + "description": "The ARN of the membership.\n" + }, + "collaborationArn": { + "type": "string", + "description": "The ARN of the joined collaboration.\n" + }, + "collaborationCreatorAccountId": { + "type": "string", + "description": "The account ID of the collaboration's creator.\n" + }, + "collaborationCreatorDisplayName": { + "type": "string", + "description": "The display name of the collaboration's creator.\n" + }, + "collaborationId": { + "type": "string", + "description": "The ID of the collaboration to which the member was invited.\n" + }, + "collaborationName": { + "type": "string", + "description": "The name of the joined collaboration.\n" + }, + "createTime": { + "type": "string", + "description": "The date and time the membership was created.\n" + }, + "defaultResultConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipDefaultResultConfiguration:MembershipDefaultResultConfiguration", + "description": "The default configuration for a query result.\n" + }, + "memberAbilities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of abilities for the invited member.\n" + }, + "paymentConfiguration": { + "$ref": "#/types/aws:cleanrooms/MembershipPaymentConfiguration:MembershipPaymentConfiguration" + }, + "queryLogStatus": { + "type": "string", + "description": "An indicator as to whether query logging has been enabled or disabled for the membership.\n" + }, + "status": { + "type": "string", + "description": "The status of the membership.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key value pairs which tag the membership.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "deprecationMessage": "Please use `tags` instead." + }, + "updateTime": { + "type": "string", + "description": "The date and time the membership was last updated.\n" + } + }, + "type": "object" + } + }, "aws:cloud9/environmentEC2:EnvironmentEC2": { "description": "Provides a Cloud9 EC2 Development Environment.\n\n## Example Usage\n\nBasic usage:\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloud9.EnvironmentEC2(\"example\", {\n instanceType: \"t2.micro\",\n name: \"example-env\",\n imageId: \"amazonlinux-2023-x86_64\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloud9.EnvironmentEC2(\"example\",\n instance_type=\"t2.micro\",\n name=\"example-env\",\n image_id=\"amazonlinux-2023-x86_64\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Cloud9.EnvironmentEC2(\"example\", new()\n {\n InstanceType = \"t2.micro\",\n Name = \"example-env\",\n ImageId = \"amazonlinux-2023-x86_64\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloud9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloud9.NewEnvironmentEC2(ctx, \"example\", \u0026cloud9.EnvironmentEC2Args{\n\t\t\tInstanceType: pulumi.String(\"t2.micro\"),\n\t\t\tName: pulumi.String(\"example-env\"),\n\t\t\tImageId: pulumi.String(\"amazonlinux-2023-x86_64\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloud9.EnvironmentEC2;\nimport com.pulumi.aws.cloud9.EnvironmentEC2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new EnvironmentEC2(\"example\", EnvironmentEC2Args.builder()\n .instanceType(\"t2.micro\")\n .name(\"example-env\")\n .imageId(\"amazonlinux-2023-x86_64\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloud9:EnvironmentEC2\n properties:\n instanceType: t2.micro\n name: example-env\n imageId: amazonlinux-2023-x86_64\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nGet the URL of the Cloud9 environment after creation:\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloud9.EnvironmentEC2(\"example\", {instanceType: \"t2.micro\"});\nconst cloud9Instance = aws.ec2.getInstanceOutput({\n filters: [{\n name: \"tag:aws:cloud9:environment\",\n values: [example.id],\n }],\n});\nexport const cloud9Url = pulumi.interpolate`https://${region}.console.aws.amazon.com/cloud9/ide/${example.id}`;\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloud9.EnvironmentEC2(\"example\", instance_type=\"t2.micro\")\ncloud9_instance = aws.ec2.get_instance_output(filters=[{\n \"name\": \"tag:aws:cloud9:environment\",\n \"values\": [example.id],\n}])\npulumi.export(\"cloud9Url\", example.id.apply(lambda id: f\"https://{region}.console.aws.amazon.com/cloud9/ide/{id}\"))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Cloud9.EnvironmentEC2(\"example\", new()\n {\n InstanceType = \"t2.micro\",\n });\n\n var cloud9Instance = Aws.Ec2.GetInstance.Invoke(new()\n {\n Filters = new[]\n {\n new Aws.Ec2.Inputs.GetInstanceFilterInputArgs\n {\n Name = \"tag:aws:cloud9:environment\",\n Values = new[]\n {\n example.Id,\n },\n },\n },\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"cloud9Url\"] = example.Id.Apply(id =\u003e $\"https://{region}.console.aws.amazon.com/cloud9/ide/{id}\"),\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloud9\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cloud9.NewEnvironmentEC2(ctx, \"example\", \u0026cloud9.EnvironmentEC2Args{\n\t\t\tInstanceType: pulumi.String(\"t2.micro\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = ec2.LookupInstanceOutput(ctx, ec2.GetInstanceOutputArgs{\n\t\t\tFilters: ec2.GetInstanceFilterArray{\n\t\t\t\t\u0026ec2.GetInstanceFilterArgs{\n\t\t\t\t\tName: pulumi.String(\"tag:aws:cloud9:environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\texample.ID(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tctx.Export(\"cloud9Url\", example.ID().ApplyT(func(id string) (string, error) {\n\t\t\treturn fmt.Sprintf(\"https://%v.console.aws.amazon.com/cloud9/ide/%v\", region, id), nil\n\t\t}).(pulumi.StringOutput))\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloud9.EnvironmentEC2;\nimport com.pulumi.aws.cloud9.EnvironmentEC2Args;\nimport com.pulumi.aws.ec2.Ec2Functions;\nimport com.pulumi.aws.ec2.inputs.GetInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new EnvironmentEC2(\"example\", EnvironmentEC2Args.builder()\n .instanceType(\"t2.micro\")\n .build());\n\n final var cloud9Instance = Ec2Functions.getInstance(GetInstanceArgs.builder()\n .filters(GetInstanceFilterArgs.builder()\n .name(\"tag:aws:cloud9:environment\")\n .values(example.id())\n .build())\n .build());\n\n ctx.export(\"cloud9Url\", example.id().applyValue(id -\u003e String.format(\"https://%s.console.aws.amazon.com/cloud9/ide/%s\", region,id)));\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloud9:EnvironmentEC2\n properties:\n instanceType: t2.micro\nvariables:\n cloud9Instance:\n fn::invoke:\n function: aws:ec2:getInstance\n arguments:\n filters:\n - name: tag:aws:cloud9:environment\n values:\n - ${example.id}\noutputs:\n cloud9Url: https://${region}.console.aws.amazon.com/cloud9/ide/${example.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\nAllocate a static IP to the Cloud9 environment:\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloud9.EnvironmentEC2(\"example\", {instanceType: \"t2.micro\"});\nconst cloud9Instance = aws.ec2.getInstanceOutput({\n filters: [{\n name: \"tag:aws:cloud9:environment\",\n values: [example.id],\n }],\n});\nconst cloud9Eip = new aws.ec2.Eip(\"cloud9_eip\", {\n instance: cloud9Instance.apply(cloud9Instance =\u003e cloud9Instance.id),\n domain: \"vpc\",\n});\nexport const cloud9PublicIp = cloud9Eip.publicIp;\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloud9.EnvironmentEC2(\"example\", instance_type=\"t2.micro\")\ncloud9_instance = aws.ec2.get_instance_output(filters=[{\n \"name\": \"tag:aws:cloud9:environment\",\n \"values\": [example.id],\n}])\ncloud9_eip = aws.ec2.Eip(\"cloud9_eip\",\n instance=cloud9_instance.id,\n domain=\"vpc\")\npulumi.export(\"cloud9PublicIp\", cloud9_eip.public_ip)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Cloud9.EnvironmentEC2(\"example\", new()\n {\n InstanceType = \"t2.micro\",\n });\n\n var cloud9Instance = Aws.Ec2.GetInstance.Invoke(new()\n {\n Filters = new[]\n {\n new Aws.Ec2.Inputs.GetInstanceFilterInputArgs\n {\n Name = \"tag:aws:cloud9:environment\",\n Values = new[]\n {\n example.Id,\n },\n },\n },\n });\n\n var cloud9Eip = new Aws.Ec2.Eip(\"cloud9_eip\", new()\n {\n Instance = cloud9Instance.Apply(getInstanceResult =\u003e getInstanceResult.Id),\n Domain = \"vpc\",\n });\n\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"cloud9PublicIp\"] = cloud9Eip.PublicIp,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloud9\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cloud9.NewEnvironmentEC2(ctx, \"example\", \u0026cloud9.EnvironmentEC2Args{\n\t\t\tInstanceType: pulumi.String(\"t2.micro\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcloud9Instance := ec2.LookupInstanceOutput(ctx, ec2.GetInstanceOutputArgs{\n\t\t\tFilters: ec2.GetInstanceFilterArray{\n\t\t\t\t\u0026ec2.GetInstanceFilterArgs{\n\t\t\t\t\tName: pulumi.String(\"tag:aws:cloud9:environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\texample.ID(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tcloud9Eip, err := ec2.NewEip(ctx, \"cloud9_eip\", \u0026ec2.EipArgs{\n\t\t\tInstance: pulumi.String(cloud9Instance.ApplyT(func(cloud9Instance ec2.GetInstanceResult) (*string, error) {\n\t\t\t\treturn \u0026cloud9Instance.Id, nil\n\t\t\t}).(pulumi.StringPtrOutput)),\n\t\t\tDomain: pulumi.String(\"vpc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"cloud9PublicIp\", cloud9Eip.PublicIp)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloud9.EnvironmentEC2;\nimport com.pulumi.aws.cloud9.EnvironmentEC2Args;\nimport com.pulumi.aws.ec2.Ec2Functions;\nimport com.pulumi.aws.ec2.inputs.GetInstanceArgs;\nimport com.pulumi.aws.ec2.Eip;\nimport com.pulumi.aws.ec2.EipArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new EnvironmentEC2(\"example\", EnvironmentEC2Args.builder()\n .instanceType(\"t2.micro\")\n .build());\n\n final var cloud9Instance = Ec2Functions.getInstance(GetInstanceArgs.builder()\n .filters(GetInstanceFilterArgs.builder()\n .name(\"tag:aws:cloud9:environment\")\n .values(example.id())\n .build())\n .build());\n\n var cloud9Eip = new Eip(\"cloud9Eip\", EipArgs.builder()\n .instance(cloud9Instance.applyValue(getInstanceResult -\u003e getInstanceResult).applyValue(cloud9Instance -\u003e cloud9Instance.applyValue(getInstanceResult -\u003e getInstanceResult.id())))\n .domain(\"vpc\")\n .build());\n\n ctx.export(\"cloud9PublicIp\", cloud9Eip.publicIp());\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloud9:EnvironmentEC2\n properties:\n instanceType: t2.micro\n cloud9Eip:\n type: aws:ec2:Eip\n name: cloud9_eip\n properties:\n instance: ${cloud9Instance.id}\n domain: vpc\nvariables:\n cloud9Instance:\n fn::invoke:\n function: aws:ec2:getInstance\n arguments:\n filters:\n - name: tag:aws:cloud9:environment\n values:\n - ${example.id}\noutputs:\n cloud9PublicIp: ${cloud9Eip.publicIp}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "properties": { @@ -202816,7 +203723,7 @@ } }, "aws:cloudfront/vpcOrigin:VpcOrigin": { - "description": "Creates an Amazon CloudFront VPC origin.\n\nFor information about CloudFront VPC origins, see\n[Amazon CloudFront Developer Guide - Restrict access with VPC origins][1].\n\n## Example Usage\n\n### Application Load Balancer\n\nThe following example below creates a CloudFront VPC origin for a Application Load Balancer.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst alb = new aws.cloudfront.VpcOrigin(\"alb\", {vpcOriginEndpointConfig: {\n name: \"Example VPC Origin\",\n arn: _this.arn,\n httpPort: 8080,\n httpsPort: 8443,\n originProtocolPolicy: \"https-only\",\n originSslProtocols: {\n items: [\"TLSv1.2\"],\n quantity: 1,\n },\n}});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nalb = aws.cloudfront.VpcOrigin(\"alb\", vpc_origin_endpoint_config={\n \"name\": \"Example VPC Origin\",\n \"arn\": this[\"arn\"],\n \"http_port\": 8080,\n \"https_port\": 8443,\n \"origin_protocol_policy\": \"https-only\",\n \"origin_ssl_protocols\": {\n \"items\": [\"TLSv1.2\"],\n \"quantity\": 1,\n },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alb = new Aws.CloudFront.VpcOrigin(\"alb\", new()\n {\n VpcOriginEndpointConfig = new Aws.CloudFront.Inputs.VpcOriginVpcOriginEndpointConfigArgs\n {\n Name = \"Example VPC Origin\",\n Arn = @this.Arn,\n HttpPort = 8080,\n HttpsPort = 8443,\n OriginProtocolPolicy = \"https-only\",\n OriginSslProtocols = new Aws.CloudFront.Inputs.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs\n {\n Items = new[]\n {\n \"TLSv1.2\",\n },\n Quantity = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudfront\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfront.NewVpcOrigin(ctx, \"alb\", \u0026cloudfront.VpcOriginArgs{\n\t\t\tVpcOriginEndpointConfig: \u0026cloudfront.VpcOriginVpcOriginEndpointConfigArgs{\n\t\t\t\tName: pulumi.String(\"Example VPC Origin\"),\n\t\t\t\tArn: pulumi.Any(this.Arn),\n\t\t\t\tHttpPort: pulumi.Int(8080),\n\t\t\t\tHttpsPort: pulumi.Int(8443),\n\t\t\t\tOriginProtocolPolicy: pulumi.String(\"https-only\"),\n\t\t\t\tOriginSslProtocols: \u0026cloudfront.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs{\n\t\t\t\t\tItems: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"TLSv1.2\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuantity: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudfront.VpcOrigin;\nimport com.pulumi.aws.cloudfront.VpcOriginArgs;\nimport com.pulumi.aws.cloudfront.inputs.VpcOriginVpcOriginEndpointConfigArgs;\nimport com.pulumi.aws.cloudfront.inputs.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alb = new VpcOrigin(\"alb\", VpcOriginArgs.builder()\n .vpcOriginEndpointConfig(VpcOriginVpcOriginEndpointConfigArgs.builder()\n .name(\"Example VPC Origin\")\n .arn(this_.arn())\n .httpPort(8080)\n .httpsPort(8443)\n .originProtocolPolicy(\"https-only\")\n .originSslProtocols(VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs.builder()\n .items(\"TLSv1.2\")\n .quantity(1)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alb:\n type: aws:cloudfront:VpcOrigin\n properties:\n vpcOriginEndpointConfig:\n name: Example VPC Origin\n arn: ${this.arn}\n httpPort: 8080\n httpsPort: 8443\n originProtocolPolicy: https-only\n originSslProtocols:\n items:\n - TLSv1.2\n quantity: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nterraform\n\nimport {\n\n to = aws_cloudfront_vpc_origin.origin\n\n id = vo_JQEa410sssUFoY6wMkx69j\n\n}\n\nUsing `pulumi import`, import Cloudfront VPC origins using the `id`. For example:\n\nconsole\n\n% pulumi import aws_cloudfront_vpc_origin vo_JQEa410sssUFoY6wMkx69j\n\n", + "description": "Creates an Amazon CloudFront VPC origin.\n\nFor information about CloudFront VPC origins, see\n[Amazon CloudFront Developer Guide - Restrict access with VPC origins][1].\n\n## Example Usage\n\n### Application Load Balancer\n\nThe following example below creates a CloudFront VPC origin for a Application Load Balancer.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst alb = new aws.cloudfront.VpcOrigin(\"alb\", {vpcOriginEndpointConfig: {\n name: \"Example VPC Origin\",\n arn: _this.arn,\n httpPort: 8080,\n httpsPort: 8443,\n originProtocolPolicy: \"https-only\",\n originSslProtocols: {\n items: [\"TLSv1.2\"],\n quantity: 1,\n },\n}});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nalb = aws.cloudfront.VpcOrigin(\"alb\", vpc_origin_endpoint_config={\n \"name\": \"Example VPC Origin\",\n \"arn\": this[\"arn\"],\n \"http_port\": 8080,\n \"https_port\": 8443,\n \"origin_protocol_policy\": \"https-only\",\n \"origin_ssl_protocols\": {\n \"items\": [\"TLSv1.2\"],\n \"quantity\": 1,\n },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var alb = new Aws.CloudFront.VpcOrigin(\"alb\", new()\n {\n VpcOriginEndpointConfig = new Aws.CloudFront.Inputs.VpcOriginVpcOriginEndpointConfigArgs\n {\n Name = \"Example VPC Origin\",\n Arn = @this.Arn,\n HttpPort = 8080,\n HttpsPort = 8443,\n OriginProtocolPolicy = \"https-only\",\n OriginSslProtocols = new Aws.CloudFront.Inputs.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs\n {\n Items = new[]\n {\n \"TLSv1.2\",\n },\n Quantity = 1,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudfront\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudfront.NewVpcOrigin(ctx, \"alb\", \u0026cloudfront.VpcOriginArgs{\n\t\t\tVpcOriginEndpointConfig: \u0026cloudfront.VpcOriginVpcOriginEndpointConfigArgs{\n\t\t\t\tName: pulumi.String(\"Example VPC Origin\"),\n\t\t\t\tArn: pulumi.Any(this.Arn),\n\t\t\t\tHttpPort: pulumi.Int(8080),\n\t\t\t\tHttpsPort: pulumi.Int(8443),\n\t\t\t\tOriginProtocolPolicy: pulumi.String(\"https-only\"),\n\t\t\t\tOriginSslProtocols: \u0026cloudfront.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs{\n\t\t\t\t\tItems: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"TLSv1.2\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuantity: pulumi.Int(1),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudfront.VpcOrigin;\nimport com.pulumi.aws.cloudfront.VpcOriginArgs;\nimport com.pulumi.aws.cloudfront.inputs.VpcOriginVpcOriginEndpointConfigArgs;\nimport com.pulumi.aws.cloudfront.inputs.VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var alb = new VpcOrigin(\"alb\", VpcOriginArgs.builder()\n .vpcOriginEndpointConfig(VpcOriginVpcOriginEndpointConfigArgs.builder()\n .name(\"Example VPC Origin\")\n .arn(this_.arn())\n .httpPort(8080)\n .httpsPort(8443)\n .originProtocolPolicy(\"https-only\")\n .originSslProtocols(VpcOriginVpcOriginEndpointConfigOriginSslProtocolsArgs.builder()\n .items(\"TLSv1.2\")\n .quantity(1)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n alb:\n type: aws:cloudfront:VpcOrigin\n properties:\n vpcOriginEndpointConfig:\n name: Example VPC Origin\n arn: ${this.arn}\n httpPort: 8080\n httpsPort: 8443\n originProtocolPolicy: https-only\n originSslProtocols:\n items:\n - TLSv1.2\n quantity: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nterraform\n\nimport {\n\n to = aws_cloudfront_vpc_origin.origin\n\n id = \"vo_JQEa410sssUFoY6wMkx69j\"\n\n}\n\nUsing `pulumi import`, import Cloudfront VPC origins using the `id`. For example:\n\nconsole\n\n% pulumi import aws_cloudfront_vpc_origin vo_JQEa410sssUFoY6wMkx69j\n\n", "properties": { "arn": { "type": "string", @@ -205728,6 +206635,421 @@ "type": "object" } }, + "aws:cloudwatch/logDelivery:LogDelivery": { + "description": "Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `aws.cloudwatch.LogDeliverySource` and an `aws.cloudwatch.LogDeliveryDestination`.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloudwatch.LogDelivery(\"example\", {\n deliverySourceName: exampleAwsCloudwatchLogDeliverySource.name,\n deliveryDestinationArn: exampleAwsCloudwatchLogDeliveryDestination.arn,\n fieldDelimiter: \",\",\n recordFields: [\n \"event_timestamp\",\n \"event\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.LogDelivery(\"example\",\n delivery_source_name=example_aws_cloudwatch_log_delivery_source[\"name\"],\n delivery_destination_arn=example_aws_cloudwatch_log_delivery_destination[\"arn\"],\n field_delimiter=\",\",\n record_fields=[\n \"event_timestamp\",\n \"event\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.CloudWatch.LogDelivery(\"example\", new()\n {\n DeliverySourceName = exampleAwsCloudwatchLogDeliverySource.Name,\n DeliveryDestinationArn = exampleAwsCloudwatchLogDeliveryDestination.Arn,\n FieldDelimiter = \",\",\n RecordFields = new[]\n {\n \"event_timestamp\",\n \"event\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.NewLogDelivery(ctx, \"example\", \u0026cloudwatch.LogDeliveryArgs{\n\t\t\tDeliverySourceName: pulumi.Any(exampleAwsCloudwatchLogDeliverySource.Name),\n\t\t\tDeliveryDestinationArn: pulumi.Any(exampleAwsCloudwatchLogDeliveryDestination.Arn),\n\t\t\tFieldDelimiter: pulumi.String(\",\"),\n\t\t\tRecordFields: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"event_timestamp\"),\n\t\t\t\tpulumi.String(\"event\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogDelivery;\nimport com.pulumi.aws.cloudwatch.LogDeliveryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new LogDelivery(\"example\", LogDeliveryArgs.builder()\n .deliverySourceName(exampleAwsCloudwatchLogDeliverySource.name())\n .deliveryDestinationArn(exampleAwsCloudwatchLogDeliveryDestination.arn())\n .fieldDelimiter(\",\")\n .recordFields( \n \"event_timestamp\",\n \"event\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloudwatch:LogDelivery\n properties:\n deliverySourceName: ${exampleAwsCloudwatchLogDeliverySource.name}\n deliveryDestinationArn: ${exampleAwsCloudwatchLogDeliveryDestination.arn}\n fieldDelimiter: ','\n recordFields:\n - event_timestamp\n - event\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n\n```\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery.\n" + }, + "deliveryDestinationArn": { + "type": "string", + "description": "The ARN of the delivery destination to use for this delivery.\n" + }, + "deliverySourceName": { + "type": "string", + "description": "The name of the delivery source to use for this delivery.\n" + }, + "fieldDelimiter": { + "type": "string", + "description": "The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format.\n" + }, + "recordFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of record fields to be delivered to the destination, in order.\n" + }, + "s3DeliveryConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryS3DeliveryConfiguration:LogDeliveryS3DeliveryConfiguration" + }, + "description": "Parameters that are valid only when the delivery's delivery destination is an S3 bucket.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "required": [ + "arn", + "deliveryDestinationArn", + "deliverySourceName", + "recordFields", + "s3DeliveryConfigurations", + "tagsAll" + ], + "inputProperties": { + "deliveryDestinationArn": { + "type": "string", + "description": "The ARN of the delivery destination to use for this delivery.\n" + }, + "deliverySourceName": { + "type": "string", + "description": "The name of the delivery source to use for this delivery.\n" + }, + "fieldDelimiter": { + "type": "string", + "description": "The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format.\n" + }, + "recordFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of record fields to be delivered to the destination, in order.\n" + }, + "s3DeliveryConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryS3DeliveryConfiguration:LogDeliveryS3DeliveryConfiguration" + }, + "description": "Parameters that are valid only when the delivery's delivery destination is an S3 bucket.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + } + }, + "requiredInputs": [ + "deliveryDestinationArn", + "deliverySourceName" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering LogDelivery resources.\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery.\n" + }, + "deliveryDestinationArn": { + "type": "string", + "description": "The ARN of the delivery destination to use for this delivery.\n" + }, + "deliverySourceName": { + "type": "string", + "description": "The name of the delivery source to use for this delivery.\n" + }, + "fieldDelimiter": { + "type": "string", + "description": "The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format.\n" + }, + "recordFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of record fields to be delivered to the destination, in order.\n" + }, + "s3DeliveryConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryS3DeliveryConfiguration:LogDeliveryS3DeliveryConfiguration" + }, + "description": "Parameters that are valid only when the delivery's delivery destination is an S3 bucket.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "type": "object" + } + }, + "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination": { + "description": "Resource for managing an AWS CloudWatch Logs Delivery Destination.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloudwatch.LogDeliveryDestination(\"example\", {\n name: \"example\",\n deliveryDestinationConfiguration: {\n destinationResourceArn: exampleAwsCloudwatchLogGroup.arn,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.LogDeliveryDestination(\"example\",\n name=\"example\",\n delivery_destination_configuration={\n \"destination_resource_arn\": example_aws_cloudwatch_log_group[\"arn\"],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.CloudWatch.LogDeliveryDestination(\"example\", new()\n {\n Name = \"example\",\n DeliveryDestinationConfiguration = new Aws.CloudWatch.Inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs\n {\n DestinationResourceArn = exampleAwsCloudwatchLogGroup.Arn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.NewLogDeliveryDestination(ctx, \"example\", \u0026cloudwatch.LogDeliveryDestinationArgs{\n\t\t\tName: pulumi.String(\"example\"),\n\t\t\tDeliveryDestinationConfiguration: \u0026cloudwatch.LogDeliveryDestinationDeliveryDestinationConfigurationArgs{\n\t\t\t\tDestinationResourceArn: pulumi.Any(exampleAwsCloudwatchLogGroup.Arn),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogDeliveryDestination;\nimport com.pulumi.aws.cloudwatch.LogDeliveryDestinationArgs;\nimport com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new LogDeliveryDestination(\"example\", LogDeliveryDestinationArgs.builder()\n .name(\"example\")\n .deliveryDestinationConfiguration(LogDeliveryDestinationDeliveryDestinationConfigurationArgs.builder()\n .destinationResourceArn(exampleAwsCloudwatchLogGroup.arn())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloudwatch:LogDeliveryDestination\n properties:\n name: example\n deliveryDestinationConfiguration:\n destinationResourceArn: ${exampleAwsCloudwatchLogGroup.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example\n```\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery destination.\n" + }, + "deliveryDestinationConfiguration": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryDestinationDeliveryDestinationConfiguration:LogDeliveryDestinationDeliveryDestinationConfiguration", + "description": "The AWS resource that will receive the logs.\n" + }, + "deliveryDestinationType": { + "type": "string", + "description": "Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery destination.\n" + }, + "outputFormat": { + "type": "string", + "description": "The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "required": [ + "arn", + "deliveryDestinationType", + "name", + "tagsAll" + ], + "inputProperties": { + "deliveryDestinationConfiguration": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryDestinationDeliveryDestinationConfiguration:LogDeliveryDestinationDeliveryDestinationConfiguration", + "description": "The AWS resource that will receive the logs.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery destination.\n" + }, + "outputFormat": { + "type": "string", + "description": "The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + } + }, + "stateInputs": { + "description": "Input properties used for looking up and filtering LogDeliveryDestination resources.\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery destination.\n" + }, + "deliveryDestinationConfiguration": { + "$ref": "#/types/aws:cloudwatch/LogDeliveryDestinationDeliveryDestinationConfiguration:LogDeliveryDestinationDeliveryDestinationConfiguration", + "description": "The AWS resource that will receive the logs.\n" + }, + "deliveryDestinationType": { + "type": "string", + "description": "Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery destination.\n" + }, + "outputFormat": { + "type": "string", + "description": "The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "type": "object" + } + }, + "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy": { + "description": "Resource for managing an AWS CloudWatch Logs Delivery Destination Policy.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloudwatch.LogDeliveryDestinationPolicy(\"example\", {\n deliveryDestinationName: exampleAwsCloudwatchLogDeliveryDestination.name,\n deliveryDestinationPolicy: exampleAwsIamPolicyDocument.json,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.LogDeliveryDestinationPolicy(\"example\",\n delivery_destination_name=example_aws_cloudwatch_log_delivery_destination[\"name\"],\n delivery_destination_policy=example_aws_iam_policy_document[\"json\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.CloudWatch.LogDeliveryDestinationPolicy(\"example\", new()\n {\n DeliveryDestinationName = exampleAwsCloudwatchLogDeliveryDestination.Name,\n DeliveryDestinationPolicy = exampleAwsIamPolicyDocument.Json,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.NewLogDeliveryDestinationPolicy(ctx, \"example\", \u0026cloudwatch.LogDeliveryDestinationPolicyArgs{\n\t\t\tDeliveryDestinationName: pulumi.Any(exampleAwsCloudwatchLogDeliveryDestination.Name),\n\t\t\tDeliveryDestinationPolicy: pulumi.Any(exampleAwsIamPolicyDocument.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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogDeliveryDestinationPolicy;\nimport com.pulumi.aws.cloudwatch.LogDeliveryDestinationPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new LogDeliveryDestinationPolicy(\"example\", LogDeliveryDestinationPolicyArgs.builder()\n .deliveryDestinationName(exampleAwsCloudwatchLogDeliveryDestination.name())\n .deliveryDestinationPolicy(exampleAwsIamPolicyDocument.json())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloudwatch:LogDeliveryDestinationPolicy\n properties:\n deliveryDestinationName: ${exampleAwsCloudwatchLogDeliveryDestination.name}\n deliveryDestinationPolicy: ${exampleAwsIamPolicyDocument.json}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example\n```\n", + "properties": { + "deliveryDestinationName": { + "type": "string", + "description": "The name of the delivery destination to assign this policy to.\n" + }, + "deliveryDestinationPolicy": { + "type": "string", + "description": "The contents of the policy.\n" + } + }, + "required": [ + "deliveryDestinationName", + "deliveryDestinationPolicy" + ], + "inputProperties": { + "deliveryDestinationName": { + "type": "string", + "description": "The name of the delivery destination to assign this policy to.\n" + }, + "deliveryDestinationPolicy": { + "type": "string", + "description": "The contents of the policy.\n" + } + }, + "requiredInputs": [ + "deliveryDestinationName", + "deliveryDestinationPolicy" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering LogDeliveryDestinationPolicy resources.\n", + "properties": { + "deliveryDestinationName": { + "type": "string", + "description": "The name of the delivery destination to assign this policy to.\n" + }, + "deliveryDestinationPolicy": { + "type": "string", + "description": "The contents of the policy.\n" + } + }, + "type": "object" + } + }, + "aws:cloudwatch/logDeliverySource:LogDeliverySource": { + "description": "Resource for managing an AWS CloudWatch Logs Delivery Source.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloudwatch.LogDeliverySource(\"example\", {\n name: \"example\",\n logType: \"APPLICATION_LOGS\",\n resourceArn: exampleAwsBedrockagentKnowledgeBase.arn,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.LogDeliverySource(\"example\",\n name=\"example\",\n log_type=\"APPLICATION_LOGS\",\n resource_arn=example_aws_bedrockagent_knowledge_base[\"arn\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.CloudWatch.LogDeliverySource(\"example\", new()\n {\n Name = \"example\",\n LogType = \"APPLICATION_LOGS\",\n ResourceArn = exampleAwsBedrockagentKnowledgeBase.Arn,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.NewLogDeliverySource(ctx, \"example\", \u0026cloudwatch.LogDeliverySourceArgs{\n\t\t\tName: pulumi.String(\"example\"),\n\t\t\tLogType: pulumi.String(\"APPLICATION_LOGS\"),\n\t\t\tResourceArn: pulumi.Any(exampleAwsBedrockagentKnowledgeBase.Arn),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogDeliverySource;\nimport com.pulumi.aws.cloudwatch.LogDeliverySourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new LogDeliverySource(\"example\", LogDeliverySourceArgs.builder()\n .name(\"example\")\n .logType(\"APPLICATION_LOGS\")\n .resourceArn(exampleAwsBedrockagentKnowledgeBase.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloudwatch:LogDeliverySource\n properties:\n name: example\n logType: APPLICATION_LOGS\n resourceArn: ${exampleAwsBedrockagentKnowledgeBase.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example\n```\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery source.\n" + }, + "logType": { + "type": "string", + "description": "The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery source.\n" + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the AWS resource that is generating and sending logs.\n" + }, + "service": { + "type": "string", + "description": "The AWS service that is sending logs.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "required": [ + "arn", + "logType", + "name", + "resourceArn", + "service", + "tagsAll" + ], + "inputProperties": { + "logType": { + "type": "string", + "description": "The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery source.\n" + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the AWS resource that is generating and sending logs.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + } + }, + "requiredInputs": [ + "logType", + "resourceArn" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering LogDeliverySource resources.\n", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the delivery source.\n" + }, + "logType": { + "type": "string", + "description": "The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`.\n" + }, + "name": { + "type": "string", + "description": "The name for this delivery source.\n" + }, + "resourceArn": { + "type": "string", + "description": "The ARN of the AWS resource that is generating and sending logs.\n" + }, + "service": { + "type": "string", + "description": "The AWS service that is sending logs.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + } + }, + "type": "object" + } + }, "aws:cloudwatch/logDestination:LogDestination": { "description": "Provides a CloudWatch Logs destination resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst testDestination = new aws.cloudwatch.LogDestination(\"test_destination\", {\n name: \"test_destination\",\n roleArn: iamForCloudwatch.arn,\n targetArn: kinesisForCloudwatch.arn,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest_destination = aws.cloudwatch.LogDestination(\"test_destination\",\n name=\"test_destination\",\n role_arn=iam_for_cloudwatch[\"arn\"],\n target_arn=kinesis_for_cloudwatch[\"arn\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var testDestination = new Aws.CloudWatch.LogDestination(\"test_destination\", new()\n {\n Name = \"test_destination\",\n RoleArn = iamForCloudwatch.Arn,\n TargetArn = kinesisForCloudwatch.Arn,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.NewLogDestination(ctx, \"test_destination\", \u0026cloudwatch.LogDestinationArgs{\n\t\t\tName: pulumi.String(\"test_destination\"),\n\t\t\tRoleArn: pulumi.Any(iamForCloudwatch.Arn),\n\t\t\tTargetArn: pulumi.Any(kinesisForCloudwatch.Arn),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogDestination;\nimport com.pulumi.aws.cloudwatch.LogDestinationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var testDestination = new LogDestination(\"testDestination\", LogDestinationArgs.builder()\n .name(\"test_destination\")\n .roleArn(iamForCloudwatch.arn())\n .targetArn(kinesisForCloudwatch.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testDestination:\n type: aws:cloudwatch:LogDestination\n name: test_destination\n properties:\n name: test_destination\n roleArn: ${iamForCloudwatch.arn}\n targetArn: ${kinesisForCloudwatch.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs destinations using the `name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logDestination:LogDestination test_destination test_destination\n```\n", "properties": { @@ -206037,6 +207359,51 @@ "type": "object" } }, + "aws:cloudwatch/logIndexPolicy:LogIndexPolicy": { + "description": "Resource for managing an AWS CloudWatch Logs Index Policy.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.cloudwatch.LogGroup(\"example\", {name: \"example\"});\nconst exampleLogIndexPolicy = new aws.cloudwatch.LogIndexPolicy(\"example\", {\n logGroupName: example.name,\n policyDocument: JSON.stringify({\n Fields: [\"eventName\"],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.LogGroup(\"example\", name=\"example\")\nexample_log_index_policy = aws.cloudwatch.LogIndexPolicy(\"example\",\n log_group_name=example.name,\n policy_document=json.dumps({\n \"Fields\": [\"eventName\"],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.CloudWatch.LogGroup(\"example\", new()\n {\n Name = \"example\",\n });\n\n var exampleLogIndexPolicy = new Aws.CloudWatch.LogIndexPolicy(\"example\", new()\n {\n LogGroupName = example.Name,\n PolicyDocument = JsonSerializer.Serialize(new Dictionary\u003cstring, object?\u003e\n {\n [\"Fields\"] = new[]\n {\n \"eventName\",\n },\n }),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := cloudwatch.NewLogGroup(ctx, \"example\", \u0026cloudwatch.LogGroupArgs{\n\t\t\tName: pulumi.String(\"example\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\"Fields\": []string{\n\t\t\t\t\"eventName\",\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = cloudwatch.NewLogIndexPolicy(ctx, \"example\", \u0026cloudwatch.LogIndexPolicyArgs{\n\t\t\tLogGroupName: example.Name,\n\t\t\tPolicyDocument: pulumi.String(json0),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogGroup;\nimport com.pulumi.aws.cloudwatch.LogGroupArgs;\nimport com.pulumi.aws.cloudwatch.LogIndexPolicy;\nimport com.pulumi.aws.cloudwatch.LogIndexPolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new LogGroup(\"example\", LogGroupArgs.builder()\n .name(\"example\")\n .build());\n\n var exampleLogIndexPolicy = new LogIndexPolicy(\"exampleLogIndexPolicy\", LogIndexPolicyArgs.builder()\n .logGroupName(example.name())\n .policyDocument(serializeJson(\n jsonObject(\n jsonProperty(\"Fields\", jsonArray(\"eventName\"))\n )))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:cloudwatch:LogGroup\n properties:\n name: example\n exampleLogIndexPolicy:\n type: aws:cloudwatch:LogIndexPolicy\n name: example\n properties:\n logGroupName: ${example.name}\n policyDocument:\n fn::toJSON:\n Fields:\n - eventName\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name\n```\n", + "properties": { + "logGroupName": { + "type": "string", + "description": "Log group name to set the policy for.\n" + }, + "policyDocument": { + "type": "string", + "description": "JSON policy document. This is a JSON formatted string.\n" + } + }, + "required": [ + "logGroupName", + "policyDocument" + ], + "inputProperties": { + "logGroupName": { + "type": "string", + "description": "Log group name to set the policy for.\n" + }, + "policyDocument": { + "type": "string", + "description": "JSON policy document. This is a JSON formatted string.\n" + } + }, + "requiredInputs": [ + "logGroupName", + "policyDocument" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering LogIndexPolicy resources.\n", + "properties": { + "logGroupName": { + "type": "string", + "description": "Log group name to set the policy for.\n" + }, + "policyDocument": { + "type": "string", + "description": "JSON policy document. This is a JSON formatted string.\n" + } + }, + "type": "object" + } + }, "aws:cloudwatch/logMetricFilter:LogMetricFilter": { "description": "Provides a CloudWatch Log Metric Filter resource.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst dada = new aws.cloudwatch.LogGroup(\"dada\", {name: \"MyApp/access.log\"});\nconst yada = new aws.cloudwatch.LogMetricFilter(\"yada\", {\n name: \"MyAppAccessCount\",\n pattern: \"\",\n logGroupName: dada.name,\n metricTransformation: {\n name: \"EventCount\",\n namespace: \"YourNamespace\",\n value: \"1\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ndada = aws.cloudwatch.LogGroup(\"dada\", name=\"MyApp/access.log\")\nyada = aws.cloudwatch.LogMetricFilter(\"yada\",\n name=\"MyAppAccessCount\",\n pattern=\"\",\n log_group_name=dada.name,\n metric_transformation={\n \"name\": \"EventCount\",\n \"namespace\": \"YourNamespace\",\n \"value\": \"1\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var dada = new Aws.CloudWatch.LogGroup(\"dada\", new()\n {\n Name = \"MyApp/access.log\",\n });\n\n var yada = new Aws.CloudWatch.LogMetricFilter(\"yada\", new()\n {\n Name = \"MyAppAccessCount\",\n Pattern = \"\",\n LogGroupName = dada.Name,\n MetricTransformation = new Aws.CloudWatch.Inputs.LogMetricFilterMetricTransformationArgs\n {\n Name = \"EventCount\",\n Namespace = \"YourNamespace\",\n Value = \"1\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdada, err := cloudwatch.NewLogGroup(ctx, \"dada\", \u0026cloudwatch.LogGroupArgs{\n\t\t\tName: pulumi.String(\"MyApp/access.log\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cloudwatch.NewLogMetricFilter(ctx, \"yada\", \u0026cloudwatch.LogMetricFilterArgs{\n\t\t\tName: pulumi.String(\"MyAppAccessCount\"),\n\t\t\tPattern: pulumi.String(\"\"),\n\t\t\tLogGroupName: dada.Name,\n\t\t\tMetricTransformation: \u0026cloudwatch.LogMetricFilterMetricTransformationArgs{\n\t\t\t\tName: pulumi.String(\"EventCount\"),\n\t\t\t\tNamespace: pulumi.String(\"YourNamespace\"),\n\t\t\t\tValue: pulumi.String(\"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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.LogGroup;\nimport com.pulumi.aws.cloudwatch.LogGroupArgs;\nimport com.pulumi.aws.cloudwatch.LogMetricFilter;\nimport com.pulumi.aws.cloudwatch.LogMetricFilterArgs;\nimport com.pulumi.aws.cloudwatch.inputs.LogMetricFilterMetricTransformationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var dada = new LogGroup(\"dada\", LogGroupArgs.builder()\n .name(\"MyApp/access.log\")\n .build());\n\n var yada = new LogMetricFilter(\"yada\", LogMetricFilterArgs.builder()\n .name(\"MyAppAccessCount\")\n .pattern(\"\")\n .logGroupName(dada.name())\n .metricTransformation(LogMetricFilterMetricTransformationArgs.builder()\n .name(\"EventCount\")\n .namespace(\"YourNamespace\")\n .value(\"1\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n yada:\n type: aws:cloudwatch:LogMetricFilter\n properties:\n name: MyAppAccessCount\n pattern: \"\"\n logGroupName: ${dada.name}\n metricTransformation:\n name: EventCount\n namespace: YourNamespace\n value: '1'\n dada:\n type: aws:cloudwatch:LogGroup\n properties:\n name: MyApp/access.log\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import CloudWatch Log Metric Filter using the `log_group_name:name`. For example:\n\n```sh\n$ pulumi import aws:cloudwatch/logMetricFilter:LogMetricFilter test /aws/lambda/function:test\n```\n", "properties": { @@ -207621,6 +208988,10 @@ "type": "integer", "description": "Number of machines allocated to the fleet.\n" }, + "computeConfiguration": { + "$ref": "#/types/aws:codebuild/FleetComputeConfiguration:FleetComputeConfiguration", + "description": "The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below.\n" + }, "computeType": { "type": "string", "description": "Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values.\n" @@ -207655,7 +209026,7 @@ }, "scalingConfiguration": { "$ref": "#/types/aws:codebuild/FleetScalingConfiguration:FleetScalingConfiguration", - "description": "Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`.\n" + "description": "Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below.\n" }, "statuses": { "type": "array", @@ -207683,7 +209054,7 @@ "items": { "$ref": "#/types/aws:codebuild/FleetVpcConfig:FleetVpcConfig" }, - "description": "Configuration block. Detailed below.\n" + "description": "Configuration block. See `vpc_config` below.\n" } }, "required": [ @@ -207703,6 +209074,10 @@ "type": "integer", "description": "Number of machines allocated to the fleet.\n" }, + "computeConfiguration": { + "$ref": "#/types/aws:codebuild/FleetComputeConfiguration:FleetComputeConfiguration", + "description": "The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below.\n" + }, "computeType": { "type": "string", "description": "Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values.\n" @@ -207730,7 +209105,7 @@ }, "scalingConfiguration": { "$ref": "#/types/aws:codebuild/FleetScalingConfiguration:FleetScalingConfiguration", - "description": "Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`.\n" + "description": "Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below.\n" }, "tags": { "type": "object", @@ -207744,7 +209119,7 @@ "items": { "$ref": "#/types/aws:codebuild/FleetVpcConfig:FleetVpcConfig" }, - "description": "Configuration block. Detailed below.\n" + "description": "Configuration block. See `vpc_config` below.\n" } }, "requiredInputs": [ @@ -207763,6 +209138,10 @@ "type": "integer", "description": "Number of machines allocated to the fleet.\n" }, + "computeConfiguration": { + "$ref": "#/types/aws:codebuild/FleetComputeConfiguration:FleetComputeConfiguration", + "description": "The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below.\n" + }, "computeType": { "type": "string", "description": "Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values.\n" @@ -207798,7 +209177,7 @@ }, "scalingConfiguration": { "$ref": "#/types/aws:codebuild/FleetScalingConfiguration:FleetScalingConfiguration", - "description": "Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`.\n" + "description": "Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below.\n" }, "statuses": { "type": "array", @@ -207826,7 +209205,7 @@ "items": { "$ref": "#/types/aws:codebuild/FleetVpcConfig:FleetVpcConfig" }, - "description": "Configuration block. Detailed below.\n" + "description": "Configuration block. See `vpc_config` below.\n" } }, "type": "object" @@ -212750,6 +214129,10 @@ "$ref": "#/types/aws:cognito/UserPoolEmailConfiguration:UserPoolEmailConfiguration", "description": "Configuration block for configuring email. Detailed below.\n" }, + "emailMfaConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolEmailMfaConfiguration:UserPoolEmailMfaConfiguration", + "description": "Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below.\n" + }, "emailVerificationMessage": { "type": "string", "description": "String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument.\n" @@ -212793,6 +214176,10 @@ }, "description": "Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes.\n" }, + "signInPolicy": { + "$ref": "#/types/aws:cognito/UserPoolSignInPolicy:UserPoolSignInPolicy", + "description": "Configuration block for information about the user pool sign in policy. Detailed below.\n" + }, "smsAuthenticationMessage": { "type": "string", "description": "String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code.\n" @@ -212832,6 +214219,10 @@ "$ref": "#/types/aws:cognito/UserPoolUserPoolAddOns:UserPoolUserPoolAddOns", "description": "Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below.\n" }, + "userPoolTier": { + "type": "string", + "description": "The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`.\n" + }, "usernameAttributes": { "type": "array", "items": { @@ -212846,6 +214237,10 @@ "verificationMessageTemplate": { "$ref": "#/types/aws:cognito/UserPoolVerificationMessageTemplate:UserPoolVerificationMessageTemplate", "description": "Configuration block for verification message templates. Detailed below.\n" + }, + "webAuthnConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolWebAuthnConfiguration:UserPoolWebAuthnConfiguration", + "description": "Configuration block for web authn configuration. Detailed below.\n" } }, "required": [ @@ -212861,9 +214256,11 @@ "lastModifiedDate", "name", "passwordPolicy", + "signInPolicy", "smsConfiguration", "smsVerificationMessage", "tagsAll", + "userPoolTier", "verificationMessageTemplate" ], "inputProperties": { @@ -212902,6 +214299,10 @@ "$ref": "#/types/aws:cognito/UserPoolEmailConfiguration:UserPoolEmailConfiguration", "description": "Configuration block for configuring email. Detailed below.\n" }, + "emailMfaConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolEmailMfaConfiguration:UserPoolEmailMfaConfiguration", + "description": "Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below.\n" + }, "emailVerificationMessage": { "type": "string", "description": "String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument.\n" @@ -212934,6 +214335,10 @@ }, "description": "Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes.\n" }, + "signInPolicy": { + "$ref": "#/types/aws:cognito/UserPoolSignInPolicy:UserPoolSignInPolicy", + "description": "Configuration block for information about the user pool sign in policy. Detailed below.\n" + }, "smsAuthenticationMessage": { "type": "string", "description": "String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code.\n" @@ -212965,6 +214370,10 @@ "$ref": "#/types/aws:cognito/UserPoolUserPoolAddOns:UserPoolUserPoolAddOns", "description": "Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below.\n" }, + "userPoolTier": { + "type": "string", + "description": "The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`.\n" + }, "usernameAttributes": { "type": "array", "items": { @@ -212980,6 +214389,10 @@ "verificationMessageTemplate": { "$ref": "#/types/aws:cognito/UserPoolVerificationMessageTemplate:UserPoolVerificationMessageTemplate", "description": "Configuration block for verification message templates. Detailed below.\n" + }, + "webAuthnConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolWebAuthnConfiguration:UserPoolWebAuthnConfiguration", + "description": "Configuration block for web authn configuration. Detailed below.\n" } }, "stateInputs": { @@ -213036,6 +214449,10 @@ "$ref": "#/types/aws:cognito/UserPoolEmailConfiguration:UserPoolEmailConfiguration", "description": "Configuration block for configuring email. Detailed below.\n" }, + "emailMfaConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolEmailMfaConfiguration:UserPoolEmailMfaConfiguration", + "description": "Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below.\n" + }, "emailVerificationMessage": { "type": "string", "description": "String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument.\n" @@ -213080,6 +214497,10 @@ }, "description": "Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes.\n" }, + "signInPolicy": { + "$ref": "#/types/aws:cognito/UserPoolSignInPolicy:UserPoolSignInPolicy", + "description": "Configuration block for information about the user pool sign in policy. Detailed below.\n" + }, "smsAuthenticationMessage": { "type": "string", "description": "String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code.\n" @@ -213119,6 +214540,10 @@ "$ref": "#/types/aws:cognito/UserPoolUserPoolAddOns:UserPoolUserPoolAddOns", "description": "Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below.\n" }, + "userPoolTier": { + "type": "string", + "description": "The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`.\n" + }, "usernameAttributes": { "type": "array", "items": { @@ -213134,6 +214559,10 @@ "verificationMessageTemplate": { "$ref": "#/types/aws:cognito/UserPoolVerificationMessageTemplate:UserPoolVerificationMessageTemplate", "description": "Configuration block for verification message templates. Detailed below.\n" + }, + "webAuthnConfiguration": { + "$ref": "#/types/aws:cognito/UserPoolWebAuthnConfiguration:UserPoolWebAuthnConfiguration", + "description": "Configuration block for web authn configuration. Detailed below.\n" } }, "type": "object" @@ -237851,31 +239280,31 @@ } }, "aws:ec2/eipAssociation:EipAssociation": { - "description": "Provides an AWS EIP Association as a top level resource, to associate and\ndisassociate Elastic IPs from AWS Instances and Network Interfaces.\n\n\u003e **NOTE:** Do not use this resource to associate an EIP to `aws.lb.LoadBalancer` or `aws.ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors.\n\n\u003e **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either\npre-existing or distributed to customers or users and therefore cannot be changed.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst web = new aws.ec2.Instance(\"web\", {\n ami: \"ami-21f78e11\",\n availabilityZone: \"us-west-2a\",\n instanceType: aws.ec2.InstanceType.T2_Micro,\n tags: {\n Name: \"HelloWorld\",\n },\n});\nconst example = new aws.ec2.Eip(\"example\", {domain: \"vpc\"});\nconst eipAssoc = new aws.ec2.EipAssociation(\"eip_assoc\", {\n instanceId: web.id,\n allocationId: example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nweb = aws.ec2.Instance(\"web\",\n ami=\"ami-21f78e11\",\n availability_zone=\"us-west-2a\",\n instance_type=aws.ec2.InstanceType.T2_MICRO,\n tags={\n \"Name\": \"HelloWorld\",\n })\nexample = aws.ec2.Eip(\"example\", domain=\"vpc\")\neip_assoc = aws.ec2.EipAssociation(\"eip_assoc\",\n instance_id=web.id,\n allocation_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var web = new Aws.Ec2.Instance(\"web\", new()\n {\n Ami = \"ami-21f78e11\",\n AvailabilityZone = \"us-west-2a\",\n InstanceType = Aws.Ec2.InstanceType.T2_Micro,\n Tags = \n {\n { \"Name\", \"HelloWorld\" },\n },\n });\n\n var example = new Aws.Ec2.Eip(\"example\", new()\n {\n Domain = \"vpc\",\n });\n\n var eipAssoc = new Aws.Ec2.EipAssociation(\"eip_assoc\", new()\n {\n InstanceId = web.Id,\n AllocationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tweb, err := ec2.NewInstance(ctx, \"web\", \u0026ec2.InstanceArgs{\n\t\t\tAmi: pulumi.String(\"ami-21f78e11\"),\n\t\t\tAvailabilityZone: pulumi.String(\"us-west-2a\"),\n\t\t\tInstanceType: pulumi.String(ec2.InstanceType_T2_Micro),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"HelloWorld\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := ec2.NewEip(ctx, \"example\", \u0026ec2.EipArgs{\n\t\t\tDomain: pulumi.String(\"vpc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ec2.NewEipAssociation(ctx, \"eip_assoc\", \u0026ec2.EipAssociationArgs{\n\t\t\tInstanceId: web.ID(),\n\t\t\tAllocationId: 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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ec2.Instance;\nimport com.pulumi.aws.ec2.InstanceArgs;\nimport com.pulumi.aws.ec2.Eip;\nimport com.pulumi.aws.ec2.EipArgs;\nimport com.pulumi.aws.ec2.EipAssociation;\nimport com.pulumi.aws.ec2.EipAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var web = new Instance(\"web\", InstanceArgs.builder()\n .ami(\"ami-21f78e11\")\n .availabilityZone(\"us-west-2a\")\n .instanceType(\"t2.micro\")\n .tags(Map.of(\"Name\", \"HelloWorld\"))\n .build());\n\n var example = new Eip(\"example\", EipArgs.builder()\n .domain(\"vpc\")\n .build());\n\n var eipAssoc = new EipAssociation(\"eipAssoc\", EipAssociationArgs.builder()\n .instanceId(web.id())\n .allocationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n eipAssoc:\n type: aws:ec2:EipAssociation\n name: eip_assoc\n properties:\n instanceId: ${web.id}\n allocationId: ${example.id}\n web:\n type: aws:ec2:Instance\n properties:\n ami: ami-21f78e11\n availabilityZone: us-west-2a\n instanceType: t2.micro\n tags:\n Name: HelloWorld\n example:\n type: aws:ec2:Eip\n properties:\n domain: vpc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import EIP Assocations using their association IDs. For example:\n\n```sh\n$ pulumi import aws:ec2/eipAssociation:EipAssociation test eipassoc-ab12c345\n```\n", + "description": "Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces.\n\n\u003e **NOTE:** Do not use this resource to associate an EIP to `aws.lb.LoadBalancer` or `aws.ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors.\n\n\u003e **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst web = new aws.ec2.Instance(\"web\", {\n ami: \"ami-21f78e11\",\n availabilityZone: \"us-west-2a\",\n instanceType: aws.ec2.InstanceType.T2_Micro,\n tags: {\n Name: \"HelloWorld\",\n },\n});\nconst example = new aws.ec2.Eip(\"example\", {domain: \"vpc\"});\nconst eipAssoc = new aws.ec2.EipAssociation(\"eip_assoc\", {\n instanceId: web.id,\n allocationId: example.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nweb = aws.ec2.Instance(\"web\",\n ami=\"ami-21f78e11\",\n availability_zone=\"us-west-2a\",\n instance_type=aws.ec2.InstanceType.T2_MICRO,\n tags={\n \"Name\": \"HelloWorld\",\n })\nexample = aws.ec2.Eip(\"example\", domain=\"vpc\")\neip_assoc = aws.ec2.EipAssociation(\"eip_assoc\",\n instance_id=web.id,\n allocation_id=example.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var web = new Aws.Ec2.Instance(\"web\", new()\n {\n Ami = \"ami-21f78e11\",\n AvailabilityZone = \"us-west-2a\",\n InstanceType = Aws.Ec2.InstanceType.T2_Micro,\n Tags = \n {\n { \"Name\", \"HelloWorld\" },\n },\n });\n\n var example = new Aws.Ec2.Eip(\"example\", new()\n {\n Domain = \"vpc\",\n });\n\n var eipAssoc = new Aws.Ec2.EipAssociation(\"eip_assoc\", new()\n {\n InstanceId = web.Id,\n AllocationId = example.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tweb, err := ec2.NewInstance(ctx, \"web\", \u0026ec2.InstanceArgs{\n\t\t\tAmi: pulumi.String(\"ami-21f78e11\"),\n\t\t\tAvailabilityZone: pulumi.String(\"us-west-2a\"),\n\t\t\tInstanceType: pulumi.String(ec2.InstanceType_T2_Micro),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Name\": pulumi.String(\"HelloWorld\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := ec2.NewEip(ctx, \"example\", \u0026ec2.EipArgs{\n\t\t\tDomain: pulumi.String(\"vpc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ec2.NewEipAssociation(ctx, \"eip_assoc\", \u0026ec2.EipAssociationArgs{\n\t\t\tInstanceId: web.ID(),\n\t\t\tAllocationId: 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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ec2.Instance;\nimport com.pulumi.aws.ec2.InstanceArgs;\nimport com.pulumi.aws.ec2.Eip;\nimport com.pulumi.aws.ec2.EipArgs;\nimport com.pulumi.aws.ec2.EipAssociation;\nimport com.pulumi.aws.ec2.EipAssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var web = new Instance(\"web\", InstanceArgs.builder()\n .ami(\"ami-21f78e11\")\n .availabilityZone(\"us-west-2a\")\n .instanceType(\"t2.micro\")\n .tags(Map.of(\"Name\", \"HelloWorld\"))\n .build());\n\n var example = new Eip(\"example\", EipArgs.builder()\n .domain(\"vpc\")\n .build());\n\n var eipAssoc = new EipAssociation(\"eipAssoc\", EipAssociationArgs.builder()\n .instanceId(web.id())\n .allocationId(example.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n eipAssoc:\n type: aws:ec2:EipAssociation\n name: eip_assoc\n properties:\n instanceId: ${web.id}\n allocationId: ${example.id}\n web:\n type: aws:ec2:Instance\n properties:\n ami: ami-21f78e11\n availabilityZone: us-west-2a\n instanceType: t2.micro\n tags:\n Name: HelloWorld\n example:\n type: aws:ec2:Eip\n properties:\n domain: vpc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import EIP Assocations using their association IDs. For example:\n\n```sh\n$ pulumi import aws:ec2/eipAssociation:EipAssociation test eipassoc-ab12c345\n```\n", "properties": { "allocationId": { "type": "string", - "description": "The allocation ID. This is required for EC2-VPC.\n" + "description": "ID of the associated Elastic IP.\nThis argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking.\n" }, "allowReassociation": { "type": "boolean", - "description": "Whether to allow an Elastic IP to\nbe re-associated. Defaults to `true` in VPC.\n" + "description": "Whether to allow an Elastic IP address to be re-associated.\nDefaults to `true`.\n" }, "instanceId": { "type": "string", - "description": "The ID of the instance. This is required for\nEC2-Classic. For EC2-VPC, you can specify either the instance ID or the\nnetwork interface ID, but not both. The operation fails if you specify an\ninstance ID unless exactly one network interface is attached.\n" + "description": "ID of the instance.\nThe instance must have exactly one attached network interface.\nYou can specify either the instance ID or the network interface ID, but not both.\n" }, "networkInterfaceId": { "type": "string", - "description": "The ID of the network interface. If the\ninstance has more than one network interface, you must specify a network\ninterface ID.\n" + "description": "ID of the network interface.\nIf the instance has more than one network interface, you must specify a network interface ID.\nYou can specify either the instance ID or the network interface ID, but not both.\n" }, "privateIpAddress": { "type": "string", - "description": "The primary or secondary private IP address\nto associate with the Elastic IP address. If no private IP address is\nspecified, the Elastic IP address is associated with the primary private IP\naddress.\n" + "description": "Primary or secondary private IP address to associate with the Elastic IP address.\nIf no private IP address is specified, the Elastic IP address is associated with the primary private IP address.\n" }, "publicIp": { "type": "string", - "description": "The Elastic IP address. This is required for EC2-Classic.\n" + "description": ") Address of the associated Elastic IP.\n" } }, "required": [ @@ -237888,32 +239317,32 @@ "inputProperties": { "allocationId": { "type": "string", - "description": "The allocation ID. This is required for EC2-VPC.\n", + "description": "ID of the associated Elastic IP.\nThis argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking.\n", "willReplaceOnChanges": true }, "allowReassociation": { "type": "boolean", - "description": "Whether to allow an Elastic IP to\nbe re-associated. Defaults to `true` in VPC.\n", + "description": "Whether to allow an Elastic IP address to be re-associated.\nDefaults to `true`.\n", "willReplaceOnChanges": true }, "instanceId": { "type": "string", - "description": "The ID of the instance. This is required for\nEC2-Classic. For EC2-VPC, you can specify either the instance ID or the\nnetwork interface ID, but not both. The operation fails if you specify an\ninstance ID unless exactly one network interface is attached.\n", + "description": "ID of the instance.\nThe instance must have exactly one attached network interface.\nYou can specify either the instance ID or the network interface ID, but not both.\n", "willReplaceOnChanges": true }, "networkInterfaceId": { "type": "string", - "description": "The ID of the network interface. If the\ninstance has more than one network interface, you must specify a network\ninterface ID.\n", + "description": "ID of the network interface.\nIf the instance has more than one network interface, you must specify a network interface ID.\nYou can specify either the instance ID or the network interface ID, but not both.\n", "willReplaceOnChanges": true }, "privateIpAddress": { "type": "string", - "description": "The primary or secondary private IP address\nto associate with the Elastic IP address. If no private IP address is\nspecified, the Elastic IP address is associated with the primary private IP\naddress.\n", + "description": "Primary or secondary private IP address to associate with the Elastic IP address.\nIf no private IP address is specified, the Elastic IP address is associated with the primary private IP address.\n", "willReplaceOnChanges": true }, "publicIp": { "type": "string", - "description": "The Elastic IP address. This is required for EC2-Classic.\n", + "description": ") Address of the associated Elastic IP.\n", "willReplaceOnChanges": true } }, @@ -237922,32 +239351,32 @@ "properties": { "allocationId": { "type": "string", - "description": "The allocation ID. This is required for EC2-VPC.\n", + "description": "ID of the associated Elastic IP.\nThis argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking.\n", "willReplaceOnChanges": true }, "allowReassociation": { "type": "boolean", - "description": "Whether to allow an Elastic IP to\nbe re-associated. Defaults to `true` in VPC.\n", + "description": "Whether to allow an Elastic IP address to be re-associated.\nDefaults to `true`.\n", "willReplaceOnChanges": true }, "instanceId": { "type": "string", - "description": "The ID of the instance. This is required for\nEC2-Classic. For EC2-VPC, you can specify either the instance ID or the\nnetwork interface ID, but not both. The operation fails if you specify an\ninstance ID unless exactly one network interface is attached.\n", + "description": "ID of the instance.\nThe instance must have exactly one attached network interface.\nYou can specify either the instance ID or the network interface ID, but not both.\n", "willReplaceOnChanges": true }, "networkInterfaceId": { "type": "string", - "description": "The ID of the network interface. If the\ninstance has more than one network interface, you must specify a network\ninterface ID.\n", + "description": "ID of the network interface.\nIf the instance has more than one network interface, you must specify a network interface ID.\nYou can specify either the instance ID or the network interface ID, but not both.\n", "willReplaceOnChanges": true }, "privateIpAddress": { "type": "string", - "description": "The primary or secondary private IP address\nto associate with the Elastic IP address. If no private IP address is\nspecified, the Elastic IP address is associated with the primary private IP\naddress.\n", + "description": "Primary or secondary private IP address to associate with the Elastic IP address.\nIf no private IP address is specified, the Elastic IP address is associated with the primary private IP address.\n", "willReplaceOnChanges": true }, "publicIp": { "type": "string", - "description": "The Elastic IP address. This is required for EC2-Classic.\n", + "description": ") Address of the associated Elastic IP.\n", "willReplaceOnChanges": true } }, @@ -242743,11 +244172,11 @@ "properties": { "accepter": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsAccepter:PeeringConnectionOptionsAccepter", - "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one).\n" + "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one).\n" }, "requester": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsRequester:PeeringConnectionOptionsRequester", - "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one).\n" + "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one).\n" }, "vpcPeeringConnectionId": { "type": "string", @@ -242762,11 +244191,11 @@ "inputProperties": { "accepter": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsAccepter:PeeringConnectionOptionsAccepter", - "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one).\n" + "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one).\n" }, "requester": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsRequester:PeeringConnectionOptionsRequester", - "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one).\n" + "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one).\n" }, "vpcPeeringConnectionId": { "type": "string", @@ -242782,11 +244211,11 @@ "properties": { "accepter": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsAccepter:PeeringConnectionOptionsAccepter", - "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one).\n" + "description": "An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one).\n" }, "requester": { "$ref": "#/types/aws:ec2/PeeringConnectionOptionsRequester:PeeringConnectionOptionsRequester", - "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one).\n" + "description": "A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one).\n" }, "vpcPeeringConnectionId": { "type": "string", @@ -254271,15 +255700,15 @@ } }, "aws:ecr/accountSetting:AccountSetting": { - "description": "Provides a resource to manage AWS ECR Basic Scan Type\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst foo = new aws.ecr.AccountSetting(\"foo\", {\n name: \"BASIC_SCAN_TYPE_VERSION\",\n value: \"CLAIR\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nfoo = aws.ecr.AccountSetting(\"foo\",\n name=\"BASIC_SCAN_TYPE_VERSION\",\n value=\"CLAIR\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var foo = new Aws.Ecr.AccountSetting(\"foo\", new()\n {\n Name = \"BASIC_SCAN_TYPE_VERSION\",\n Value = \"CLAIR\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecr.NewAccountSetting(ctx, \"foo\", \u0026ecr.AccountSettingArgs{\n\t\t\tName: pulumi.String(\"BASIC_SCAN_TYPE_VERSION\"),\n\t\t\tValue: pulumi.String(\"CLAIR\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ecr.AccountSetting;\nimport com.pulumi.aws.ecr.AccountSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var foo = new AccountSetting(\"foo\", AccountSettingArgs.builder()\n .name(\"BASIC_SCAN_TYPE_VERSION\")\n .value(\"CLAIR\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n foo:\n type: aws:ecr:AccountSetting\n properties:\n name: BASIC_SCAN_TYPE_VERSION\n value: CLAIR\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import EMR Security Configurations using the `name`. For example:\n\n```sh\n$ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION\n```\n", + "description": "Provides a resource to manage AWS ECR Basic Scan Type\n\n## Example Usage\n\n### Configuring Basic Scanning\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst basicScanTypeVersion = new aws.ecr.AccountSetting(\"basic_scan_type_version\", {\n name: \"BASIC_SCAN_TYPE_VERSION\",\n value: \"AWS_NATIVE\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nbasic_scan_type_version = aws.ecr.AccountSetting(\"basic_scan_type_version\",\n name=\"BASIC_SCAN_TYPE_VERSION\",\n value=\"AWS_NATIVE\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var basicScanTypeVersion = new Aws.Ecr.AccountSetting(\"basic_scan_type_version\", new()\n {\n Name = \"BASIC_SCAN_TYPE_VERSION\",\n Value = \"AWS_NATIVE\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecr.NewAccountSetting(ctx, \"basic_scan_type_version\", \u0026ecr.AccountSettingArgs{\n\t\t\tName: pulumi.String(\"BASIC_SCAN_TYPE_VERSION\"),\n\t\t\tValue: pulumi.String(\"AWS_NATIVE\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ecr.AccountSetting;\nimport com.pulumi.aws.ecr.AccountSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var basicScanTypeVersion = new AccountSetting(\"basicScanTypeVersion\", AccountSettingArgs.builder()\n .name(\"BASIC_SCAN_TYPE_VERSION\")\n .value(\"AWS_NATIVE\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n basicScanTypeVersion:\n type: aws:ecr:AccountSetting\n name: basic_scan_type_version\n properties:\n name: BASIC_SCAN_TYPE_VERSION\n value: AWS_NATIVE\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Configuring Registry Policy Scope\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst registryPolicyScope = new aws.ecr.AccountSetting(\"registry_policy_scope\", {\n name: \"REGISTRY_POLICY_SCOPE\",\n value: \"V2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nregistry_policy_scope = aws.ecr.AccountSetting(\"registry_policy_scope\",\n name=\"REGISTRY_POLICY_SCOPE\",\n value=\"V2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var registryPolicyScope = new Aws.Ecr.AccountSetting(\"registry_policy_scope\", new()\n {\n Name = \"REGISTRY_POLICY_SCOPE\",\n Value = \"V2\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecr.NewAccountSetting(ctx, \"registry_policy_scope\", \u0026ecr.AccountSettingArgs{\n\t\t\tName: pulumi.String(\"REGISTRY_POLICY_SCOPE\"),\n\t\t\tValue: pulumi.String(\"V2\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ecr.AccountSetting;\nimport com.pulumi.aws.ecr.AccountSettingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var registryPolicyScope = new AccountSetting(\"registryPolicyScope\", AccountSettingArgs.builder()\n .name(\"REGISTRY_POLICY_SCOPE\")\n .value(\"V2\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n registryPolicyScope:\n type: aws:ecr:AccountSetting\n name: registry_policy_scope\n properties:\n name: REGISTRY_POLICY_SCOPE\n value: V2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import EMR Security Configurations using the account setting name. For example:\n\n```sh\n$ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION\n```\n", "properties": { "name": { "type": "string", - "description": "The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.\n" + "description": "Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.\n" }, "value": { "type": "string", - "description": "The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.\n" + "description": "Setting value that is specified. Valid values are:\n* If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.\n* If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.\n" } }, "required": [ @@ -254289,11 +255718,11 @@ "inputProperties": { "name": { "type": "string", - "description": "The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.\n" + "description": "Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.\n" }, "value": { "type": "string", - "description": "The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.\n" + "description": "Setting value that is specified. Valid values are:\n* If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.\n* If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.\n" } }, "requiredInputs": [ @@ -254304,11 +255733,11 @@ "properties": { "name": { "type": "string", - "description": "The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.\n" + "description": "Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.\n" }, "value": { "type": "string", - "description": "The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.\n" + "description": "Setting value that is specified. Valid values are:\n* If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.\n* If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.\n" } }, "type": "object" @@ -258696,6 +260125,10 @@ "type": "string", "description": "Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`.\n" }, + "nodeRepairConfig": { + "$ref": "#/types/aws:eks/NodeGroupNodeRepairConfig:NodeGroupNodeRepairConfig", + "description": "The node auto repair configuration for the node group. See `node_repair_config` below for details.\n" + }, "nodeRoleArn": { "type": "string", "description": "Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.\n" @@ -258770,6 +260203,7 @@ "instanceTypes", "nodeGroupName", "nodeGroupNamePrefix", + "nodeRepairConfig", "nodeRoleArn", "releaseVersion", "resources", @@ -258834,6 +260268,10 @@ "description": "Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`.\n", "willReplaceOnChanges": true }, + "nodeRepairConfig": { + "$ref": "#/types/aws:eks/NodeGroupNodeRepairConfig:NodeGroupNodeRepairConfig", + "description": "The node auto repair configuration for the node group. See `node_repair_config` below for details.\n" + }, "nodeRoleArn": { "type": "string", "description": "Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.\n", @@ -258949,6 +260387,10 @@ "description": "Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`.\n", "willReplaceOnChanges": true }, + "nodeRepairConfig": { + "$ref": "#/types/aws:eks/NodeGroupNodeRepairConfig:NodeGroupNodeRepairConfig", + "description": "The node auto repair configuration for the node group. See `node_repair_config` below for details.\n" + }, "nodeRoleArn": { "type": "string", "description": "Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.\n", @@ -261325,7 +262767,7 @@ }, "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n" + "description": "The current supported values are `REDIS`, `VALKEY`.\n" }, "noPasswordRequired": { "type": "boolean", @@ -261382,8 +262824,7 @@ }, "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n", - "willReplaceOnChanges": true + "description": "The current supported values are `REDIS`, `VALKEY`.\n" }, "noPasswordRequired": { "type": "boolean", @@ -261438,8 +262879,7 @@ }, "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n", - "willReplaceOnChanges": true + "description": "The current supported values are `REDIS`, `VALKEY`.\n" }, "noPasswordRequired": { "type": "boolean", @@ -261490,7 +262930,7 @@ }, "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n" + "description": "The current supported value are `REDIS`, `VALKEY`.\n" }, "tags": { "type": "object", @@ -261528,8 +262968,7 @@ "inputProperties": { "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n", - "willReplaceOnChanges": true + "description": "The current supported value are `REDIS`, `VALKEY`.\n" }, "tags": { "type": "object", @@ -261564,8 +263003,7 @@ }, "engine": { "type": "string", - "description": "The current supported value is `REDIS`.\n", - "willReplaceOnChanges": true + "description": "The current supported value are `REDIS`, `VALKEY`.\n" }, "tags": { "type": "object", @@ -265270,6 +266708,10 @@ "type": "string", "description": "A detailed description of the Amazon EMR Studio.\n" }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.\n" + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`.\n" @@ -265355,6 +266797,10 @@ "type": "string", "description": "A detailed description of the Amazon EMR Studio.\n" }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.\n" + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`.\n", @@ -265438,6 +266884,10 @@ "type": "string", "description": "A detailed description of the Amazon EMR Studio.\n" }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.\n" + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`.\n", @@ -271564,7 +273014,7 @@ } }, "aws:fsx/windowsFileSystem:WindowsFileSystem": { - "description": "Manages a FSx Windows File System. See the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/what-is.html) for more information.\n\n\u003e **NOTE:** Either the `active_directory_id` argument or `self_managed_active_directory` configuration block must be specified.\n\n## Example Usage\n\n### Using AWS Directory Service\n\nAdditional information for using AWS Directory Service with Windows File Systems can be found in the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/fsx-aws-managed-ad.html).\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.fsx.WindowsFileSystem(\"example\", {\n activeDirectoryId: exampleAwsDirectoryServiceDirectory.id,\n kmsKeyId: exampleAwsKmsKey.arn,\n storageCapacity: 300,\n subnetIds: [exampleAwsSubnet.id],\n throughputCapacity: 1024,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.fsx.WindowsFileSystem(\"example\",\n active_directory_id=example_aws_directory_service_directory[\"id\"],\n kms_key_id=example_aws_kms_key[\"arn\"],\n storage_capacity=300,\n subnet_ids=[example_aws_subnet[\"id\"]],\n throughput_capacity=1024)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Fsx.WindowsFileSystem(\"example\", new()\n {\n ActiveDirectoryId = exampleAwsDirectoryServiceDirectory.Id,\n KmsKeyId = exampleAwsKmsKey.Arn,\n StorageCapacity = 300,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n ThroughputCapacity = 1024,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fsx.NewWindowsFileSystem(ctx, \"example\", \u0026fsx.WindowsFileSystemArgs{\n\t\t\tActiveDirectoryId: pulumi.Any(exampleAwsDirectoryServiceDirectory.Id),\n\t\t\tKmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn),\n\t\t\tStorageCapacity: pulumi.Int(300),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tThroughputCapacity: pulumi.Int(1024),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.fsx.WindowsFileSystem;\nimport com.pulumi.aws.fsx.WindowsFileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new WindowsFileSystem(\"example\", WindowsFileSystemArgs.builder()\n .activeDirectoryId(exampleAwsDirectoryServiceDirectory.id())\n .kmsKeyId(exampleAwsKmsKey.arn())\n .storageCapacity(300)\n .subnetIds(exampleAwsSubnet.id())\n .throughputCapacity(1024)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:fsx:WindowsFileSystem\n properties:\n activeDirectoryId: ${exampleAwsDirectoryServiceDirectory.id}\n kmsKeyId: ${exampleAwsKmsKey.arn}\n storageCapacity: 300\n subnetIds:\n - ${exampleAwsSubnet.id}\n throughputCapacity: 1024\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using a Self-Managed Microsoft Active Directory\n\nAdditional information for using AWS Directory Service with Windows File Systems can be found in the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html).\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.fsx.WindowsFileSystem(\"example\", {\n kmsKeyId: exampleAwsKmsKey.arn,\n storageCapacity: 300,\n subnetIds: [exampleAwsSubnet.id],\n throughputCapacity: 1024,\n selfManagedActiveDirectory: {\n dnsIps: [\n \"10.0.0.111\",\n \"10.0.0.222\",\n ],\n domainName: \"corp.example.com\",\n password: \"avoid-plaintext-passwords\",\n username: \"Admin\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.fsx.WindowsFileSystem(\"example\",\n kms_key_id=example_aws_kms_key[\"arn\"],\n storage_capacity=300,\n subnet_ids=[example_aws_subnet[\"id\"]],\n throughput_capacity=1024,\n self_managed_active_directory={\n \"dns_ips\": [\n \"10.0.0.111\",\n \"10.0.0.222\",\n ],\n \"domain_name\": \"corp.example.com\",\n \"password\": \"avoid-plaintext-passwords\",\n \"username\": \"Admin\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Fsx.WindowsFileSystem(\"example\", new()\n {\n KmsKeyId = exampleAwsKmsKey.Arn,\n StorageCapacity = 300,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n ThroughputCapacity = 1024,\n SelfManagedActiveDirectory = new Aws.Fsx.Inputs.WindowsFileSystemSelfManagedActiveDirectoryArgs\n {\n DnsIps = new[]\n {\n \"10.0.0.111\",\n \"10.0.0.222\",\n },\n DomainName = \"corp.example.com\",\n Password = \"avoid-plaintext-passwords\",\n Username = \"Admin\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fsx.NewWindowsFileSystem(ctx, \"example\", \u0026fsx.WindowsFileSystemArgs{\n\t\t\tKmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn),\n\t\t\tStorageCapacity: pulumi.Int(300),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tThroughputCapacity: pulumi.Int(1024),\n\t\t\tSelfManagedActiveDirectory: \u0026fsx.WindowsFileSystemSelfManagedActiveDirectoryArgs{\n\t\t\t\tDnsIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.111\"),\n\t\t\t\t\tpulumi.String(\"10.0.0.222\"),\n\t\t\t\t},\n\t\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\t\tPassword: pulumi.String(\"avoid-plaintext-passwords\"),\n\t\t\t\tUsername: pulumi.String(\"Admin\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.fsx.WindowsFileSystem;\nimport com.pulumi.aws.fsx.WindowsFileSystemArgs;\nimport com.pulumi.aws.fsx.inputs.WindowsFileSystemSelfManagedActiveDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new WindowsFileSystem(\"example\", WindowsFileSystemArgs.builder()\n .kmsKeyId(exampleAwsKmsKey.arn())\n .storageCapacity(300)\n .subnetIds(exampleAwsSubnet.id())\n .throughputCapacity(1024)\n .selfManagedActiveDirectory(WindowsFileSystemSelfManagedActiveDirectoryArgs.builder()\n .dnsIps( \n \"10.0.0.111\",\n \"10.0.0.222\")\n .domainName(\"corp.example.com\")\n .password(\"avoid-plaintext-passwords\")\n .username(\"Admin\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:fsx:WindowsFileSystem\n properties:\n kmsKeyId: ${exampleAwsKmsKey.arn}\n storageCapacity: 300\n subnetIds:\n - ${exampleAwsSubnet.id}\n throughputCapacity: 1024\n selfManagedActiveDirectory:\n dnsIps:\n - 10.0.0.111\n - 10.0.0.222\n domainName: corp.example.com\n password: avoid-plaintext-passwords\n username: Admin\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import FSx File Systems using the `id`. For example:\n\n```sh\n$ pulumi import aws:fsx/windowsFileSystem:WindowsFileSystem example fs-543ab12b1ca672f33\n```\nCertain resource arguments, like `security_group_ids` and the `self_managed_active_directory` configuation block `password`, do not have a FSx API method for reading the information after creation. If these arguments are set in the Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use `ignore_changes` to hide the difference. For example:\n\n", + "description": "Manages a FSx Windows File System. See the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/what-is.html) for more information.\n\n\u003e **NOTE:** Either the `active_directory_id` argument or `self_managed_active_directory` configuration block must be specified.\n\n## Example Usage\n\n### Using AWS Directory Service\n\nAdditional information for using AWS Directory Service with Windows File Systems can be found in the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/fsx-aws-managed-ad.html).\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.fsx.WindowsFileSystem(\"example\", {\n activeDirectoryId: exampleAwsDirectoryServiceDirectory.id,\n kmsKeyId: exampleAwsKmsKey.arn,\n storageCapacity: 32,\n subnetIds: [exampleAwsSubnet.id],\n throughputCapacity: 32,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.fsx.WindowsFileSystem(\"example\",\n active_directory_id=example_aws_directory_service_directory[\"id\"],\n kms_key_id=example_aws_kms_key[\"arn\"],\n storage_capacity=32,\n subnet_ids=[example_aws_subnet[\"id\"]],\n throughput_capacity=32)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Fsx.WindowsFileSystem(\"example\", new()\n {\n ActiveDirectoryId = exampleAwsDirectoryServiceDirectory.Id,\n KmsKeyId = exampleAwsKmsKey.Arn,\n StorageCapacity = 32,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n ThroughputCapacity = 32,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fsx.NewWindowsFileSystem(ctx, \"example\", \u0026fsx.WindowsFileSystemArgs{\n\t\t\tActiveDirectoryId: pulumi.Any(exampleAwsDirectoryServiceDirectory.Id),\n\t\t\tKmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn),\n\t\t\tStorageCapacity: pulumi.Int(32),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tThroughputCapacity: pulumi.Int(32),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.fsx.WindowsFileSystem;\nimport com.pulumi.aws.fsx.WindowsFileSystemArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new WindowsFileSystem(\"example\", WindowsFileSystemArgs.builder()\n .activeDirectoryId(exampleAwsDirectoryServiceDirectory.id())\n .kmsKeyId(exampleAwsKmsKey.arn())\n .storageCapacity(32)\n .subnetIds(exampleAwsSubnet.id())\n .throughputCapacity(32)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:fsx:WindowsFileSystem\n properties:\n activeDirectoryId: ${exampleAwsDirectoryServiceDirectory.id}\n kmsKeyId: ${exampleAwsKmsKey.arn}\n storageCapacity: 32\n subnetIds:\n - ${exampleAwsSubnet.id}\n throughputCapacity: 32\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Using a Self-Managed Microsoft Active Directory\n\nAdditional information for using AWS Directory Service with Windows File Systems can be found in the [FSx Windows Guide](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/self-managed-AD.html).\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.fsx.WindowsFileSystem(\"example\", {\n kmsKeyId: exampleAwsKmsKey.arn,\n storageCapacity: 32,\n subnetIds: [exampleAwsSubnet.id],\n throughputCapacity: 32,\n selfManagedActiveDirectory: {\n dnsIps: [\n \"10.0.0.111\",\n \"10.0.0.222\",\n ],\n domainName: \"corp.example.com\",\n password: \"avoid-plaintext-passwords\",\n username: \"Admin\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.fsx.WindowsFileSystem(\"example\",\n kms_key_id=example_aws_kms_key[\"arn\"],\n storage_capacity=32,\n subnet_ids=[example_aws_subnet[\"id\"]],\n throughput_capacity=32,\n self_managed_active_directory={\n \"dns_ips\": [\n \"10.0.0.111\",\n \"10.0.0.222\",\n ],\n \"domain_name\": \"corp.example.com\",\n \"password\": \"avoid-plaintext-passwords\",\n \"username\": \"Admin\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Fsx.WindowsFileSystem(\"example\", new()\n {\n KmsKeyId = exampleAwsKmsKey.Arn,\n StorageCapacity = 32,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n ThroughputCapacity = 32,\n SelfManagedActiveDirectory = new Aws.Fsx.Inputs.WindowsFileSystemSelfManagedActiveDirectoryArgs\n {\n DnsIps = new[]\n {\n \"10.0.0.111\",\n \"10.0.0.222\",\n },\n DomainName = \"corp.example.com\",\n Password = \"avoid-plaintext-passwords\",\n Username = \"Admin\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := fsx.NewWindowsFileSystem(ctx, \"example\", \u0026fsx.WindowsFileSystemArgs{\n\t\t\tKmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn),\n\t\t\tStorageCapacity: pulumi.Int(32),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tThroughputCapacity: pulumi.Int(32),\n\t\t\tSelfManagedActiveDirectory: \u0026fsx.WindowsFileSystemSelfManagedActiveDirectoryArgs{\n\t\t\t\tDnsIps: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.111\"),\n\t\t\t\t\tpulumi.String(\"10.0.0.222\"),\n\t\t\t\t},\n\t\t\t\tDomainName: pulumi.String(\"corp.example.com\"),\n\t\t\t\tPassword: pulumi.String(\"avoid-plaintext-passwords\"),\n\t\t\t\tUsername: pulumi.String(\"Admin\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.fsx.WindowsFileSystem;\nimport com.pulumi.aws.fsx.WindowsFileSystemArgs;\nimport com.pulumi.aws.fsx.inputs.WindowsFileSystemSelfManagedActiveDirectoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new WindowsFileSystem(\"example\", WindowsFileSystemArgs.builder()\n .kmsKeyId(exampleAwsKmsKey.arn())\n .storageCapacity(32)\n .subnetIds(exampleAwsSubnet.id())\n .throughputCapacity(32)\n .selfManagedActiveDirectory(WindowsFileSystemSelfManagedActiveDirectoryArgs.builder()\n .dnsIps( \n \"10.0.0.111\",\n \"10.0.0.222\")\n .domainName(\"corp.example.com\")\n .password(\"avoid-plaintext-passwords\")\n .username(\"Admin\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:fsx:WindowsFileSystem\n properties:\n kmsKeyId: ${exampleAwsKmsKey.arn}\n storageCapacity: 32\n subnetIds:\n - ${exampleAwsSubnet.id}\n throughputCapacity: 32\n selfManagedActiveDirectory:\n dnsIps:\n - 10.0.0.111\n - 10.0.0.222\n domainName: corp.example.com\n password: avoid-plaintext-passwords\n username: Admin\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import FSx File Systems using the `id`. For example:\n\n```sh\n$ pulumi import aws:fsx/windowsFileSystem:WindowsFileSystem example fs-543ab12b1ca672f33\n```\nCertain resource arguments, like `security_group_ids` and the `self_managed_active_directory` configuation block `password`, do not have a FSx API method for reading the information after creation. If these arguments are set in the Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use `ignore_changes` to hide the difference. For example:\n\n", "properties": { "activeDirectoryId": { "type": "string", @@ -279621,7 +281071,7 @@ }, "datasources": { "$ref": "#/types/aws:guardduty/OrganizationConfigurationDatasources:OrganizationConfigurationDatasources", - "description": "Configuration for the collected datasources.\n" + "description": "Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources.\n" }, "detectorId": { "type": "string", @@ -279646,7 +281096,7 @@ }, "datasources": { "$ref": "#/types/aws:guardduty/OrganizationConfigurationDatasources:OrganizationConfigurationDatasources", - "description": "Configuration for the collected datasources.\n" + "description": "Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources.\n" }, "detectorId": { "type": "string", @@ -279671,7 +281121,7 @@ }, "datasources": { "$ref": "#/types/aws:guardduty/OrganizationConfigurationDatasources:OrganizationConfigurationDatasources", - "description": "Configuration for the collected datasources.\n" + "description": "Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources.\n" }, "detectorId": { "type": "string", @@ -298046,7 +299496,7 @@ ] }, "aws:lb/trustStore:TrustStore": { - "description": "Provides a ELBv2 Trust Store for use with Application Load Balancer Listener resources.\n\n## Example Usage\n\n## Import\n\nUsing `pulumi import`, import Target Groups using their ARN. For example:\n\n```sh\n$ pulumi import aws:lb/trustStore:TrustStore example arn:aws:elasticloadbalancing:us-west-2:187416307283:truststore/my-trust-store/20cfe21448b66314\n```\n", + "description": "Provides a ELBv2 Trust Store for use with Application Load Balancer Listener resources.\n\n## Example Usage\n\n### Trust Store Load Balancer Listener\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = new aws.lb.TrustStore(\"test\", {\n name: \"tf-example-lb-ts\",\n caCertificatesBundleS3Bucket: \"...\",\n caCertificatesBundleS3Key: \"...\",\n});\nconst example = new aws.lb.Listener(\"example\", {\n loadBalancerArn: exampleAwsLb.id,\n defaultActions: [{\n targetGroupArn: exampleAwsLbTargetGroup.id,\n type: \"forward\",\n }],\n mutualAuthentication: {\n mode: \"verify\",\n trustStoreArn: test.arn,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.lb.TrustStore(\"test\",\n name=\"tf-example-lb-ts\",\n ca_certificates_bundle_s3_bucket=\"...\",\n ca_certificates_bundle_s3_key=\"...\")\nexample = aws.lb.Listener(\"example\",\n load_balancer_arn=example_aws_lb[\"id\"],\n default_actions=[{\n \"target_group_arn\": example_aws_lb_target_group[\"id\"],\n \"type\": \"forward\",\n }],\n mutual_authentication={\n \"mode\": \"verify\",\n \"trust_store_arn\": test.arn,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Aws.LB.TrustStore(\"test\", new()\n {\n Name = \"tf-example-lb-ts\",\n CaCertificatesBundleS3Bucket = \"...\",\n CaCertificatesBundleS3Key = \"...\",\n });\n\n var example = new Aws.LB.Listener(\"example\", new()\n {\n LoadBalancerArn = exampleAwsLb.Id,\n DefaultActions = new[]\n {\n new Aws.LB.Inputs.ListenerDefaultActionArgs\n {\n TargetGroupArn = exampleAwsLbTargetGroup.Id,\n Type = \"forward\",\n },\n },\n MutualAuthentication = new Aws.LB.Inputs.ListenerMutualAuthenticationArgs\n {\n Mode = \"verify\",\n TrustStoreArn = test.Arn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lb\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := lb.NewTrustStore(ctx, \"test\", \u0026lb.TrustStoreArgs{\n\t\t\tName: pulumi.String(\"tf-example-lb-ts\"),\n\t\t\tCaCertificatesBundleS3Bucket: pulumi.String(\"...\"),\n\t\t\tCaCertificatesBundleS3Key: pulumi.String(\"...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lb.NewListener(ctx, \"example\", \u0026lb.ListenerArgs{\n\t\t\tLoadBalancerArn: pulumi.Any(exampleAwsLb.Id),\n\t\t\tDefaultActions: lb.ListenerDefaultActionArray{\n\t\t\t\t\u0026lb.ListenerDefaultActionArgs{\n\t\t\t\t\tTargetGroupArn: pulumi.Any(exampleAwsLbTargetGroup.Id),\n\t\t\t\t\tType: pulumi.String(\"forward\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMutualAuthentication: \u0026lb.ListenerMutualAuthenticationArgs{\n\t\t\t\tMode: pulumi.String(\"verify\"),\n\t\t\t\tTrustStoreArn: test.Arn,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.lb.TrustStore;\nimport com.pulumi.aws.lb.TrustStoreArgs;\nimport com.pulumi.aws.lb.Listener;\nimport com.pulumi.aws.lb.ListenerArgs;\nimport com.pulumi.aws.lb.inputs.ListenerDefaultActionArgs;\nimport com.pulumi.aws.lb.inputs.ListenerMutualAuthenticationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new TrustStore(\"test\", TrustStoreArgs.builder()\n .name(\"tf-example-lb-ts\")\n .caCertificatesBundleS3Bucket(\"...\")\n .caCertificatesBundleS3Key(\"...\")\n .build());\n\n var example = new Listener(\"example\", ListenerArgs.builder()\n .loadBalancerArn(exampleAwsLb.id())\n .defaultActions(ListenerDefaultActionArgs.builder()\n .targetGroupArn(exampleAwsLbTargetGroup.id())\n .type(\"forward\")\n .build())\n .mutualAuthentication(ListenerMutualAuthenticationArgs.builder()\n .mode(\"verify\")\n .trustStoreArn(test.arn())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: aws:lb:TrustStore\n properties:\n name: tf-example-lb-ts\n caCertificatesBundleS3Bucket: '...'\n caCertificatesBundleS3Key: '...'\n example:\n type: aws:lb:Listener\n properties:\n loadBalancerArn: ${exampleAwsLb.id}\n defaultActions:\n - targetGroupArn: ${exampleAwsLbTargetGroup.id}\n type: forward\n mutualAuthentication:\n mode: verify\n trustStoreArn: ${test.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Target Groups using their ARN. For example:\n\n```sh\n$ pulumi import aws:lb/trustStore:TrustStore example arn:aws:elasticloadbalancing:us-west-2:187416307283:truststore/my-trust-store/20cfe21448b66314\n```\n", "properties": { "arn": { "type": "string", @@ -309002,7 +310452,7 @@ } }, "aws:msk/replicator:Replicator": { - "description": "Resource for managing an AWS Managed Streaming for Kafka Replicator.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.msk.Replicator;\nimport com.pulumi.aws.msk.ReplicatorArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterAmazonMskClusterArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterVpcConfigArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorReplicationInfoListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Replicator(\"test\", ReplicatorArgs.builder()\n .replicatorName(\"test-name\")\n .description(\"test-description\")\n .serviceExecutionRoleArn(sourceAwsIamRole.arn())\n .kafkaClusters( \n ReplicatorKafkaClusterArgs.builder()\n .amazonMskCluster(ReplicatorKafkaClusterAmazonMskClusterArgs.builder()\n .mskClusterArn(source.arn())\n .build())\n .vpcConfig(ReplicatorKafkaClusterVpcConfigArgs.builder()\n .subnetIds(sourceAwsSubnet.stream().map(element -\u003e element.id()).collect(toList()))\n .securityGroupsIds(sourceAwsSecurityGroup.id())\n .build())\n .build(),\n ReplicatorKafkaClusterArgs.builder()\n .amazonMskCluster(ReplicatorKafkaClusterAmazonMskClusterArgs.builder()\n .mskClusterArn(target.arn())\n .build())\n .vpcConfig(ReplicatorKafkaClusterVpcConfigArgs.builder()\n .subnetIds(targetAwsSubnet.stream().map(element -\u003e element.id()).collect(toList()))\n .securityGroupsIds(targetAwsSecurityGroup.id())\n .build())\n .build())\n .replicationInfoList(ReplicatorReplicationInfoListArgs.builder()\n .sourceKafkaClusterArn(source.arn())\n .targetKafkaClusterArn(target.arn())\n .targetCompressionType(\"NONE\")\n .topicReplications(ReplicatorReplicationInfoListTopicReplicationArgs.builder()\n .topicConfigurationName(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))\n .topicsToReplicates(\".*\")\n .startingPosition(ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs.builder()\n .type(\"LATEST\")\n .build())\n .build())\n .consumerGroupReplications(ReplicatorReplicationInfoListConsumerGroupReplicationArgs.builder()\n .consumerGroupsToReplicates(\".*\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import MSK replicators using the replicator ARN. For example:\n\n```sh\n$ pulumi import aws:msk/replicator:Replicator example arn:aws:kafka:us-west-2:123456789012:configuration/example/279c0212-d057-4dba-9aa9-1c4e5a25bfc7-3\n```\n", + "description": "Resource for managing an AWS Managed Streaming for Kafka Replicator.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = new aws.msk.Replicator(\"test\", {\n replicatorName: \"test-name\",\n description: \"test-description\",\n serviceExecutionRoleArn: sourceAwsIamRole.arn,\n kafkaClusters: [\n {\n amazonMskCluster: {\n mskClusterArn: source.arn,\n },\n vpcConfig: {\n subnetIds: sourceAwsSubnet.map(__item =\u003e __item.id),\n securityGroupsIds: [sourceAwsSecurityGroup.id],\n },\n },\n {\n amazonMskCluster: {\n mskClusterArn: target.arn,\n },\n vpcConfig: {\n subnetIds: targetAwsSubnet.map(__item =\u003e __item.id),\n securityGroupsIds: [targetAwsSecurityGroup.id],\n },\n },\n ],\n replicationInfoList: {\n sourceKafkaClusterArn: source.arn,\n targetKafkaClusterArn: target.arn,\n targetCompressionType: \"NONE\",\n topicReplications: [{\n topicNameConfiguration: {\n type: \"PREFIXED_WITH_SOURCE_CLUSTER_ALIAS\",\n },\n topicsToReplicates: [\".*\"],\n startingPosition: {\n type: \"LATEST\",\n },\n }],\n consumerGroupReplications: [{\n consumerGroupsToReplicates: [\".*\"],\n }],\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.msk.Replicator(\"test\",\n replicator_name=\"test-name\",\n description=\"test-description\",\n service_execution_role_arn=source_aws_iam_role[\"arn\"],\n kafka_clusters=[\n {\n \"amazon_msk_cluster\": {\n \"msk_cluster_arn\": source[\"arn\"],\n },\n \"vpc_config\": {\n \"subnet_ids\": [__item[\"id\"] for __item in source_aws_subnet],\n \"security_groups_ids\": [source_aws_security_group[\"id\"]],\n },\n },\n {\n \"amazon_msk_cluster\": {\n \"msk_cluster_arn\": target[\"arn\"],\n },\n \"vpc_config\": {\n \"subnet_ids\": [__item[\"id\"] for __item in target_aws_subnet],\n \"security_groups_ids\": [target_aws_security_group[\"id\"]],\n },\n },\n ],\n replication_info_list={\n \"source_kafka_cluster_arn\": source[\"arn\"],\n \"target_kafka_cluster_arn\": target[\"arn\"],\n \"target_compression_type\": \"NONE\",\n \"topic_replications\": [{\n \"topic_name_configuration\": {\n \"type\": \"PREFIXED_WITH_SOURCE_CLUSTER_ALIAS\",\n },\n \"topics_to_replicates\": [\".*\"],\n \"starting_position\": {\n \"type\": \"LATEST\",\n },\n }],\n \"consumer_group_replications\": [{\n \"consumer_groups_to_replicates\": [\".*\"],\n }],\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Aws.Msk.Replicator(\"test\", new()\n {\n ReplicatorName = \"test-name\",\n Description = \"test-description\",\n ServiceExecutionRoleArn = sourceAwsIamRole.Arn,\n KafkaClusters = new[]\n {\n new Aws.Msk.Inputs.ReplicatorKafkaClusterArgs\n {\n AmazonMskCluster = new Aws.Msk.Inputs.ReplicatorKafkaClusterAmazonMskClusterArgs\n {\n MskClusterArn = source.Arn,\n },\n VpcConfig = new Aws.Msk.Inputs.ReplicatorKafkaClusterVpcConfigArgs\n {\n SubnetIds = sourceAwsSubnet.Select(__item =\u003e __item.Id).ToList(),\n SecurityGroupsIds = new[]\n {\n sourceAwsSecurityGroup.Id,\n },\n },\n },\n new Aws.Msk.Inputs.ReplicatorKafkaClusterArgs\n {\n AmazonMskCluster = new Aws.Msk.Inputs.ReplicatorKafkaClusterAmazonMskClusterArgs\n {\n MskClusterArn = target.Arn,\n },\n VpcConfig = new Aws.Msk.Inputs.ReplicatorKafkaClusterVpcConfigArgs\n {\n SubnetIds = targetAwsSubnet.Select(__item =\u003e __item.Id).ToList(),\n SecurityGroupsIds = new[]\n {\n targetAwsSecurityGroup.Id,\n },\n },\n },\n },\n ReplicationInfoList = new Aws.Msk.Inputs.ReplicatorReplicationInfoListArgs\n {\n SourceKafkaClusterArn = source.Arn,\n TargetKafkaClusterArn = target.Arn,\n TargetCompressionType = \"NONE\",\n TopicReplications = new[]\n {\n new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationArgs\n {\n TopicNameConfiguration = new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs\n {\n Type = \"PREFIXED_WITH_SOURCE_CLUSTER_ALIAS\",\n },\n TopicsToReplicates = new[]\n {\n \".*\",\n },\n StartingPosition = new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs\n {\n Type = \"LATEST\",\n },\n },\n },\n ConsumerGroupReplications = new[]\n {\n new Aws.Msk.Inputs.ReplicatorReplicationInfoListConsumerGroupReplicationArgs\n {\n ConsumerGroupsToReplicates = new[]\n {\n \".*\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/msk\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\n_, err := msk.NewReplicator(ctx, \"test\", \u0026msk.ReplicatorArgs{\nReplicatorName: pulumi.String(\"test-name\"),\nDescription: pulumi.String(\"test-description\"),\nServiceExecutionRoleArn: pulumi.Any(sourceAwsIamRole.Arn),\nKafkaClusters: msk.ReplicatorKafkaClusterArray{\n\u0026msk.ReplicatorKafkaClusterArgs{\nAmazonMskCluster: \u0026msk.ReplicatorKafkaClusterAmazonMskClusterArgs{\nMskClusterArn: pulumi.Any(source.Arn),\n},\nVpcConfig: \u0026msk.ReplicatorKafkaClusterVpcConfigArgs{\nSubnetIds: []pulumi.String(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:9,27-48)),\nSecurityGroupsIds: pulumi.StringArray{\nsourceAwsSecurityGroup.Id,\n},\n},\n},\n\u0026msk.ReplicatorKafkaClusterArgs{\nAmazonMskCluster: \u0026msk.ReplicatorKafkaClusterAmazonMskClusterArgs{\nMskClusterArn: pulumi.Any(target.Arn),\n},\nVpcConfig: \u0026msk.ReplicatorKafkaClusterVpcConfigArgs{\nSubnetIds: []pulumi.String(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:17,27-48)),\nSecurityGroupsIds: pulumi.StringArray{\ntargetAwsSecurityGroup.Id,\n},\n},\n},\n},\nReplicationInfoList: \u0026msk.ReplicatorReplicationInfoListArgs{\nSourceKafkaClusterArn: pulumi.Any(source.Arn),\nTargetKafkaClusterArn: pulumi.Any(target.Arn),\nTargetCompressionType: pulumi.String(\"NONE\"),\nTopicReplications: msk.ReplicatorReplicationInfoListTopicReplicationArray{\n\u0026msk.ReplicatorReplicationInfoListTopicReplicationArgs{\nTopicNameConfiguration: \u0026msk.ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs{\nType: pulumi.String(\"PREFIXED_WITH_SOURCE_CLUSTER_ALIAS\"),\n},\nTopicsToReplicates: pulumi.StringArray{\npulumi.String(\".*\"),\n},\nStartingPosition: \u0026msk.ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs{\nType: pulumi.String(\"LATEST\"),\n},\n},\n},\nConsumerGroupReplications: msk.ReplicatorReplicationInfoListConsumerGroupReplicationArray{\n\u0026msk.ReplicatorReplicationInfoListConsumerGroupReplicationArgs{\nConsumerGroupsToReplicates: pulumi.StringArray{\npulumi.String(\".*\"),\n},\n},\n},\n},\n})\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.msk.Replicator;\nimport com.pulumi.aws.msk.ReplicatorArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterAmazonMskClusterArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorKafkaClusterVpcConfigArgs;\nimport com.pulumi.aws.msk.inputs.ReplicatorReplicationInfoListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new Replicator(\"test\", ReplicatorArgs.builder()\n .replicatorName(\"test-name\")\n .description(\"test-description\")\n .serviceExecutionRoleArn(sourceAwsIamRole.arn())\n .kafkaClusters( \n ReplicatorKafkaClusterArgs.builder()\n .amazonMskCluster(ReplicatorKafkaClusterAmazonMskClusterArgs.builder()\n .mskClusterArn(source.arn())\n .build())\n .vpcConfig(ReplicatorKafkaClusterVpcConfigArgs.builder()\n .subnetIds(sourceAwsSubnet.stream().map(element -\u003e element.id()).collect(toList()))\n .securityGroupsIds(sourceAwsSecurityGroup.id())\n .build())\n .build(),\n ReplicatorKafkaClusterArgs.builder()\n .amazonMskCluster(ReplicatorKafkaClusterAmazonMskClusterArgs.builder()\n .mskClusterArn(target.arn())\n .build())\n .vpcConfig(ReplicatorKafkaClusterVpcConfigArgs.builder()\n .subnetIds(targetAwsSubnet.stream().map(element -\u003e element.id()).collect(toList()))\n .securityGroupsIds(targetAwsSecurityGroup.id())\n .build())\n .build())\n .replicationInfoList(ReplicatorReplicationInfoListArgs.builder()\n .sourceKafkaClusterArn(source.arn())\n .targetKafkaClusterArn(target.arn())\n .targetCompressionType(\"NONE\")\n .topicReplications(ReplicatorReplicationInfoListTopicReplicationArgs.builder()\n .topicNameConfiguration(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.builder()\n .type(\"PREFIXED_WITH_SOURCE_CLUSTER_ALIAS\")\n .build())\n .topicsToReplicates(\".*\")\n .startingPosition(ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs.builder()\n .type(\"LATEST\")\n .build())\n .build())\n .consumerGroupReplications(ReplicatorReplicationInfoListConsumerGroupReplicationArgs.builder()\n .consumerGroupsToReplicates(\".*\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import MSK replicators using the replicator ARN. For example:\n\n```sh\n$ pulumi import aws:msk/replicator:Replicator example arn:aws:kafka:us-west-2:123456789012:configuration/example/279c0212-d057-4dba-9aa9-1c4e5a25bfc7-3\n```\n", "properties": { "arn": { "type": "string", @@ -330026,27 +331476,27 @@ } }, "aws:quicksight/user:User": { - "description": "Resource for managing QuickSight User\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.quicksight.User(\"example\", {\n sessionName: \"an-author\",\n email: \"author@example.com\",\n namespace: \"foo\",\n identityType: \"IAM\",\n iamArn: \"arn:aws:iam::123456789012:user/Example\",\n userRole: \"AUTHOR\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.quicksight.User(\"example\",\n session_name=\"an-author\",\n email=\"author@example.com\",\n namespace=\"foo\",\n identity_type=\"IAM\",\n iam_arn=\"arn:aws:iam::123456789012:user/Example\",\n user_role=\"AUTHOR\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Quicksight.User(\"example\", new()\n {\n SessionName = \"an-author\",\n Email = \"author@example.com\",\n Namespace = \"foo\",\n IdentityType = \"IAM\",\n IamArn = \"arn:aws:iam::123456789012:user/Example\",\n UserRole = \"AUTHOR\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := quicksight.NewUser(ctx, \"example\", \u0026quicksight.UserArgs{\n\t\t\tSessionName: pulumi.String(\"an-author\"),\n\t\t\tEmail: pulumi.String(\"author@example.com\"),\n\t\t\tNamespace: pulumi.String(\"foo\"),\n\t\t\tIdentityType: pulumi.String(\"IAM\"),\n\t\t\tIamArn: pulumi.String(\"arn:aws:iam::123456789012:user/Example\"),\n\t\t\tUserRole: pulumi.String(\"AUTHOR\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.quicksight.User;\nimport com.pulumi.aws.quicksight.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .sessionName(\"an-author\")\n .email(\"author@example.com\")\n .namespace(\"foo\")\n .identityType(\"IAM\")\n .iamArn(\"arn:aws:iam::123456789012:user/Example\")\n .userRole(\"AUTHOR\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:quicksight:User\n properties:\n sessionName: an-author\n email: author@example.com\n namespace: foo\n identityType: IAM\n iamArn: arn:aws:iam::123456789012:user/Example\n userRole: AUTHOR\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nYou cannot import this resource.\n\n", + "description": "Resource for managing QuickSight User\n\n## Example Usage\n\n### Create User With IAM Identity Type Using an IAM Role\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.quicksight.User(\"example\", {\n email: \"author1@example.com\",\n identityType: \"IAM\",\n userRole: \"AUTHOR\",\n iamArn: \"arn:aws:iam::123456789012:role/AuthorRole\",\n sessionName: \"author1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.quicksight.User(\"example\",\n email=\"author1@example.com\",\n identity_type=\"IAM\",\n user_role=\"AUTHOR\",\n iam_arn=\"arn:aws:iam::123456789012:role/AuthorRole\",\n session_name=\"author1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Quicksight.User(\"example\", new()\n {\n Email = \"author1@example.com\",\n IdentityType = \"IAM\",\n UserRole = \"AUTHOR\",\n IamArn = \"arn:aws:iam::123456789012:role/AuthorRole\",\n SessionName = \"author1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := quicksight.NewUser(ctx, \"example\", \u0026quicksight.UserArgs{\n\t\t\tEmail: pulumi.String(\"author1@example.com\"),\n\t\t\tIdentityType: pulumi.String(\"IAM\"),\n\t\t\tUserRole: pulumi.String(\"AUTHOR\"),\n\t\t\tIamArn: pulumi.String(\"arn:aws:iam::123456789012:role/AuthorRole\"),\n\t\t\tSessionName: pulumi.String(\"author1\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.quicksight.User;\nimport com.pulumi.aws.quicksight.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .email(\"author1@example.com\")\n .identityType(\"IAM\")\n .userRole(\"AUTHOR\")\n .iamArn(\"arn:aws:iam::123456789012:role/AuthorRole\")\n .sessionName(\"author1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:quicksight:User\n properties:\n email: author1@example.com\n identityType: IAM\n userRole: AUTHOR\n iamArn: arn:aws:iam::123456789012:role/AuthorRole\n sessionName: author1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create User With IAM Identity Type Using an IAM User\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.quicksight.User(\"example\", {\n email: \"authorpro1@example.com\",\n identityType: \"IAM\",\n userRole: \"AUTHOR_PRO\",\n iamArn: \"arn:aws:iam::123456789012:user/authorpro1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.quicksight.User(\"example\",\n email=\"authorpro1@example.com\",\n identity_type=\"IAM\",\n user_role=\"AUTHOR_PRO\",\n iam_arn=\"arn:aws:iam::123456789012:user/authorpro1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Quicksight.User(\"example\", new()\n {\n Email = \"authorpro1@example.com\",\n IdentityType = \"IAM\",\n UserRole = \"AUTHOR_PRO\",\n IamArn = \"arn:aws:iam::123456789012:user/authorpro1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := quicksight.NewUser(ctx, \"example\", \u0026quicksight.UserArgs{\n\t\t\tEmail: pulumi.String(\"authorpro1@example.com\"),\n\t\t\tIdentityType: pulumi.String(\"IAM\"),\n\t\t\tUserRole: pulumi.String(\"AUTHOR_PRO\"),\n\t\t\tIamArn: pulumi.String(\"arn:aws:iam::123456789012:user/authorpro1\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.quicksight.User;\nimport com.pulumi.aws.quicksight.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .email(\"authorpro1@example.com\")\n .identityType(\"IAM\")\n .userRole(\"AUTHOR_PRO\")\n .iamArn(\"arn:aws:iam::123456789012:user/authorpro1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:quicksight:User\n properties:\n email: authorpro1@example.com\n identityType: IAM\n userRole: AUTHOR_PRO\n iamArn: arn:aws:iam::123456789012:user/authorpro1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Create User With QuickSight Identity Type in Non-Default Namespace\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.quicksight.User(\"example\", {\n email: \"reader1@example.com\",\n identityType: \"QUICKSIGHT\",\n userRole: \"READER\",\n namespace: \"example\",\n userName: \"reader1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.quicksight.User(\"example\",\n email=\"reader1@example.com\",\n identity_type=\"QUICKSIGHT\",\n user_role=\"READER\",\n namespace=\"example\",\n user_name=\"reader1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Quicksight.User(\"example\", new()\n {\n Email = \"reader1@example.com\",\n IdentityType = \"QUICKSIGHT\",\n UserRole = \"READER\",\n Namespace = \"example\",\n UserName = \"reader1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := quicksight.NewUser(ctx, \"example\", \u0026quicksight.UserArgs{\n\t\t\tEmail: pulumi.String(\"reader1@example.com\"),\n\t\t\tIdentityType: pulumi.String(\"QUICKSIGHT\"),\n\t\t\tUserRole: pulumi.String(\"READER\"),\n\t\t\tNamespace: pulumi.String(\"example\"),\n\t\t\tUserName: pulumi.String(\"reader1\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.quicksight.User;\nimport com.pulumi.aws.quicksight.UserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new User(\"example\", UserArgs.builder()\n .email(\"reader1@example.com\")\n .identityType(\"QUICKSIGHT\")\n .userRole(\"READER\")\n .namespace(\"example\")\n .userName(\"reader1\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:quicksight:User\n properties:\n email: reader1@example.com\n identityType: QUICKSIGHT\n userRole: READER\n namespace: example\n userName: reader1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nYou cannot import this resource.\n\n", "properties": { "arn": { "type": "string", - "description": "Amazon Resource Name (ARN) of the user\n" + "description": "Amazon Resource Name (ARN) for the user.\n" }, "awsAccountId": { "type": "string", - "description": "The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.\n" + "description": "ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.\n" }, "email": { "type": "string", - "description": "The email address of the user that you want to register.\n" + "description": "Email address of the user that you want to register.\n" }, "iamArn": { "type": "string", - "description": "The ARN of the IAM user or role that you are registering with Amazon QuickSight.\n" + "description": "ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.\n" }, "identityType": { "type": "string", - "description": "Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.\n" + "description": "Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.\n" }, "namespace": { "type": "string", @@ -330054,15 +331504,19 @@ }, "sessionName": { "type": "string", - "description": "The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n" + "description": "Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n" + }, + "userInvitationUrl": { + "type": "string", + "description": "URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.\n" }, "userName": { "type": "string", - "description": "The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.\n" + "description": "Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.\n" }, "userRole": { "type": "string", - "description": "The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.\n" + "description": "Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.\n\nThe following arguments are optional:\n" } }, "required": [ @@ -330070,27 +331524,28 @@ "awsAccountId", "email", "identityType", + "userInvitationUrl", "userRole" ], "inputProperties": { "awsAccountId": { "type": "string", - "description": "The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.\n", + "description": "ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.\n", "willReplaceOnChanges": true }, "email": { "type": "string", - "description": "The email address of the user that you want to register.\n", + "description": "Email address of the user that you want to register.\n", "willReplaceOnChanges": true }, "iamArn": { "type": "string", - "description": "The ARN of the IAM user or role that you are registering with Amazon QuickSight.\n", + "description": "ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.\n", "willReplaceOnChanges": true }, "identityType": { "type": "string", - "description": "Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.\n", + "description": "Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.\n", "willReplaceOnChanges": true }, "namespace": { @@ -330100,16 +331555,16 @@ }, "sessionName": { "type": "string", - "description": "The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n", + "description": "Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n", "willReplaceOnChanges": true }, "userName": { "type": "string", - "description": "The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.\n" + "description": "Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.\n" }, "userRole": { "type": "string", - "description": "The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.\n", + "description": "Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.\n\nThe following arguments are optional:\n", "willReplaceOnChanges": true } }, @@ -330123,26 +331578,26 @@ "properties": { "arn": { "type": "string", - "description": "Amazon Resource Name (ARN) of the user\n" + "description": "Amazon Resource Name (ARN) for the user.\n" }, "awsAccountId": { "type": "string", - "description": "The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.\n", + "description": "ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.\n", "willReplaceOnChanges": true }, "email": { "type": "string", - "description": "The email address of the user that you want to register.\n", + "description": "Email address of the user that you want to register.\n", "willReplaceOnChanges": true }, "iamArn": { "type": "string", - "description": "The ARN of the IAM user or role that you are registering with Amazon QuickSight.\n", + "description": "ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.\n", "willReplaceOnChanges": true }, "identityType": { "type": "string", - "description": "Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.\n", + "description": "Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.\n", "willReplaceOnChanges": true }, "namespace": { @@ -330152,16 +331607,20 @@ }, "sessionName": { "type": "string", - "description": "The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n", + "description": "Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.\n", "willReplaceOnChanges": true }, + "userInvitationUrl": { + "type": "string", + "description": "URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.\n" + }, "userName": { "type": "string", - "description": "The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.\n" + "description": "Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.\n" }, "userRole": { "type": "string", - "description": "The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.\n", + "description": "Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.\n\nThe following arguments are optional:\n", "willReplaceOnChanges": true } }, @@ -331090,7 +332549,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Enables Performance Insights for the RDS Cluster\n" + "description": "Enables Performance Insights.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -331421,7 +332880,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Enables Performance Insights for the RDS Cluster\n" + "description": "Enables Performance Insights.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -331741,7 +333200,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Enables Performance Insights for the RDS Cluster\n" + "description": "Enables Performance Insights.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -332183,7 +333642,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Specifies whether Performance Insights is enabled or not.\n" + "description": "Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -332355,7 +333814,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Specifies whether Performance Insights is enabled or not.\n" + "description": "Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -332508,7 +333967,7 @@ }, "performanceInsightsEnabled": { "type": "boolean", - "description": "Specifies whether Performance Insights is enabled or not.\n" + "description": "Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.\n" }, "performanceInsightsKmsKeyId": { "type": "string", @@ -335380,19 +336839,23 @@ "additionalProperties": { "type": "string" }, - "description": "Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.\n" + "description": "Set of non-secret key–value pairs that contains additional contextual information about the data.\nFor more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).\nYou can only include this parameter if you specify the `kms_key_id` parameter.\n" }, "arn": { "type": "string", "description": "ARN of the Integration.\n" }, + "dataFilter": { + "type": "string", + "description": "Data filters for the integration.\nThese filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.\nThe value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.\nMultiple expressions are separated by a comma.\nSee the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.\n" + }, "integrationName": { "type": "string", "description": "Name of the integration.\n" }, "kmsKeyId": { "type": "string", - "description": "KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" + "description": "KMS key identifier for the key to use to encrypt the integration.\nIf you don't specify an encryption key, RDS uses a default AWS owned key.\nIf you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" }, "sourceArn": { "type": "string", @@ -335423,6 +336886,7 @@ }, "required": [ "arn", + "dataFilter", "integrationName", "kmsKeyId", "sourceArn", @@ -335435,7 +336899,11 @@ "additionalProperties": { "type": "string" }, - "description": "Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.\n" + "description": "Set of non-secret key–value pairs that contains additional contextual information about the data.\nFor more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).\nYou can only include this parameter if you specify the `kms_key_id` parameter.\n" + }, + "dataFilter": { + "type": "string", + "description": "Data filters for the integration.\nThese filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.\nThe value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.\nMultiple expressions are separated by a comma.\nSee the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.\n" }, "integrationName": { "type": "string", @@ -335443,7 +336911,7 @@ }, "kmsKeyId": { "type": "string", - "description": "KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" + "description": "KMS key identifier for the key to use to encrypt the integration.\nIf you don't specify an encryption key, RDS uses a default AWS owned key.\nIf you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" }, "sourceArn": { "type": "string", @@ -335477,19 +336945,23 @@ "additionalProperties": { "type": "string" }, - "description": "Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.\n" + "description": "Set of non-secret key–value pairs that contains additional contextual information about the data.\nFor more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).\nYou can only include this parameter if you specify the `kms_key_id` parameter.\n" }, "arn": { "type": "string", "description": "ARN of the Integration.\n" }, + "dataFilter": { + "type": "string", + "description": "Data filters for the integration.\nThese filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.\nThe value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.\nMultiple expressions are separated by a comma.\nSee the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.\n" + }, "integrationName": { "type": "string", "description": "Name of the integration.\n" }, "kmsKeyId": { "type": "string", - "description": "KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" + "description": "KMS key identifier for the key to use to encrypt the integration.\nIf you don't specify an encryption key, RDS uses a default AWS owned key.\nIf you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.\n" }, "sourceArn": { "type": "string", @@ -341868,7 +343340,7 @@ } }, "aws:resiliencehub/resiliencyPolicy:ResiliencyPolicy": { - "description": "Resource for managing an AWS Resilience Hub Resiliency Policy.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n example:\n type: aws:resiliencehub:ResiliencyPolicy\n properties:\n policyName: testexample\n policyDescription: testexample\n tier: NonCritical\n dataLocationConstraint: AnyLocation\n policy:\n - region:\n - rpo: 24h\n rto: 24h\n az:\n - rpo: 24h\n rto: 24h\n hardware:\n - rpo: 24h\n rto: 24h\n software:\n - rpo: 24h\n rto: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Resilience Hub Resiliency Policy using the `arn`. For example:\n\n```sh\n$ pulumi import aws:resiliencehub/resiliencyPolicy:ResiliencyPolicy example arn:aws:resiliencehub:us-east-1:123456789012:resiliency-policy/8c1cfa29-d1dd-4421-aa68-c9f64cced4c2\n```\n", + "description": "Resource for managing an AWS Resilience Hub Resiliency Policy.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.resiliencehub.ResiliencyPolicy;\nimport com.pulumi.aws.resiliencehub.ResiliencyPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResiliencyPolicy(\"example\", ResiliencyPolicyArgs.builder()\n .name(\"testexample\")\n .description(\"testexample\")\n .tier(\"NonCritical\")\n .dataLocationConstraint(\"AnyLocation\")\n .policy(ResiliencyPolicyPolicyArgs.builder()\n .region(ResiliencyPolicyPolicyRegionArgs.builder()\n .rpo(\"24h\")\n .rto(\"24h\")\n .build())\n .az(ResiliencyPolicyPolicyAzArgs.builder()\n .rpo(\"24h\")\n .rto(\"24h\")\n .build())\n .hardware(ResiliencyPolicyPolicyHardwareArgs.builder()\n .rpo(\"24h\")\n .rto(\"24h\")\n .build())\n .software(ResiliencyPolicyPolicySoftwareArgs.builder()\n .rpo(\"24h\")\n .rto(\"24h\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:resiliencehub:ResiliencyPolicy\n properties:\n name: testexample\n description: testexample\n tier: NonCritical\n dataLocationConstraint: AnyLocation\n policy:\n - region:\n - rpo: 24h\n rto: 24h\n az:\n - rpo: 24h\n rto: 24h\n hardware:\n - rpo: 24h\n rto: 24h\n software:\n - rpo: 24h\n rto: 24h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Resilience Hub Resiliency Policy using the `arn`. For example:\n\n```sh\n$ pulumi import aws:resiliencehub/resiliencyPolicy:ResiliencyPolicy example arn:aws:resiliencehub:us-east-1:123456789012:resiliency-policy/8c1cfa29-d1dd-4421-aa68-c9f64cced4c2\n```\n", "properties": { "arn": { "type": "string", @@ -343843,7 +345315,7 @@ } }, "aws:route53/record:Record": { - "description": "Provides a Route53 record resource.\n\n## Example Usage\n\n### Simple routing policy\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"www.example.com\",\n type: aws.route53.RecordType.A,\n ttl: 300,\n records: [lb.publicIp],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"www.example.com\",\n type=aws.route53.RecordType.A,\n ttl=300,\n records=[lb[\"publicIp\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www.example.com\",\n Type = Aws.Route53.RecordType.A,\n Ttl = 300,\n Records = new[]\n {\n lb.PublicIp,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www.example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeA),\n\t\t\tTtl: pulumi.Int(300),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tlb.PublicIp,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www.example.com\")\n .type(\"A\")\n .ttl(300)\n .records(lb.publicIp())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www.example.com\n type: A\n ttl: 300\n records:\n - ${lb.publicIp}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Weighted routing policy\n\nOther routing policies are configured similarly. See [Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) for details.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www_dev = new aws.route53.Record(\"www-dev\", {\n zoneId: primary.zoneId,\n name: \"www\",\n type: aws.route53.RecordType.CNAME,\n ttl: 5,\n weightedRoutingPolicies: [{\n weight: 10,\n }],\n setIdentifier: \"dev\",\n records: [\"dev.example.com\"],\n});\nconst www_live = new aws.route53.Record(\"www-live\", {\n zoneId: primary.zoneId,\n name: \"www\",\n type: aws.route53.RecordType.CNAME,\n ttl: 5,\n weightedRoutingPolicies: [{\n weight: 90,\n }],\n setIdentifier: \"live\",\n records: [\"live.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww_dev = aws.route53.Record(\"www-dev\",\n zone_id=primary[\"zoneId\"],\n name=\"www\",\n type=aws.route53.RecordType.CNAME,\n ttl=5,\n weighted_routing_policies=[{\n \"weight\": 10,\n }],\n set_identifier=\"dev\",\n records=[\"dev.example.com\"])\nwww_live = aws.route53.Record(\"www-live\",\n zone_id=primary[\"zoneId\"],\n name=\"www\",\n type=aws.route53.RecordType.CNAME,\n ttl=5,\n weighted_routing_policies=[{\n \"weight\": 90,\n }],\n set_identifier=\"live\",\n records=[\"live.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www_dev = new Aws.Route53.Record(\"www-dev\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 5,\n WeightedRoutingPolicies = new[]\n {\n new Aws.Route53.Inputs.RecordWeightedRoutingPolicyArgs\n {\n Weight = 10,\n },\n },\n SetIdentifier = \"dev\",\n Records = new[]\n {\n \"dev.example.com\",\n },\n });\n\n var www_live = new Aws.Route53.Record(\"www-live\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 5,\n WeightedRoutingPolicies = new[]\n {\n new Aws.Route53.Inputs.RecordWeightedRoutingPolicyArgs\n {\n Weight = 90,\n },\n },\n SetIdentifier = \"live\",\n Records = new[]\n {\n \"live.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www-dev\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(5),\n\t\t\tWeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{\n\t\t\t\t\u0026route53.RecordWeightedRoutingPolicyArgs{\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"dev\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev.example.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"www-live\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(5),\n\t\t\tWeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{\n\t\t\t\t\u0026route53.RecordWeightedRoutingPolicyArgs{\n\t\t\t\t\tWeight: pulumi.Int(90),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"live\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"live.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordWeightedRoutingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www_dev = new Record(\"www-dev\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www\")\n .type(\"CNAME\")\n .ttl(5)\n .weightedRoutingPolicies(RecordWeightedRoutingPolicyArgs.builder()\n .weight(10)\n .build())\n .setIdentifier(\"dev\")\n .records(\"dev.example.com\")\n .build());\n\n var www_live = new Record(\"www-live\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www\")\n .type(\"CNAME\")\n .ttl(5)\n .weightedRoutingPolicies(RecordWeightedRoutingPolicyArgs.builder()\n .weight(90)\n .build())\n .setIdentifier(\"live\")\n .records(\"live.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www-dev:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www\n type: CNAME\n ttl: 5\n weightedRoutingPolicies:\n - weight: 10\n setIdentifier: dev\n records:\n - dev.example.com\n www-live:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www\n type: CNAME\n ttl: 5\n weightedRoutingPolicies:\n - weight: 90\n setIdentifier: live\n records:\n - live.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Geoproximity routing policy\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"www.example.com\",\n type: aws.route53.RecordType.CNAME,\n ttl: 300,\n geoproximityRoutingPolicy: {\n coordinates: [{\n latitude: \"49.22\",\n longitude: \"-74.01\",\n }],\n },\n setIdentifier: \"dev\",\n records: [\"dev.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"www.example.com\",\n type=aws.route53.RecordType.CNAME,\n ttl=300,\n geoproximity_routing_policy={\n \"coordinates\": [{\n \"latitude\": \"49.22\",\n \"longitude\": \"-74.01\",\n }],\n },\n set_identifier=\"dev\",\n records=[\"dev.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www.example.com\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 300,\n GeoproximityRoutingPolicy = new Aws.Route53.Inputs.RecordGeoproximityRoutingPolicyArgs\n {\n Coordinates = new[]\n {\n new Aws.Route53.Inputs.RecordGeoproximityRoutingPolicyCoordinateArgs\n {\n Latitude = \"49.22\",\n Longitude = \"-74.01\",\n },\n },\n },\n SetIdentifier = \"dev\",\n Records = new[]\n {\n \"dev.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www.example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(300),\n\t\t\tGeoproximityRoutingPolicy: \u0026route53.RecordGeoproximityRoutingPolicyArgs{\n\t\t\t\tCoordinates: route53.RecordGeoproximityRoutingPolicyCoordinateArray{\n\t\t\t\t\t\u0026route53.RecordGeoproximityRoutingPolicyCoordinateArgs{\n\t\t\t\t\t\tLatitude: pulumi.String(\"49.22\"),\n\t\t\t\t\t\tLongitude: pulumi.String(\"-74.01\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"dev\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordGeoproximityRoutingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www.example.com\")\n .type(\"CNAME\")\n .ttl(300)\n .geoproximityRoutingPolicy(RecordGeoproximityRoutingPolicyArgs.builder()\n .coordinates(RecordGeoproximityRoutingPolicyCoordinateArgs.builder()\n .latitude(\"49.22\")\n .longitude(\"-74.01\")\n .build())\n .build())\n .setIdentifier(\"dev\")\n .records(\"dev.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www.example.com\n type: CNAME\n ttl: 300\n geoproximityRoutingPolicy:\n coordinates:\n - latitude: '49.22'\n longitude: '-74.01'\n setIdentifier: dev\n records:\n - dev.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Alias record\n\nSee [related part of Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html)\nto understand differences between alias and non-alias records.\n\nTTL for all alias records is [60 seconds](https://aws.amazon.com/route53/faqs/#dns_failover_do_i_need_to_adjust),\nyou cannot change this, therefore `ttl` has to be omitted in alias records.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst main = new aws.elb.LoadBalancer(\"main\", {\n name: \"foobar-elb\",\n availabilityZones: [\"us-east-1c\"],\n listeners: [{\n instancePort: 80,\n instanceProtocol: \"http\",\n lbPort: 80,\n lbProtocol: \"http\",\n }],\n});\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"example.com\",\n type: aws.route53.RecordType.A,\n aliases: [{\n name: main.dnsName,\n zoneId: main.zoneId,\n evaluateTargetHealth: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nmain = aws.elb.LoadBalancer(\"main\",\n name=\"foobar-elb\",\n availability_zones=[\"us-east-1c\"],\n listeners=[{\n \"instance_port\": 80,\n \"instance_protocol\": \"http\",\n \"lb_port\": 80,\n \"lb_protocol\": \"http\",\n }])\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"example.com\",\n type=aws.route53.RecordType.A,\n aliases=[{\n \"name\": main.dns_name,\n \"zone_id\": main.zone_id,\n \"evaluate_target_health\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var main = new Aws.Elb.LoadBalancer(\"main\", new()\n {\n Name = \"foobar-elb\",\n AvailabilityZones = new[]\n {\n \"us-east-1c\",\n },\n Listeners = new[]\n {\n new Aws.Elb.Inputs.LoadBalancerListenerArgs\n {\n InstancePort = 80,\n InstanceProtocol = \"http\",\n LbPort = 80,\n LbProtocol = \"http\",\n },\n },\n });\n\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"example.com\",\n Type = Aws.Route53.RecordType.A,\n Aliases = new[]\n {\n new Aws.Route53.Inputs.RecordAliasArgs\n {\n Name = main.DnsName,\n ZoneId = main.ZoneId,\n EvaluateTargetHealth = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elb\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmain, err := elb.NewLoadBalancer(ctx, \"main\", \u0026elb.LoadBalancerArgs{\n\t\t\tName: pulumi.String(\"foobar-elb\"),\n\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"us-east-1c\"),\n\t\t\t},\n\t\t\tListeners: elb.LoadBalancerListenerArray{\n\t\t\t\t\u0026elb.LoadBalancerListenerArgs{\n\t\t\t\t\tInstancePort: pulumi.Int(80),\n\t\t\t\t\tInstanceProtocol: pulumi.String(\"http\"),\n\t\t\t\t\tLbPort: pulumi.Int(80),\n\t\t\t\t\tLbProtocol: pulumi.String(\"http\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeA),\n\t\t\tAliases: route53.RecordAliasArray{\n\t\t\t\t\u0026route53.RecordAliasArgs{\n\t\t\t\t\tName: main.DnsName,\n\t\t\t\t\tZoneId: main.ZoneId,\n\t\t\t\t\tEvaluateTargetHealth: pulumi.Bool(true),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.elb.LoadBalancer;\nimport com.pulumi.aws.elb.LoadBalancerArgs;\nimport com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var main = new LoadBalancer(\"main\", LoadBalancerArgs.builder()\n .name(\"foobar-elb\")\n .availabilityZones(\"us-east-1c\")\n .listeners(LoadBalancerListenerArgs.builder()\n .instancePort(80)\n .instanceProtocol(\"http\")\n .lbPort(80)\n .lbProtocol(\"http\")\n .build())\n .build());\n\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"example.com\")\n .type(\"A\")\n .aliases(RecordAliasArgs.builder()\n .name(main.dnsName())\n .zoneId(main.zoneId())\n .evaluateTargetHealth(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n main:\n type: aws:elb:LoadBalancer\n properties:\n name: foobar-elb\n availabilityZones:\n - us-east-1c\n listeners:\n - instancePort: 80\n instanceProtocol: http\n lbPort: 80\n lbProtocol: http\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: example.com\n type: A\n aliases:\n - name: ${main.dnsName}\n zoneId: ${main.zoneId}\n evaluateTargetHealth: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### NS and SOA Record Management\n\nWhen creating Route 53 zones, the `NS` and `SOA` records for the zone are automatically created. Enabling the `allow_overwrite` argument will allow managing these records in a single deployment without the requirement for `import`.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.route53.Zone(\"example\", {name: \"test.example.com\"});\nconst exampleRecord = new aws.route53.Record(\"example\", {\n allowOverwrite: true,\n name: \"test.example.com\",\n ttl: 172800,\n type: aws.route53.RecordType.NS,\n zoneId: example.zoneId,\n records: [\n example.nameServers[0],\n example.nameServers[1],\n example.nameServers[2],\n example.nameServers[3],\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.Zone(\"example\", name=\"test.example.com\")\nexample_record = aws.route53.Record(\"example\",\n allow_overwrite=True,\n name=\"test.example.com\",\n ttl=172800,\n type=aws.route53.RecordType.NS,\n zone_id=example.zone_id,\n records=[\n example.name_servers[0],\n example.name_servers[1],\n example.name_servers[2],\n example.name_servers[3],\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Route53.Zone(\"example\", new()\n {\n Name = \"test.example.com\",\n });\n\n var exampleRecord = new Aws.Route53.Record(\"example\", new()\n {\n AllowOverwrite = true,\n Name = \"test.example.com\",\n Ttl = 172800,\n Type = Aws.Route53.RecordType.NS,\n ZoneId = example.ZoneId,\n Records = new[]\n {\n example.NameServers.Apply(nameServers =\u003e nameServers[0]),\n example.NameServers.Apply(nameServers =\u003e nameServers[1]),\n example.NameServers.Apply(nameServers =\u003e nameServers[2]),\n example.NameServers.Apply(nameServers =\u003e nameServers[3]),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := route53.NewZone(ctx, \"example\", \u0026route53.ZoneArgs{\n\t\t\tName: pulumi.String(\"test.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"example\", \u0026route53.RecordArgs{\n\t\t\tAllowOverwrite: pulumi.Bool(true),\n\t\t\tName: pulumi.String(\"test.example.com\"),\n\t\t\tTtl: pulumi.Int(172800),\n\t\t\tType: pulumi.String(route53.RecordTypeNS),\n\t\t\tZoneId: example.ZoneId,\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[0], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[1], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[2], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[3], nil\n\t\t\t\t}).(pulumi.StringOutput),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Zone;\nimport com.pulumi.aws.route53.ZoneArgs;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Zone(\"example\", ZoneArgs.builder()\n .name(\"test.example.com\")\n .build());\n\n var exampleRecord = new Record(\"exampleRecord\", RecordArgs.builder()\n .allowOverwrite(true)\n .name(\"test.example.com\")\n .ttl(172800)\n .type(\"NS\")\n .zoneId(example.zoneId())\n .records( \n example.nameServers().applyValue(nameServers -\u003e nameServers[0]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[1]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[2]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[3]))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:route53:Zone\n properties:\n name: test.example.com\n exampleRecord:\n type: aws:route53:Record\n name: example\n properties:\n allowOverwrite: true\n name: test.example.com\n ttl: 172800\n type: NS\n zoneId: ${example.zoneId}\n records:\n - ${example.nameServers[0]}\n - ${example.nameServers[1]}\n - ${example.nameServers[2]}\n - ${example.nameServers[3]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIf the record also contains a set identifier, append it:\n\nIf the record name is the empty string, it can be omitted:\n\n__Using `pulumi import` to import__ Route53 Records using the ID of the record, record name, record type, and set identifier. For example:\n\nUsing the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`):\n\n```sh\n$ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS\n```\nIf the record also contains a set identifier, append it:\n\n```sh\n$ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev\n```\n", + "description": "Provides a Route53 record resource.\n\n## Example Usage\n\n### Simple routing policy\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"www.example.com\",\n type: aws.route53.RecordType.A,\n ttl: 300,\n records: [lb.publicIp],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"www.example.com\",\n type=aws.route53.RecordType.A,\n ttl=300,\n records=[lb[\"publicIp\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www.example.com\",\n Type = Aws.Route53.RecordType.A,\n Ttl = 300,\n Records = new[]\n {\n lb.PublicIp,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www.example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeA),\n\t\t\tTtl: pulumi.Int(300),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tlb.PublicIp,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www.example.com\")\n .type(\"A\")\n .ttl(300)\n .records(lb.publicIp())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www.example.com\n type: A\n ttl: 300\n records:\n - ${lb.publicIp}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Weighted routing policy\n\nOther routing policies are configured similarly. See [Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) for details.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www_dev = new aws.route53.Record(\"www-dev\", {\n zoneId: primary.zoneId,\n name: \"www\",\n type: aws.route53.RecordType.CNAME,\n ttl: 5,\n weightedRoutingPolicies: [{\n weight: 10,\n }],\n setIdentifier: \"dev\",\n records: [\"dev.example.com\"],\n});\nconst www_live = new aws.route53.Record(\"www-live\", {\n zoneId: primary.zoneId,\n name: \"www\",\n type: aws.route53.RecordType.CNAME,\n ttl: 5,\n weightedRoutingPolicies: [{\n weight: 90,\n }],\n setIdentifier: \"live\",\n records: [\"live.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww_dev = aws.route53.Record(\"www-dev\",\n zone_id=primary[\"zoneId\"],\n name=\"www\",\n type=aws.route53.RecordType.CNAME,\n ttl=5,\n weighted_routing_policies=[{\n \"weight\": 10,\n }],\n set_identifier=\"dev\",\n records=[\"dev.example.com\"])\nwww_live = aws.route53.Record(\"www-live\",\n zone_id=primary[\"zoneId\"],\n name=\"www\",\n type=aws.route53.RecordType.CNAME,\n ttl=5,\n weighted_routing_policies=[{\n \"weight\": 90,\n }],\n set_identifier=\"live\",\n records=[\"live.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www_dev = new Aws.Route53.Record(\"www-dev\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 5,\n WeightedRoutingPolicies = new[]\n {\n new Aws.Route53.Inputs.RecordWeightedRoutingPolicyArgs\n {\n Weight = 10,\n },\n },\n SetIdentifier = \"dev\",\n Records = new[]\n {\n \"dev.example.com\",\n },\n });\n\n var www_live = new Aws.Route53.Record(\"www-live\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 5,\n WeightedRoutingPolicies = new[]\n {\n new Aws.Route53.Inputs.RecordWeightedRoutingPolicyArgs\n {\n Weight = 90,\n },\n },\n SetIdentifier = \"live\",\n Records = new[]\n {\n \"live.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www-dev\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(5),\n\t\t\tWeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{\n\t\t\t\t\u0026route53.RecordWeightedRoutingPolicyArgs{\n\t\t\t\t\tWeight: pulumi.Int(10),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"dev\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev.example.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"www-live\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(5),\n\t\t\tWeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{\n\t\t\t\t\u0026route53.RecordWeightedRoutingPolicyArgs{\n\t\t\t\t\tWeight: pulumi.Int(90),\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"live\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"live.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordWeightedRoutingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www_dev = new Record(\"www-dev\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www\")\n .type(\"CNAME\")\n .ttl(5)\n .weightedRoutingPolicies(RecordWeightedRoutingPolicyArgs.builder()\n .weight(10)\n .build())\n .setIdentifier(\"dev\")\n .records(\"dev.example.com\")\n .build());\n\n var www_live = new Record(\"www-live\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www\")\n .type(\"CNAME\")\n .ttl(5)\n .weightedRoutingPolicies(RecordWeightedRoutingPolicyArgs.builder()\n .weight(90)\n .build())\n .setIdentifier(\"live\")\n .records(\"live.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www-dev:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www\n type: CNAME\n ttl: 5\n weightedRoutingPolicies:\n - weight: 10\n setIdentifier: dev\n records:\n - dev.example.com\n www-live:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www\n type: CNAME\n ttl: 5\n weightedRoutingPolicies:\n - weight: 90\n setIdentifier: live\n records:\n - live.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Geoproximity routing policy\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"www.example.com\",\n type: aws.route53.RecordType.CNAME,\n ttl: 300,\n geoproximityRoutingPolicy: {\n coordinates: [{\n latitude: \"49.22\",\n longitude: \"-74.01\",\n }],\n },\n setIdentifier: \"dev\",\n records: [\"dev.example.com\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"www.example.com\",\n type=aws.route53.RecordType.CNAME,\n ttl=300,\n geoproximity_routing_policy={\n \"coordinates\": [{\n \"latitude\": \"49.22\",\n \"longitude\": \"-74.01\",\n }],\n },\n set_identifier=\"dev\",\n records=[\"dev.example.com\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"www.example.com\",\n Type = Aws.Route53.RecordType.CNAME,\n Ttl = 300,\n GeoproximityRoutingPolicy = new Aws.Route53.Inputs.RecordGeoproximityRoutingPolicyArgs\n {\n Coordinates = new[]\n {\n new Aws.Route53.Inputs.RecordGeoproximityRoutingPolicyCoordinateArgs\n {\n Latitude = \"49.22\",\n Longitude = \"-74.01\",\n },\n },\n },\n SetIdentifier = \"dev\",\n Records = new[]\n {\n \"dev.example.com\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"www.example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeCNAME),\n\t\t\tTtl: pulumi.Int(300),\n\t\t\tGeoproximityRoutingPolicy: \u0026route53.RecordGeoproximityRoutingPolicyArgs{\n\t\t\t\tCoordinates: route53.RecordGeoproximityRoutingPolicyCoordinateArray{\n\t\t\t\t\t\u0026route53.RecordGeoproximityRoutingPolicyCoordinateArgs{\n\t\t\t\t\t\tLatitude: pulumi.String(\"49.22\"),\n\t\t\t\t\t\tLongitude: pulumi.String(\"-74.01\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tSetIdentifier: pulumi.String(\"dev\"),\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"dev.example.com\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordGeoproximityRoutingPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"www.example.com\")\n .type(\"CNAME\")\n .ttl(300)\n .geoproximityRoutingPolicy(RecordGeoproximityRoutingPolicyArgs.builder()\n .coordinates(RecordGeoproximityRoutingPolicyCoordinateArgs.builder()\n .latitude(\"49.22\")\n .longitude(\"-74.01\")\n .build())\n .build())\n .setIdentifier(\"dev\")\n .records(\"dev.example.com\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: www.example.com\n type: CNAME\n ttl: 300\n geoproximityRoutingPolicy:\n coordinates:\n - latitude: '49.22'\n longitude: '-74.01'\n setIdentifier: dev\n records:\n - dev.example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Alias record\n\nSee [related part of Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html)\nto understand differences between alias and non-alias records.\n\nTTL for all alias records is [60 seconds](https://aws.amazon.com/route53/faqs/#dns_failover_do_i_need_to_adjust),\nyou cannot change this, therefore `ttl` has to be omitted in alias records.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst main = new aws.elb.LoadBalancer(\"main\", {\n name: \"foobar-elb\",\n availabilityZones: [\"us-east-1c\"],\n listeners: [{\n instancePort: 80,\n instanceProtocol: \"http\",\n lbPort: 80,\n lbProtocol: \"http\",\n }],\n});\nconst www = new aws.route53.Record(\"www\", {\n zoneId: primary.zoneId,\n name: \"example.com\",\n type: aws.route53.RecordType.A,\n aliases: [{\n name: main.dnsName,\n zoneId: main.zoneId,\n evaluateTargetHealth: true,\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nmain = aws.elb.LoadBalancer(\"main\",\n name=\"foobar-elb\",\n availability_zones=[\"us-east-1c\"],\n listeners=[{\n \"instance_port\": 80,\n \"instance_protocol\": \"http\",\n \"lb_port\": 80,\n \"lb_protocol\": \"http\",\n }])\nwww = aws.route53.Record(\"www\",\n zone_id=primary[\"zoneId\"],\n name=\"example.com\",\n type=aws.route53.RecordType.A,\n aliases=[{\n \"name\": main.dns_name,\n \"zone_id\": main.zone_id,\n \"evaluate_target_health\": True,\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var main = new Aws.Elb.LoadBalancer(\"main\", new()\n {\n Name = \"foobar-elb\",\n AvailabilityZones = new[]\n {\n \"us-east-1c\",\n },\n Listeners = new[]\n {\n new Aws.Elb.Inputs.LoadBalancerListenerArgs\n {\n InstancePort = 80,\n InstanceProtocol = \"http\",\n LbPort = 80,\n LbProtocol = \"http\",\n },\n },\n });\n\n var www = new Aws.Route53.Record(\"www\", new()\n {\n ZoneId = primary.ZoneId,\n Name = \"example.com\",\n Type = Aws.Route53.RecordType.A,\n Aliases = new[]\n {\n new Aws.Route53.Inputs.RecordAliasArgs\n {\n Name = main.DnsName,\n ZoneId = main.ZoneId,\n EvaluateTargetHealth = true,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elb\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tmain, err := elb.NewLoadBalancer(ctx, \"main\", \u0026elb.LoadBalancerArgs{\n\t\t\tName: pulumi.String(\"foobar-elb\"),\n\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"us-east-1c\"),\n\t\t\t},\n\t\t\tListeners: elb.LoadBalancerListenerArray{\n\t\t\t\t\u0026elb.LoadBalancerListenerArgs{\n\t\t\t\t\tInstancePort: pulumi.Int(80),\n\t\t\t\t\tInstanceProtocol: pulumi.String(\"http\"),\n\t\t\t\t\tLbPort: pulumi.Int(80),\n\t\t\t\t\tLbProtocol: pulumi.String(\"http\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"www\", \u0026route53.RecordArgs{\n\t\t\tZoneId: pulumi.Any(primary.ZoneId),\n\t\t\tName: pulumi.String(\"example.com\"),\n\t\t\tType: pulumi.String(route53.RecordTypeA),\n\t\t\tAliases: route53.RecordAliasArray{\n\t\t\t\t\u0026route53.RecordAliasArgs{\n\t\t\t\t\tName: main.DnsName,\n\t\t\t\t\tZoneId: main.ZoneId,\n\t\t\t\t\tEvaluateTargetHealth: pulumi.Bool(true),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.elb.LoadBalancer;\nimport com.pulumi.aws.elb.LoadBalancerArgs;\nimport com.pulumi.aws.elb.inputs.LoadBalancerListenerArgs;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport com.pulumi.aws.route53.inputs.RecordAliasArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var main = new LoadBalancer(\"main\", LoadBalancerArgs.builder()\n .name(\"foobar-elb\")\n .availabilityZones(\"us-east-1c\")\n .listeners(LoadBalancerListenerArgs.builder()\n .instancePort(80)\n .instanceProtocol(\"http\")\n .lbPort(80)\n .lbProtocol(\"http\")\n .build())\n .build());\n\n var www = new Record(\"www\", RecordArgs.builder()\n .zoneId(primary.zoneId())\n .name(\"example.com\")\n .type(\"A\")\n .aliases(RecordAliasArgs.builder()\n .name(main.dnsName())\n .zoneId(main.zoneId())\n .evaluateTargetHealth(true)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n main:\n type: aws:elb:LoadBalancer\n properties:\n name: foobar-elb\n availabilityZones:\n - us-east-1c\n listeners:\n - instancePort: 80\n instanceProtocol: http\n lbPort: 80\n lbProtocol: http\n www:\n type: aws:route53:Record\n properties:\n zoneId: ${primary.zoneId}\n name: example.com\n type: A\n aliases:\n - name: ${main.dnsName}\n zoneId: ${main.zoneId}\n evaluateTargetHealth: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### NS and SOA Record Management\n\nWhen creating Route 53 zones, the `NS` and `SOA` records for the zone are automatically created. Enabling the `allow_overwrite` argument will allow managing these records in a single deployment without the requirement for `import`.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.route53.Zone(\"example\", {name: \"test.example.com\"});\nconst exampleRecord = new aws.route53.Record(\"example\", {\n allowOverwrite: true,\n name: \"test.example.com\",\n ttl: 172800,\n type: aws.route53.RecordType.NS,\n zoneId: example.zoneId,\n records: [\n example.nameServers[0],\n example.nameServers[1],\n example.nameServers[2],\n example.nameServers[3],\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.Zone(\"example\", name=\"test.example.com\")\nexample_record = aws.route53.Record(\"example\",\n allow_overwrite=True,\n name=\"test.example.com\",\n ttl=172800,\n type=aws.route53.RecordType.NS,\n zone_id=example.zone_id,\n records=[\n example.name_servers[0],\n example.name_servers[1],\n example.name_servers[2],\n example.name_servers[3],\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.Route53.Zone(\"example\", new()\n {\n Name = \"test.example.com\",\n });\n\n var exampleRecord = new Aws.Route53.Record(\"example\", new()\n {\n AllowOverwrite = true,\n Name = \"test.example.com\",\n Ttl = 172800,\n Type = Aws.Route53.RecordType.NS,\n ZoneId = example.ZoneId,\n Records = new[]\n {\n example.NameServers.Apply(nameServers =\u003e nameServers[0]),\n example.NameServers.Apply(nameServers =\u003e nameServers[1]),\n example.NameServers.Apply(nameServers =\u003e nameServers[2]),\n example.NameServers.Apply(nameServers =\u003e nameServers[3]),\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := route53.NewZone(ctx, \"example\", \u0026route53.ZoneArgs{\n\t\t\tName: pulumi.String(\"test.example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.NewRecord(ctx, \"example\", \u0026route53.RecordArgs{\n\t\t\tAllowOverwrite: pulumi.Bool(true),\n\t\t\tName: pulumi.String(\"test.example.com\"),\n\t\t\tTtl: pulumi.Int(172800),\n\t\t\tType: pulumi.String(route53.RecordTypeNS),\n\t\t\tZoneId: example.ZoneId,\n\t\t\tRecords: pulumi.StringArray{\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[0], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[1], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[2], nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t\texample.NameServers.ApplyT(func(nameServers []string) (string, error) {\n\t\t\t\t\treturn nameServers[3], nil\n\t\t\t\t}).(pulumi.StringOutput),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Zone;\nimport com.pulumi.aws.route53.ZoneArgs;\nimport com.pulumi.aws.route53.Record;\nimport com.pulumi.aws.route53.RecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new Zone(\"example\", ZoneArgs.builder()\n .name(\"test.example.com\")\n .build());\n\n var exampleRecord = new Record(\"exampleRecord\", RecordArgs.builder()\n .allowOverwrite(true)\n .name(\"test.example.com\")\n .ttl(172800)\n .type(\"NS\")\n .zoneId(example.zoneId())\n .records( \n example.nameServers().applyValue(nameServers -\u003e nameServers[0]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[1]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[2]),\n example.nameServers().applyValue(nameServers -\u003e nameServers[3]))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:route53:Zone\n properties:\n name: test.example.com\n exampleRecord:\n type: aws:route53:Record\n name: example\n properties:\n allowOverwrite: true\n name: test.example.com\n ttl: 172800\n type: NS\n zoneId: ${example.zoneId}\n records:\n - ${example.nameServers[0]}\n - ${example.nameServers[1]}\n - ${example.nameServers[2]}\n - ${example.nameServers[3]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIf the record also contains a set identifier, append it:\n\nIf the record name is the empty string, it can be omitted:\n\n__Using `pulumi import` to import__ Route53 Records using the ID of the record, record name, record type, and set identifier. For example:\n\nUsing the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`):\n\n```sh\n$ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS\n```\nIf the record also contains a set identifier, append it:\n\n```sh\n$ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev\n```\n", "properties": { "aliases": { "type": "array", @@ -350904,7 +352376,7 @@ } }, "aws:s3/objectCopy:ObjectCopy": { - "description": "Provides a resource for copying an S3 object.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = new aws.s3.ObjectCopy(\"test\", {\n bucket: \"destination_bucket\",\n key: \"destination_key\",\n source: \"source_bucket/source_key\",\n grants: [{\n uri: \"http://acs.amazonaws.com/groups/global/AllUsers\",\n type: \"Group\",\n permissions: [\"READ\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.s3.ObjectCopy(\"test\",\n bucket=\"destination_bucket\",\n key=\"destination_key\",\n source=\"source_bucket/source_key\",\n grants=[{\n \"uri\": \"http://acs.amazonaws.com/groups/global/AllUsers\",\n \"type\": \"Group\",\n \"permissions\": [\"READ\"],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Aws.S3.ObjectCopy(\"test\", new()\n {\n Bucket = \"destination_bucket\",\n Key = \"destination_key\",\n Source = \"source_bucket/source_key\",\n Grants = new[]\n {\n new Aws.S3.Inputs.ObjectCopyGrantArgs\n {\n Uri = \"http://acs.amazonaws.com/groups/global/AllUsers\",\n Type = \"Group\",\n Permissions = new[]\n {\n \"READ\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := s3.NewObjectCopy(ctx, \"test\", \u0026s3.ObjectCopyArgs{\n\t\t\tBucket: pulumi.String(\"destination_bucket\"),\n\t\t\tKey: pulumi.String(\"destination_key\"),\n\t\t\tSource: pulumi.String(\"source_bucket/source_key\"),\n\t\t\tGrants: s3.ObjectCopyGrantArray{\n\t\t\t\t\u0026s3.ObjectCopyGrantArgs{\n\t\t\t\t\tUri: pulumi.String(\"http://acs.amazonaws.com/groups/global/AllUsers\"),\n\t\t\t\t\tType: pulumi.String(\"Group\"),\n\t\t\t\t\tPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"READ\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.s3.ObjectCopy;\nimport com.pulumi.aws.s3.ObjectCopyArgs;\nimport com.pulumi.aws.s3.inputs.ObjectCopyGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new ObjectCopy(\"test\", ObjectCopyArgs.builder()\n .bucket(\"destination_bucket\")\n .key(\"destination_key\")\n .source(\"source_bucket/source_key\")\n .grants(ObjectCopyGrantArgs.builder()\n .uri(\"http://acs.amazonaws.com/groups/global/AllUsers\")\n .type(\"Group\")\n .permissions(\"READ\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: aws:s3:ObjectCopy\n properties:\n bucket: destination_bucket\n key: destination_key\n source: source_bucket/source_key\n grants:\n - uri: http://acs.amazonaws.com/groups/global/AllUsers\n type: Group\n permissions:\n - READ\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "description": "Provides a resource for copying an S3 object.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = new aws.s3.ObjectCopy(\"test\", {\n bucket: \"destination_bucket\",\n key: \"destination_key\",\n source: \"source_bucket/source_key\",\n grants: [{\n uri: \"http://acs.amazonaws.com/groups/global/AllUsers\",\n type: \"Group\",\n permissions: [\"READ\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.s3.ObjectCopy(\"test\",\n bucket=\"destination_bucket\",\n key=\"destination_key\",\n source=\"source_bucket/source_key\",\n grants=[{\n \"uri\": \"http://acs.amazonaws.com/groups/global/AllUsers\",\n \"type\": \"Group\",\n \"permissions\": [\"READ\"],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Aws.S3.ObjectCopy(\"test\", new()\n {\n Bucket = \"destination_bucket\",\n Key = \"destination_key\",\n Source = \"source_bucket/source_key\",\n Grants = new[]\n {\n new Aws.S3.Inputs.ObjectCopyGrantArgs\n {\n Uri = \"http://acs.amazonaws.com/groups/global/AllUsers\",\n Type = \"Group\",\n Permissions = new[]\n {\n \"READ\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := s3.NewObjectCopy(ctx, \"test\", \u0026s3.ObjectCopyArgs{\n\t\t\tBucket: pulumi.String(\"destination_bucket\"),\n\t\t\tKey: pulumi.String(\"destination_key\"),\n\t\t\tSource: pulumi.String(\"source_bucket/source_key\"),\n\t\t\tGrants: s3.ObjectCopyGrantArray{\n\t\t\t\t\u0026s3.ObjectCopyGrantArgs{\n\t\t\t\t\tUri: pulumi.String(\"http://acs.amazonaws.com/groups/global/AllUsers\"),\n\t\t\t\t\tType: pulumi.String(\"Group\"),\n\t\t\t\t\tPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"READ\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.s3.ObjectCopy;\nimport com.pulumi.aws.s3.ObjectCopyArgs;\nimport com.pulumi.aws.s3.inputs.ObjectCopyGrantArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new ObjectCopy(\"test\", ObjectCopyArgs.builder()\n .bucket(\"destination_bucket\")\n .key(\"destination_key\")\n .source(\"source_bucket/source_key\")\n .grants(ObjectCopyGrantArgs.builder()\n .uri(\"http://acs.amazonaws.com/groups/global/AllUsers\")\n .type(\"Group\")\n .permissions(\"READ\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: aws:s3:ObjectCopy\n properties:\n bucket: destination_bucket\n key: destination_key\n source: source_bucket/source_key\n grants:\n - uri: http://acs.amazonaws.com/groups/global/AllUsers\n type: Group\n permissions:\n - READ\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Ignoring Provider `default_tags`\n\nS3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html).\nIf the resource's own `tags` and the provider-level `default_tags` would together lead to more than 10 tags on an S3 object copy, use the `override_provider` configuration block to suppress any provider-level `default_tags`.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = new aws.s3.ObjectCopy(\"test\", {\n bucket: \"destination_bucket\",\n key: \"destination_key\",\n source: \"source_bucket/source_key\",\n overrideProvider: {\n defaultTags: {\n tags: {},\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.s3.ObjectCopy(\"test\",\n bucket=\"destination_bucket\",\n key=\"destination_key\",\n source=\"source_bucket/source_key\",\n override_provider={\n \"default_tags\": {\n \"tags\": {},\n },\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Aws.S3.ObjectCopy(\"test\", new()\n {\n Bucket = \"destination_bucket\",\n Key = \"destination_key\",\n Source = \"source_bucket/source_key\",\n OverrideProvider = new Aws.S3.Inputs.ObjectCopyOverrideProviderArgs\n {\n DefaultTags = new Aws.S3.Inputs.ObjectCopyOverrideProviderDefaultTagsArgs\n {\n Tags = null,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := s3.NewObjectCopy(ctx, \"test\", \u0026s3.ObjectCopyArgs{\n\t\t\tBucket: pulumi.String(\"destination_bucket\"),\n\t\t\tKey: pulumi.String(\"destination_key\"),\n\t\t\tSource: pulumi.String(\"source_bucket/source_key\"),\n\t\t\tOverrideProvider: \u0026s3.ObjectCopyOverrideProviderArgs{\n\t\t\t\tDefaultTags: \u0026s3.ObjectCopyOverrideProviderDefaultTagsArgs{\n\t\t\t\t\tTags: pulumi.StringMap{},\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.s3.ObjectCopy;\nimport com.pulumi.aws.s3.ObjectCopyArgs;\nimport com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderArgs;\nimport com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderDefaultTagsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new ObjectCopy(\"test\", ObjectCopyArgs.builder()\n .bucket(\"destination_bucket\")\n .key(\"destination_key\")\n .source(\"source_bucket/source_key\")\n .overrideProvider(ObjectCopyOverrideProviderArgs.builder()\n .defaultTags(ObjectCopyOverrideProviderDefaultTagsArgs.builder()\n .tags()\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: aws:s3:ObjectCopy\n properties:\n bucket: destination_bucket\n key: destination_key\n source: source_bucket/source_key\n overrideProvider:\n defaultTags:\n tags: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "properties": { "acl": { "type": "string", @@ -351062,6 +352534,9 @@ "type": "string", "description": "Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods).\n" }, + "overrideProvider": { + "$ref": "#/types/aws:s3/ObjectCopyOverrideProvider:ObjectCopyOverrideProvider" + }, "requestCharged": { "type": "boolean", "description": "If present, indicates that the requester was successfully charged for the request.\n" @@ -351289,6 +352764,9 @@ "type": "string", "description": "Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods).\n" }, + "overrideProvider": { + "$ref": "#/types/aws:s3/ObjectCopyOverrideProvider:ObjectCopyOverrideProvider" + }, "requestPayer": { "type": "string", "description": "Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`.\n" @@ -351501,6 +352979,9 @@ "type": "string", "description": "Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods).\n" }, + "overrideProvider": { + "$ref": "#/types/aws:s3/ObjectCopyOverrideProvider:ObjectCopyOverrideProvider" + }, "requestCharged": { "type": "boolean", "description": "If present, indicates that the requester was successfully charged for the request.\n" @@ -352913,7 +354394,7 @@ } }, "aws:s3tables/table:Table": { - "description": "Resource for managing an Amazon S3 Tables Table.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleTableBucket = new aws.s3tables.TableBucket(\"example\", {name: \"example-bucket\"});\nconst exampleNamespace = new aws.s3tables.Namespace(\"example\", {\n namespace: \"example-namespace\",\n tableBucketArn: exampleTableBucket.arn,\n});\nconst example = new aws.s3tables.Table(\"example\", {\n name: \"example-table\",\n namespace: exampleNamespace,\n tableBucketArn: exampleNamespace.tableBucketArn,\n format: \"ICEBERG\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_table_bucket = aws.s3tables.TableBucket(\"example\", name=\"example-bucket\")\nexample_namespace = aws.s3tables.Namespace(\"example\",\n namespace=\"example-namespace\",\n table_bucket_arn=example_table_bucket.arn)\nexample = aws.s3tables.Table(\"example\",\n name=\"example-table\",\n namespace=example_namespace,\n table_bucket_arn=example_namespace.table_bucket_arn,\n format=\"ICEBERG\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleTableBucket = new Aws.S3Tables.TableBucket(\"example\", new()\n {\n Name = \"example-bucket\",\n });\n\n var exampleNamespace = new Aws.S3Tables.Namespace(\"example\", new()\n {\n NameSpace = \"example-namespace\",\n TableBucketArn = exampleTableBucket.Arn,\n });\n\n var example = new Aws.S3Tables.Table(\"example\", new()\n {\n Name = \"example-table\",\n Namespace = exampleNamespace,\n TableBucketArn = exampleNamespace.TableBucketArn,\n Format = \"ICEBERG\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3tables\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleTableBucket, err := s3tables.NewTableBucket(ctx, \"example\", \u0026s3tables.TableBucketArgs{\n\t\t\tName: pulumi.String(\"example-bucket\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNamespace, err := s3tables.NewNamespace(ctx, \"example\", \u0026s3tables.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(\"example-namespace\"),\n\t\t\tTableBucketArn: exampleTableBucket.Arn,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = s3tables.NewTable(ctx, \"example\", \u0026s3tables.TableArgs{\n\t\t\tName: pulumi.String(\"example-table\"),\n\t\t\tNamespace: exampleNamespace,\n\t\t\tTableBucketArn: exampleNamespace.TableBucketArn,\n\t\t\tFormat: pulumi.String(\"ICEBERG\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.s3tables.TableBucket;\nimport com.pulumi.aws.s3tables.TableBucketArgs;\nimport com.pulumi.aws.s3tables.Namespace;\nimport com.pulumi.aws.s3tables.NamespaceArgs;\nimport com.pulumi.aws.s3tables.Table;\nimport com.pulumi.aws.s3tables.TableArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleTableBucket = new TableBucket(\"exampleTableBucket\", TableBucketArgs.builder()\n .name(\"example-bucket\")\n .build());\n\n var exampleNamespace = new Namespace(\"exampleNamespace\", NamespaceArgs.builder()\n .namespace(\"example-namespace\")\n .tableBucketArn(exampleTableBucket.arn())\n .build());\n\n var example = new Table(\"example\", TableArgs.builder()\n .name(\"example-table\")\n .namespace(exampleNamespace)\n .tableBucketArn(exampleNamespace.tableBucketArn())\n .format(\"ICEBERG\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:s3tables:Table\n properties:\n name: example-table\n namespace: ${exampleNamespace}\n tableBucketArn: ${exampleNamespace.tableBucketArn}\n format: ICEBERG\n exampleNamespace:\n type: aws:s3tables:Namespace\n name: example\n properties:\n namespace: example-namespace\n tableBucketArn: ${exampleTableBucket.arn}\n exampleTableBucket:\n type: aws:s3tables:TableBucket\n name: example\n properties:\n name: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import S3 Tables Table using the `table_bucket_arn`, the value of `namespace`, and the value of `name`, separated by a semicolon (`;`). For example:\n\n```sh\n$ pulumi import aws:s3tables/table:Table example 'arn:aws:s3tables:us-west-2:123456789012:bucket/example-bucket;example-namespace;example-table'\n```\n", + "description": "Resource for managing an Amazon S3 Tables Table.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst exampleTableBucket = new aws.s3tables.TableBucket(\"example\", {name: \"example-bucket\"});\nconst exampleNamespace = new aws.s3tables.Namespace(\"example\", {\n namespace: \"example-namespace\",\n tableBucketArn: exampleTableBucket.arn,\n});\nconst example = new aws.s3tables.Table(\"example\", {\n name: \"example-table\",\n namespace: exampleNamespace.namespace,\n tableBucketArn: exampleNamespace.tableBucketArn,\n format: \"ICEBERG\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample_table_bucket = aws.s3tables.TableBucket(\"example\", name=\"example-bucket\")\nexample_namespace = aws.s3tables.Namespace(\"example\",\n namespace=\"example-namespace\",\n table_bucket_arn=example_table_bucket.arn)\nexample = aws.s3tables.Table(\"example\",\n name=\"example-table\",\n namespace=example_namespace.namespace,\n table_bucket_arn=example_namespace.table_bucket_arn,\n format=\"ICEBERG\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleTableBucket = new Aws.S3Tables.TableBucket(\"example\", new()\n {\n Name = \"example-bucket\",\n });\n\n var exampleNamespace = new Aws.S3Tables.Namespace(\"example\", new()\n {\n NameSpace = \"example-namespace\",\n TableBucketArn = exampleTableBucket.Arn,\n });\n\n var example = new Aws.S3Tables.Table(\"example\", new()\n {\n Name = \"example-table\",\n Namespace = exampleNamespace.NameSpace,\n TableBucketArn = exampleNamespace.TableBucketArn,\n Format = \"ICEBERG\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3tables\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleTableBucket, err := s3tables.NewTableBucket(ctx, \"example\", \u0026s3tables.TableBucketArgs{\n\t\t\tName: pulumi.String(\"example-bucket\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleNamespace, err := s3tables.NewNamespace(ctx, \"example\", \u0026s3tables.NamespaceArgs{\n\t\t\tNamespace: pulumi.String(\"example-namespace\"),\n\t\t\tTableBucketArn: exampleTableBucket.Arn,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = s3tables.NewTable(ctx, \"example\", \u0026s3tables.TableArgs{\n\t\t\tName: pulumi.String(\"example-table\"),\n\t\t\tNamespace: exampleNamespace.Namespace,\n\t\t\tTableBucketArn: exampleNamespace.TableBucketArn,\n\t\t\tFormat: pulumi.String(\"ICEBERG\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.s3tables.TableBucket;\nimport com.pulumi.aws.s3tables.TableBucketArgs;\nimport com.pulumi.aws.s3tables.Namespace;\nimport com.pulumi.aws.s3tables.NamespaceArgs;\nimport com.pulumi.aws.s3tables.Table;\nimport com.pulumi.aws.s3tables.TableArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleTableBucket = new TableBucket(\"exampleTableBucket\", TableBucketArgs.builder()\n .name(\"example-bucket\")\n .build());\n\n var exampleNamespace = new Namespace(\"exampleNamespace\", NamespaceArgs.builder()\n .namespace(\"example-namespace\")\n .tableBucketArn(exampleTableBucket.arn())\n .build());\n\n var example = new Table(\"example\", TableArgs.builder()\n .name(\"example-table\")\n .namespace(exampleNamespace.namespace())\n .tableBucketArn(exampleNamespace.tableBucketArn())\n .format(\"ICEBERG\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:s3tables:Table\n properties:\n name: example-table\n namespace: ${exampleNamespace.namespace}\n tableBucketArn: ${exampleNamespace.tableBucketArn}\n format: ICEBERG\n exampleNamespace:\n type: aws:s3tables:Namespace\n name: example\n properties:\n namespace: example-namespace\n tableBucketArn: ${exampleTableBucket.arn}\n exampleTableBucket:\n type: aws:s3tables:TableBucket\n name: example\n properties:\n name: example-bucket\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import S3 Tables Table using the `table_bucket_arn`, the value of `namespace`, and the value of `name`, separated by a semicolon (`;`). For example:\n\n```sh\n$ pulumi import aws:s3tables/table:Table example 'arn:aws:s3tables:us-west-2:123456789012:bucket/example-bucket;example-namespace;example-table'\n```\n", "properties": { "arn": { "type": "string", @@ -371117,7 +372598,7 @@ } }, "aws:ssoadmin/managedPolicyAttachment:ManagedPolicyAttachment": { - "description": "Provides an IAM managed policy for a Single Sign-On (SSO) Permission Set resource\n\n\u003e **NOTE:** Creating this resource will automatically [Provision the Permission Set](https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ProvisionPermissionSet.html) to apply the corresponding updates to all assigned accounts.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.ssoadmin.getInstances({});\nconst examplePermissionSet = new aws.ssoadmin.PermissionSet(\"example\", {\n name: \"Example\",\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n});\nconst exampleManagedPolicyAttachment = new aws.ssoadmin.ManagedPolicyAttachment(\"example\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n managedPolicyArn: \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permissionSetArn: examplePermissionSet.arn,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ssoadmin.get_instances()\nexample_permission_set = aws.ssoadmin.PermissionSet(\"example\",\n name=\"Example\",\n instance_arn=example.arns[0])\nexample_managed_policy_attachment = aws.ssoadmin.ManagedPolicyAttachment(\"example\",\n instance_arn=example.arns[0],\n managed_policy_arn=\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permission_set_arn=example_permission_set.arn)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.SsoAdmin.GetInstances.Invoke();\n\n var examplePermissionSet = new Aws.SsoAdmin.PermissionSet(\"example\", new()\n {\n Name = \"Example\",\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n });\n\n var exampleManagedPolicyAttachment = new Aws.SsoAdmin.ManagedPolicyAttachment(\"example\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n ManagedPolicyArn = \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n PermissionSetArn = examplePermissionSet.Arn,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssoadmin\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := ssoadmin.GetInstances(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePermissionSet, err := ssoadmin.NewPermissionSet(ctx, \"example\", \u0026ssoadmin.PermissionSetArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssoadmin.NewManagedPolicyAttachment(ctx, \"example\", \u0026ssoadmin.ManagedPolicyAttachmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tManagedPolicyArn: pulumi.String(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\"),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ssoadmin.SsoadminFunctions;\nimport com.pulumi.aws.ssoadmin.PermissionSet;\nimport com.pulumi.aws.ssoadmin.PermissionSetArgs;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachment;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = SsoadminFunctions.getInstances();\n\n var examplePermissionSet = new PermissionSet(\"examplePermissionSet\", PermissionSetArgs.builder()\n .name(\"Example\")\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .build());\n\n var exampleManagedPolicyAttachment = new ManagedPolicyAttachment(\"exampleManagedPolicyAttachment\", ManagedPolicyAttachmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .managedPolicyArn(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\")\n .permissionSetArn(examplePermissionSet.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePermissionSet:\n type: aws:ssoadmin:PermissionSet\n name: example\n properties:\n name: Example\n instanceArn: ${example.arns[0]}\n exampleManagedPolicyAttachment:\n type: aws:ssoadmin:ManagedPolicyAttachment\n name: example\n properties:\n instanceArn: ${example.arns[0]}\n managedPolicyArn: arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\n permissionSetArn: ${examplePermissionSet.arn}\nvariables:\n example:\n fn::invoke:\n function: aws:ssoadmin:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With Account Assignment\n\n\u003e Because destruction of a managed policy attachment resource also re-provisions the associated permission set to all accounts, explicitly indicating the dependency with the account assignment resource via the `depends_on` meta argument is necessary to ensure proper deletion order when these resources are used together.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.ssoadmin.getInstances({});\nconst examplePermissionSet = new aws.ssoadmin.PermissionSet(\"example\", {\n name: \"Example\",\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n});\nconst exampleGroup = new aws.identitystore.Group(\"example\", {\n identityStoreId: example.then(example =\u003e example.identityStoreIds?.[0]),\n displayName: \"Admin\",\n description: \"Admin Group\",\n});\nconst accountAssignment = new aws.ssoadmin.AccountAssignment(\"account_assignment\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n permissionSetArn: examplePermissionSet.arn,\n principalId: exampleGroup.groupId,\n principalType: \"GROUP\",\n targetId: \"123456789012\",\n targetType: \"AWS_ACCOUNT\",\n});\nconst exampleManagedPolicyAttachment = new aws.ssoadmin.ManagedPolicyAttachment(\"example\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n managedPolicyArn: \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permissionSetArn: examplePermissionSet.arn,\n}, {\n dependsOn: [exampleAwsSsoadminAccountAssignment],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ssoadmin.get_instances()\nexample_permission_set = aws.ssoadmin.PermissionSet(\"example\",\n name=\"Example\",\n instance_arn=example.arns[0])\nexample_group = aws.identitystore.Group(\"example\",\n identity_store_id=example.identity_store_ids[0],\n display_name=\"Admin\",\n description=\"Admin Group\")\naccount_assignment = aws.ssoadmin.AccountAssignment(\"account_assignment\",\n instance_arn=example.arns[0],\n permission_set_arn=example_permission_set.arn,\n principal_id=example_group.group_id,\n principal_type=\"GROUP\",\n target_id=\"123456789012\",\n target_type=\"AWS_ACCOUNT\")\nexample_managed_policy_attachment = aws.ssoadmin.ManagedPolicyAttachment(\"example\",\n instance_arn=example.arns[0],\n managed_policy_arn=\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permission_set_arn=example_permission_set.arn,\n opts = pulumi.ResourceOptions(depends_on=[example_aws_ssoadmin_account_assignment]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.SsoAdmin.GetInstances.Invoke();\n\n var examplePermissionSet = new Aws.SsoAdmin.PermissionSet(\"example\", new()\n {\n Name = \"Example\",\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n });\n\n var exampleGroup = new Aws.IdentityStore.Group(\"example\", new()\n {\n IdentityStoreId = example.Apply(getInstancesResult =\u003e getInstancesResult.IdentityStoreIds[0]),\n DisplayName = \"Admin\",\n Description = \"Admin Group\",\n });\n\n var accountAssignment = new Aws.SsoAdmin.AccountAssignment(\"account_assignment\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n PermissionSetArn = examplePermissionSet.Arn,\n PrincipalId = exampleGroup.GroupId,\n PrincipalType = \"GROUP\",\n TargetId = \"123456789012\",\n TargetType = \"AWS_ACCOUNT\",\n });\n\n var exampleManagedPolicyAttachment = new Aws.SsoAdmin.ManagedPolicyAttachment(\"example\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n ManagedPolicyArn = \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n PermissionSetArn = examplePermissionSet.Arn,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n exampleAwsSsoadminAccountAssignment,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/identitystore\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssoadmin\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := ssoadmin.GetInstances(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePermissionSet, err := ssoadmin.NewPermissionSet(ctx, \"example\", \u0026ssoadmin.PermissionSetArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := identitystore.NewGroup(ctx, \"example\", \u0026identitystore.GroupArgs{\n\t\t\tIdentityStoreId: pulumi.String(example.IdentityStoreIds[0]),\n\t\t\tDisplayName: pulumi.String(\"Admin\"),\n\t\t\tDescription: pulumi.String(\"Admin Group\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssoadmin.NewAccountAssignment(ctx, \"account_assignment\", \u0026ssoadmin.AccountAssignmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\n\t\t\tPrincipalId: exampleGroup.GroupId,\n\t\t\tPrincipalType: pulumi.String(\"GROUP\"),\n\t\t\tTargetId: pulumi.String(\"123456789012\"),\n\t\t\tTargetType: pulumi.String(\"AWS_ACCOUNT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssoadmin.NewManagedPolicyAttachment(ctx, \"example\", \u0026ssoadmin.ManagedPolicyAttachmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tManagedPolicyArn: pulumi.String(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\"),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\texampleAwsSsoadminAccountAssignment,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ssoadmin.SsoadminFunctions;\nimport com.pulumi.aws.ssoadmin.PermissionSet;\nimport com.pulumi.aws.ssoadmin.PermissionSetArgs;\nimport com.pulumi.aws.identitystore.Group;\nimport com.pulumi.aws.identitystore.GroupArgs;\nimport com.pulumi.aws.ssoadmin.AccountAssignment;\nimport com.pulumi.aws.ssoadmin.AccountAssignmentArgs;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachment;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = SsoadminFunctions.getInstances();\n\n var examplePermissionSet = new PermissionSet(\"examplePermissionSet\", PermissionSetArgs.builder()\n .name(\"Example\")\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .build());\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .identityStoreId(example.applyValue(getInstancesResult -\u003e getInstancesResult.identityStoreIds()[0]))\n .displayName(\"Admin\")\n .description(\"Admin Group\")\n .build());\n\n var accountAssignment = new AccountAssignment(\"accountAssignment\", AccountAssignmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .permissionSetArn(examplePermissionSet.arn())\n .principalId(exampleGroup.groupId())\n .principalType(\"GROUP\")\n .targetId(\"123456789012\")\n .targetType(\"AWS_ACCOUNT\")\n .build());\n\n var exampleManagedPolicyAttachment = new ManagedPolicyAttachment(\"exampleManagedPolicyAttachment\", ManagedPolicyAttachmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .managedPolicyArn(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\")\n .permissionSetArn(examplePermissionSet.arn())\n .build(), CustomResourceOptions.builder()\n .dependsOn(exampleAwsSsoadminAccountAssignment)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePermissionSet:\n type: aws:ssoadmin:PermissionSet\n name: example\n properties:\n name: Example\n instanceArn: ${example.arns[0]}\n exampleGroup:\n type: aws:identitystore:Group\n name: example\n properties:\n identityStoreId: ${example.identityStoreIds[0]}\n displayName: Admin\n description: Admin Group\n accountAssignment:\n type: aws:ssoadmin:AccountAssignment\n name: account_assignment\n properties:\n instanceArn: ${example.arns[0]}\n permissionSetArn: ${examplePermissionSet.arn}\n principalId: ${exampleGroup.groupId}\n principalType: GROUP\n targetId: '123456789012'\n targetType: AWS_ACCOUNT\n exampleManagedPolicyAttachment:\n type: aws:ssoadmin:ManagedPolicyAttachment\n name: example\n properties:\n instanceArn: ${example.arns[0]}\n managedPolicyArn: arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\n permissionSetArn: ${examplePermissionSet.arn}\n options:\n dependsOn:\n - ${exampleAwsSsoadminAccountAssignment}\nvariables:\n example:\n fn::invoke:\n function: aws:ssoadmin:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import SSO Managed Policy Attachments using the `managed_policy_arn`, `permission_set_arn`, and `instance_arn` separated by a comma (`,`). For example:\n\n```sh\n$ pulumi import aws:ssoadmin/managedPolicyAttachment:ManagedPolicyAttachment example arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup,arn:aws:sso:::permissionSet/ssoins-2938j0x8920sbj72/ps-80383020jr9302rk,arn:aws:sso:::instance/ssoins-2938j0x8920sbj72\n```\n", + "description": "Provides an IAM managed policy for a Single Sign-On (SSO) Permission Set resource\n\n\u003e **NOTE:** Creating this resource will automatically [Provision the Permission Set](https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ProvisionPermissionSet.html) to apply the corresponding updates to all assigned accounts.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.ssoadmin.getInstances({});\nconst examplePermissionSet = new aws.ssoadmin.PermissionSet(\"example\", {\n name: \"Example\",\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n});\nconst exampleManagedPolicyAttachment = new aws.ssoadmin.ManagedPolicyAttachment(\"example\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n managedPolicyArn: \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permissionSetArn: examplePermissionSet.arn,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ssoadmin.get_instances()\nexample_permission_set = aws.ssoadmin.PermissionSet(\"example\",\n name=\"Example\",\n instance_arn=example.arns[0])\nexample_managed_policy_attachment = aws.ssoadmin.ManagedPolicyAttachment(\"example\",\n instance_arn=example.arns[0],\n managed_policy_arn=\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permission_set_arn=example_permission_set.arn)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.SsoAdmin.GetInstances.Invoke();\n\n var examplePermissionSet = new Aws.SsoAdmin.PermissionSet(\"example\", new()\n {\n Name = \"Example\",\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n });\n\n var exampleManagedPolicyAttachment = new Aws.SsoAdmin.ManagedPolicyAttachment(\"example\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n ManagedPolicyArn = \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n PermissionSetArn = examplePermissionSet.Arn,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssoadmin\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := ssoadmin.GetInstances(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePermissionSet, err := ssoadmin.NewPermissionSet(ctx, \"example\", \u0026ssoadmin.PermissionSetArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssoadmin.NewManagedPolicyAttachment(ctx, \"example\", \u0026ssoadmin.ManagedPolicyAttachmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tManagedPolicyArn: pulumi.String(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\"),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ssoadmin.SsoadminFunctions;\nimport com.pulumi.aws.ssoadmin.PermissionSet;\nimport com.pulumi.aws.ssoadmin.PermissionSetArgs;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachment;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachmentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = SsoadminFunctions.getInstances();\n\n var examplePermissionSet = new PermissionSet(\"examplePermissionSet\", PermissionSetArgs.builder()\n .name(\"Example\")\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .build());\n\n var exampleManagedPolicyAttachment = new ManagedPolicyAttachment(\"exampleManagedPolicyAttachment\", ManagedPolicyAttachmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .managedPolicyArn(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\")\n .permissionSetArn(examplePermissionSet.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePermissionSet:\n type: aws:ssoadmin:PermissionSet\n name: example\n properties:\n name: Example\n instanceArn: ${example.arns[0]}\n exampleManagedPolicyAttachment:\n type: aws:ssoadmin:ManagedPolicyAttachment\n name: example\n properties:\n instanceArn: ${example.arns[0]}\n managedPolicyArn: arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\n permissionSetArn: ${examplePermissionSet.arn}\nvariables:\n example:\n fn::invoke:\n function: aws:ssoadmin:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With Account Assignment\n\n\u003e Because destruction of a managed policy attachment resource also re-provisions the associated permission set to all accounts, explicitly indicating the dependency with the account assignment resource via the `depends_on` meta argument is necessary to ensure proper deletion order when these resources are used together.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.ssoadmin.getInstances({});\nconst examplePermissionSet = new aws.ssoadmin.PermissionSet(\"example\", {\n name: \"Example\",\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n});\nconst exampleGroup = new aws.identitystore.Group(\"example\", {\n identityStoreId: example.then(example =\u003e example.identityStoreIds?.[0]),\n displayName: \"Admin\",\n description: \"Admin Group\",\n});\nconst exampleAccountAssignment = new aws.ssoadmin.AccountAssignment(\"example\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n permissionSetArn: examplePermissionSet.arn,\n principalId: exampleGroup.groupId,\n principalType: \"GROUP\",\n targetId: \"123456789012\",\n targetType: \"AWS_ACCOUNT\",\n});\nconst exampleManagedPolicyAttachment = new aws.ssoadmin.ManagedPolicyAttachment(\"example\", {\n instanceArn: example.then(example =\u003e example.arns?.[0]),\n managedPolicyArn: \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permissionSetArn: examplePermissionSet.arn,\n}, {\n dependsOn: [exampleAccountAssignment],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ssoadmin.get_instances()\nexample_permission_set = aws.ssoadmin.PermissionSet(\"example\",\n name=\"Example\",\n instance_arn=example.arns[0])\nexample_group = aws.identitystore.Group(\"example\",\n identity_store_id=example.identity_store_ids[0],\n display_name=\"Admin\",\n description=\"Admin Group\")\nexample_account_assignment = aws.ssoadmin.AccountAssignment(\"example\",\n instance_arn=example.arns[0],\n permission_set_arn=example_permission_set.arn,\n principal_id=example_group.group_id,\n principal_type=\"GROUP\",\n target_id=\"123456789012\",\n target_type=\"AWS_ACCOUNT\")\nexample_managed_policy_attachment = aws.ssoadmin.ManagedPolicyAttachment(\"example\",\n instance_arn=example.arns[0],\n managed_policy_arn=\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n permission_set_arn=example_permission_set.arn,\n opts = pulumi.ResourceOptions(depends_on=[example_account_assignment]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.SsoAdmin.GetInstances.Invoke();\n\n var examplePermissionSet = new Aws.SsoAdmin.PermissionSet(\"example\", new()\n {\n Name = \"Example\",\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n });\n\n var exampleGroup = new Aws.IdentityStore.Group(\"example\", new()\n {\n IdentityStoreId = example.Apply(getInstancesResult =\u003e getInstancesResult.IdentityStoreIds[0]),\n DisplayName = \"Admin\",\n Description = \"Admin Group\",\n });\n\n var exampleAccountAssignment = new Aws.SsoAdmin.AccountAssignment(\"example\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n PermissionSetArn = examplePermissionSet.Arn,\n PrincipalId = exampleGroup.GroupId,\n PrincipalType = \"GROUP\",\n TargetId = \"123456789012\",\n TargetType = \"AWS_ACCOUNT\",\n });\n\n var exampleManagedPolicyAttachment = new Aws.SsoAdmin.ManagedPolicyAttachment(\"example\", new()\n {\n InstanceArn = example.Apply(getInstancesResult =\u003e getInstancesResult.Arns[0]),\n ManagedPolicyArn = \"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\",\n PermissionSetArn = examplePermissionSet.Arn,\n }, new CustomResourceOptions\n {\n DependsOn =\n {\n exampleAccountAssignment,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/identitystore\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ssoadmin\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := ssoadmin.GetInstances(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePermissionSet, err := ssoadmin.NewPermissionSet(ctx, \"example\", \u0026ssoadmin.PermissionSetArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGroup, err := identitystore.NewGroup(ctx, \"example\", \u0026identitystore.GroupArgs{\n\t\t\tIdentityStoreId: pulumi.String(example.IdentityStoreIds[0]),\n\t\t\tDisplayName: pulumi.String(\"Admin\"),\n\t\t\tDescription: pulumi.String(\"Admin Group\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccountAssignment, err := ssoadmin.NewAccountAssignment(ctx, \"example\", \u0026ssoadmin.AccountAssignmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\n\t\t\tPrincipalId: exampleGroup.GroupId,\n\t\t\tPrincipalType: pulumi.String(\"GROUP\"),\n\t\t\tTargetId: pulumi.String(\"123456789012\"),\n\t\t\tTargetType: pulumi.String(\"AWS_ACCOUNT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = ssoadmin.NewManagedPolicyAttachment(ctx, \"example\", \u0026ssoadmin.ManagedPolicyAttachmentArgs{\n\t\t\tInstanceArn: pulumi.String(example.Arns[0]),\n\t\t\tManagedPolicyArn: pulumi.String(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\"),\n\t\t\tPermissionSetArn: examplePermissionSet.Arn,\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\texampleAccountAssignment,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ssoadmin.SsoadminFunctions;\nimport com.pulumi.aws.ssoadmin.PermissionSet;\nimport com.pulumi.aws.ssoadmin.PermissionSetArgs;\nimport com.pulumi.aws.identitystore.Group;\nimport com.pulumi.aws.identitystore.GroupArgs;\nimport com.pulumi.aws.ssoadmin.AccountAssignment;\nimport com.pulumi.aws.ssoadmin.AccountAssignmentArgs;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachment;\nimport com.pulumi.aws.ssoadmin.ManagedPolicyAttachmentArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = SsoadminFunctions.getInstances();\n\n var examplePermissionSet = new PermissionSet(\"examplePermissionSet\", PermissionSetArgs.builder()\n .name(\"Example\")\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .build());\n\n var exampleGroup = new Group(\"exampleGroup\", GroupArgs.builder()\n .identityStoreId(example.applyValue(getInstancesResult -\u003e getInstancesResult.identityStoreIds()[0]))\n .displayName(\"Admin\")\n .description(\"Admin Group\")\n .build());\n\n var exampleAccountAssignment = new AccountAssignment(\"exampleAccountAssignment\", AccountAssignmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .permissionSetArn(examplePermissionSet.arn())\n .principalId(exampleGroup.groupId())\n .principalType(\"GROUP\")\n .targetId(\"123456789012\")\n .targetType(\"AWS_ACCOUNT\")\n .build());\n\n var exampleManagedPolicyAttachment = new ManagedPolicyAttachment(\"exampleManagedPolicyAttachment\", ManagedPolicyAttachmentArgs.builder()\n .instanceArn(example.applyValue(getInstancesResult -\u003e getInstancesResult.arns()[0]))\n .managedPolicyArn(\"arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\")\n .permissionSetArn(examplePermissionSet.arn())\n .build(), CustomResourceOptions.builder()\n .dependsOn(exampleAccountAssignment)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n examplePermissionSet:\n type: aws:ssoadmin:PermissionSet\n name: example\n properties:\n name: Example\n instanceArn: ${example.arns[0]}\n exampleGroup:\n type: aws:identitystore:Group\n name: example\n properties:\n identityStoreId: ${example.identityStoreIds[0]}\n displayName: Admin\n description: Admin Group\n exampleAccountAssignment:\n type: aws:ssoadmin:AccountAssignment\n name: example\n properties:\n instanceArn: ${example.arns[0]}\n permissionSetArn: ${examplePermissionSet.arn}\n principalId: ${exampleGroup.groupId}\n principalType: GROUP\n targetId: '123456789012'\n targetType: AWS_ACCOUNT\n exampleManagedPolicyAttachment:\n type: aws:ssoadmin:ManagedPolicyAttachment\n name: example\n properties:\n instanceArn: ${example.arns[0]}\n managedPolicyArn: arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup\n permissionSetArn: ${examplePermissionSet.arn}\n options:\n dependsOn:\n - ${exampleAccountAssignment}\nvariables:\n example:\n fn::invoke:\n function: aws:ssoadmin:getInstances\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import SSO Managed Policy Attachments using the `managed_policy_arn`, `permission_set_arn`, and `instance_arn` separated by a comma (`,`). For example:\n\n```sh\n$ pulumi import aws:ssoadmin/managedPolicyAttachment:ManagedPolicyAttachment example arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup,arn:aws:sso:::permissionSet/ssoins-2938j0x8920sbj72/ps-80383020jr9302rk,arn:aws:sso:::instance/ssoins-2938j0x8920sbj72\n```\n", "properties": { "instanceArn": { "type": "string", @@ -378935,6 +380416,173 @@ "type": "object" } }, + "aws:vpclattice/resourceGateway:ResourceGateway": { + "description": "Resource for managing an AWS VPC Lattice Resource Gateway.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.vpclattice.ResourceGateway(\"example\", {\n name: \"Example\",\n vpcId: exampleAwsVpc.id,\n subnetIds: [exampleAwsSubnet.id],\n tags: {\n Environment: \"Example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.vpclattice.ResourceGateway(\"example\",\n name=\"Example\",\n vpc_id=example_aws_vpc[\"id\"],\n subnet_ids=[example_aws_subnet[\"id\"]],\n tags={\n \"Environment\": \"Example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.VpcLattice.ResourceGateway(\"example\", new()\n {\n Name = \"Example\",\n VpcId = exampleAwsVpc.Id,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n Tags = \n {\n { \"Environment\", \"Example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vpclattice.NewResourceGateway(ctx, \"example\", \u0026vpclattice.ResourceGatewayArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tVpcId: pulumi.Any(exampleAwsVpc.Id),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Environment\": pulumi.String(\"Example\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.vpclattice.ResourceGateway;\nimport com.pulumi.aws.vpclattice.ResourceGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResourceGateway(\"example\", ResourceGatewayArgs.builder()\n .name(\"Example\")\n .vpcId(exampleAwsVpc.id())\n .subnetIds(exampleAwsSubnet.id())\n .tags(Map.of(\"Environment\", \"Example\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:vpclattice:ResourceGateway\n properties:\n name: Example\n vpcId: ${exampleAwsVpc.id}\n subnetIds:\n - ${exampleAwsSubnet.id}\n tags:\n Environment: Example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Specifying IP address type\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.vpclattice.ResourceGateway(\"example\", {\n name: \"Example\",\n vpcId: exampleAwsVpc.id,\n subnetIds: [exampleAwsSubnet.id],\n ipAddressType: \"DUALSTACK\",\n tags: {\n Environment: \"Example\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.vpclattice.ResourceGateway(\"example\",\n name=\"Example\",\n vpc_id=example_aws_vpc[\"id\"],\n subnet_ids=[example_aws_subnet[\"id\"]],\n ip_address_type=\"DUALSTACK\",\n tags={\n \"Environment\": \"Example\",\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.VpcLattice.ResourceGateway(\"example\", new()\n {\n Name = \"Example\",\n VpcId = exampleAwsVpc.Id,\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n IpAddressType = \"DUALSTACK\",\n Tags = \n {\n { \"Environment\", \"Example\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vpclattice.NewResourceGateway(ctx, \"example\", \u0026vpclattice.ResourceGatewayArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tVpcId: pulumi.Any(exampleAwsVpc.Id),\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\n\t\t\t},\n\t\t\tIpAddressType: pulumi.String(\"DUALSTACK\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Environment\": pulumi.String(\"Example\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.vpclattice.ResourceGateway;\nimport com.pulumi.aws.vpclattice.ResourceGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResourceGateway(\"example\", ResourceGatewayArgs.builder()\n .name(\"Example\")\n .vpcId(exampleAwsVpc.id())\n .subnetIds(exampleAwsSubnet.id())\n .ipAddressType(\"DUALSTACK\")\n .tags(Map.of(\"Environment\", \"Example\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:vpclattice:ResourceGateway\n properties:\n name: Example\n vpcId: ${exampleAwsVpc.id}\n subnetIds:\n - ${exampleAwsSubnet.id}\n ipAddressType: DUALSTACK\n tags:\n Environment: Example\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### With security groups\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = new aws.vpclattice.ResourceGateway(\"example\", {\n name: \"Example\",\n vpcId: exampleAwsVpc.id,\n securityGroupIds: [test.id],\n subnetIds: [exampleAwsSubnet.id],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.vpclattice.ResourceGateway(\"example\",\n name=\"Example\",\n vpc_id=example_aws_vpc[\"id\"],\n security_group_ids=[test[\"id\"]],\n subnet_ids=[example_aws_subnet[\"id\"]])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Aws.VpcLattice.ResourceGateway(\"example\", new()\n {\n Name = \"Example\",\n VpcId = exampleAwsVpc.Id,\n SecurityGroupIds = new[]\n {\n test.Id,\n },\n SubnetIds = new[]\n {\n exampleAwsSubnet.Id,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := vpclattice.NewResourceGateway(ctx, \"example\", \u0026vpclattice.ResourceGatewayArgs{\n\t\t\tName: pulumi.String(\"Example\"),\n\t\t\tVpcId: pulumi.Any(exampleAwsVpc.Id),\n\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\ttest.Id,\n\t\t\t},\n\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\texampleAwsSubnet.Id,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.vpclattice.ResourceGateway;\nimport com.pulumi.aws.vpclattice.ResourceGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var example = new ResourceGateway(\"example\", ResourceGatewayArgs.builder()\n .name(\"Example\")\n .vpcId(exampleAwsVpc.id())\n .securityGroupIds(test.id())\n .subnetIds(exampleAwsSubnet.id())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:vpclattice:ResourceGateway\n properties:\n name: Example\n vpcId: ${exampleAwsVpc.id}\n securityGroupIds:\n - ${test.id}\n subnetIds:\n - ${exampleAwsSubnet.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example:\n\n```sh\n$ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f\n```\n", + "properties": { + "arn": { + "type": "string", + "description": "ARN of the resource gateway.\n" + }, + "ipAddressType": { + "type": "string", + "description": "IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the resource gateway.\n" + }, + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Security group IDs associated with the resource gateway. The security groups must be in the same VPC.\n" + }, + "status": { + "type": "string", + "description": "Status of the resource gateway.\n" + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IDs of the VPC subnets in which to create the resource gateway.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + }, + "timeouts": { + "$ref": "#/types/aws:vpclattice/ResourceGatewayTimeouts:ResourceGatewayTimeouts" + }, + "vpcId": { + "type": "string", + "description": "ID of the VPC for the resource gateway.\n\nThe following arguments are optional:\n" + } + }, + "required": [ + "arn", + "ipAddressType", + "name", + "securityGroupIds", + "status", + "subnetIds", + "tagsAll", + "vpcId" + ], + "inputProperties": { + "ipAddressType": { + "type": "string", + "description": "IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the resource gateway.\n" + }, + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Security group IDs associated with the resource gateway. The security groups must be in the same VPC.\n" + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IDs of the VPC subnets in which to create the resource gateway.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "timeouts": { + "$ref": "#/types/aws:vpclattice/ResourceGatewayTimeouts:ResourceGatewayTimeouts" + }, + "vpcId": { + "type": "string", + "description": "ID of the VPC for the resource gateway.\n\nThe following arguments are optional:\n" + } + }, + "requiredInputs": [ + "subnetIds", + "vpcId" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering ResourceGateway resources.\n", + "properties": { + "arn": { + "type": "string", + "description": "ARN of the resource gateway.\n" + }, + "ipAddressType": { + "type": "string", + "description": "IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource.\n" + }, + "name": { + "type": "string", + "description": "Name of the resource gateway.\n" + }, + "securityGroupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Security group IDs associated with the resource gateway. The security groups must be in the same VPC.\n" + }, + "status": { + "type": "string", + "description": "Status of the resource gateway.\n" + }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IDs of the VPC subnets in which to create the resource gateway.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.\n" + }, + "tagsAll": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.\n", + "deprecationMessage": "Please use `tags` instead." + }, + "timeouts": { + "$ref": "#/types/aws:vpclattice/ResourceGatewayTimeouts:ResourceGatewayTimeouts" + }, + "vpcId": { + "type": "string", + "description": "ID of the VPC for the resource gateway.\n\nThe following arguments are optional:\n" + } + }, + "type": "object" + } + }, "aws:vpclattice/resourcePolicy:ResourcePolicy": { "description": "Resource for managing an AWS VPC Lattice Resource Policy.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst current = aws.getCallerIdentity({});\nconst currentGetPartition = aws.getPartition({});\nconst example = new aws.vpclattice.ServiceNetwork(\"example\", {name: \"example-vpclattice-service-network\"});\nconst exampleResourcePolicy = new aws.vpclattice.ResourcePolicy(\"example\", {\n resourceArn: example.arn,\n policy: pulumi.jsonStringify({\n Version: \"2012-10-17\",\n Statement: [{\n Sid: \"test-pol-principals-6\",\n Effect: \"Allow\",\n Principal: {\n AWS: Promise.all([currentGetPartition, current]).then(([currentGetPartition, current]) =\u003e `arn:${currentGetPartition.partition}:iam::${current.accountId}:root`),\n },\n Action: [\n \"vpc-lattice:CreateServiceNetworkVpcAssociation\",\n \"vpc-lattice:CreateServiceNetworkServiceAssociation\",\n \"vpc-lattice:GetServiceNetwork\",\n ],\n Resource: example.arn,\n }],\n }),\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_aws as aws\n\ncurrent = aws.get_caller_identity()\ncurrent_get_partition = aws.get_partition()\nexample = aws.vpclattice.ServiceNetwork(\"example\", name=\"example-vpclattice-service-network\")\nexample_resource_policy = aws.vpclattice.ResourcePolicy(\"example\",\n resource_arn=example.arn,\n policy=pulumi.Output.json_dumps({\n \"Version\": \"2012-10-17\",\n \"Statement\": [{\n \"Sid\": \"test-pol-principals-6\",\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"AWS\": f\"arn:{current_get_partition.partition}:iam::{current.account_id}:root\",\n },\n \"Action\": [\n \"vpc-lattice:CreateServiceNetworkVpcAssociation\",\n \"vpc-lattice:CreateServiceNetworkServiceAssociation\",\n \"vpc-lattice:GetServiceNetwork\",\n ],\n \"Resource\": example.arn,\n }],\n }))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Aws.GetCallerIdentity.Invoke();\n\n var currentGetPartition = Aws.GetPartition.Invoke();\n\n var example = new Aws.VpcLattice.ServiceNetwork(\"example\", new()\n {\n Name = \"example-vpclattice-service-network\",\n });\n\n var exampleResourcePolicy = new Aws.VpcLattice.ResourcePolicy(\"example\", new()\n {\n ResourceArn = example.Arn,\n Policy = Output.JsonSerialize(Output.Create(new Dictionary\u003cstring, object?\u003e\n {\n [\"Version\"] = \"2012-10-17\",\n [\"Statement\"] = new[]\n {\n new Dictionary\u003cstring, object?\u003e\n {\n [\"Sid\"] = \"test-pol-principals-6\",\n [\"Effect\"] = \"Allow\",\n [\"Principal\"] = new Dictionary\u003cstring, object?\u003e\n {\n [\"AWS\"] = Output.Tuple(currentGetPartition, current).Apply(values =\u003e\n {\n var currentGetPartition = values.Item1;\n var current = values.Item2;\n return $\"arn:{currentGetPartition.Apply(getPartitionResult =\u003e getPartitionResult.Partition)}:iam::{current.Apply(getCallerIdentityResult =\u003e getCallerIdentityResult.AccountId)}:root\";\n }),\n },\n [\"Action\"] = new[]\n {\n \"vpc-lattice:CreateServiceNetworkVpcAssociation\",\n \"vpc-lattice:CreateServiceNetworkServiceAssociation\",\n \"vpc-lattice:GetServiceNetwork\",\n },\n [\"Resource\"] = example.Arn,\n },\n },\n })),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws\"\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := aws.GetCallerIdentity(ctx, \u0026aws.GetCallerIdentityArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrentGetPartition, err := aws.GetPartition(ctx, \u0026aws.GetPartitionArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texample, err := vpclattice.NewServiceNetwork(ctx, \"example\", \u0026vpclattice.ServiceNetworkArgs{\n\t\t\tName: pulumi.String(\"example-vpclattice-service-network\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = vpclattice.NewResourcePolicy(ctx, \"example\", \u0026vpclattice.ResourcePolicyArgs{\n\t\t\tResourceArn: example.Arn,\n\t\t\tPolicy: example.Arn.ApplyT(func(arn string) (pulumi.String, error) {\n\t\t\t\tvar _zero pulumi.String\n\t\t\t\ttmpJSON0, err := json.Marshal(map[string]interface{}{\n\t\t\t\t\t\"Version\": \"2012-10-17\",\n\t\t\t\t\t\"Statement\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"Sid\": \"test-pol-principals-6\",\n\t\t\t\t\t\t\t\"Effect\": \"Allow\",\n\t\t\t\t\t\t\t\"Principal\": map[string]interface{}{\n\t\t\t\t\t\t\t\t\"AWS\": fmt.Sprintf(\"arn:%v:iam::%v:root\", currentGetPartition.Partition, current.AccountId),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"Action\": []string{\n\t\t\t\t\t\t\t\t\"vpc-lattice:CreateServiceNetworkVpcAssociation\",\n\t\t\t\t\t\t\t\t\"vpc-lattice:CreateServiceNetworkServiceAssociation\",\n\t\t\t\t\t\t\t\t\"vpc-lattice:GetServiceNetwork\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"Resource\": arn,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tif err != nil {\n\t\t\t\t\treturn _zero, err\n\t\t\t\t}\n\t\t\t\tjson0 := string(tmpJSON0)\n\t\t\t\treturn pulumi.String(json0), 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\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.AwsFunctions;\nimport com.pulumi.aws.inputs.GetCallerIdentityArgs;\nimport com.pulumi.aws.inputs.GetPartitionArgs;\nimport com.pulumi.aws.vpclattice.ServiceNetwork;\nimport com.pulumi.aws.vpclattice.ServiceNetworkArgs;\nimport com.pulumi.aws.vpclattice.ResourcePolicy;\nimport com.pulumi.aws.vpclattice.ResourcePolicyArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = AwsFunctions.getCallerIdentity();\n\n final var currentGetPartition = AwsFunctions.getPartition();\n\n var example = new ServiceNetwork(\"example\", ServiceNetworkArgs.builder()\n .name(\"example-vpclattice-service-network\")\n .build());\n\n var exampleResourcePolicy = new ResourcePolicy(\"exampleResourcePolicy\", ResourcePolicyArgs.builder()\n .resourceArn(example.arn())\n .policy(example.arn().applyValue(arn -\u003e serializeJson(\n jsonObject(\n jsonProperty(\"Version\", \"2012-10-17\"),\n jsonProperty(\"Statement\", jsonArray(jsonObject(\n jsonProperty(\"Sid\", \"test-pol-principals-6\"),\n jsonProperty(\"Effect\", \"Allow\"),\n jsonProperty(\"Principal\", jsonObject(\n jsonProperty(\"AWS\", String.format(\"arn:%s:iam::%s:root\", currentGetPartition.applyValue(getPartitionResult -\u003e getPartitionResult.partition()),current.applyValue(getCallerIdentityResult -\u003e getCallerIdentityResult.accountId())))\n )),\n jsonProperty(\"Action\", jsonArray(\n \"vpc-lattice:CreateServiceNetworkVpcAssociation\", \n \"vpc-lattice:CreateServiceNetworkServiceAssociation\", \n \"vpc-lattice:GetServiceNetwork\"\n )),\n jsonProperty(\"Resource\", arn)\n )))\n ))))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:vpclattice:ServiceNetwork\n properties:\n name: example-vpclattice-service-network\n exampleResourcePolicy:\n type: aws:vpclattice:ResourcePolicy\n name: example\n properties:\n resourceArn: ${example.arn}\n policy:\n fn::toJSON:\n Version: 2012-10-17\n Statement:\n - Sid: test-pol-principals-6\n Effect: Allow\n Principal:\n AWS: arn:${currentGetPartition.partition}:iam::${current.accountId}:root\n Action:\n - vpc-lattice:CreateServiceNetworkVpcAssociation\n - vpc-lattice:CreateServiceNetworkServiceAssociation\n - vpc-lattice:GetServiceNetwork\n Resource: ${example.arn}\nvariables:\n current:\n fn::invoke:\n function: aws:getCallerIdentity\n arguments: {}\n currentGetPartition:\n fn::invoke:\n function: aws:getPartition\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import VPC Lattice Resource Policy using the `resource_arn`. For example:\n\n```sh\n$ pulumi import aws:vpclattice/resourcePolicy:ResourcePolicy example rft-8012925589\n```\n", "properties": { @@ -389706,6 +391354,43 @@ "type": "object" } }, + "aws:cloudwatch/getEventBuses:getEventBuses": { + "description": "Data source for managing an AWS EventBridge Event Buses.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.cloudwatch.getEventBuses({\n namePrefix: \"test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.cloudwatch.get_event_buses(name_prefix=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.CloudWatch.GetEventBuses.Invoke(new()\n {\n NamePrefix = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.GetEventBuses(ctx, \u0026cloudwatch.GetEventBusesArgs{\n\t\t\tNamePrefix: pulumi.StringRef(\"test\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.CloudwatchFunctions;\nimport com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()\n .namePrefix(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n function: aws:cloudwatch:getEventBuses\n arguments:\n namePrefix: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getEventBuses.\n", + "properties": { + "namePrefix": { + "type": "string", + "description": "Specifying this limits the results to only those event buses with names that start with the specified prefix.\n" + } + }, + "type": "object" + }, + "outputs": { + "description": "A collection of values returned by getEventBuses.\n", + "properties": { + "eventBuses": { + "description": "This list of event buses.\n", + "items": { + "$ref": "#/types/aws:cloudwatch/getEventBusesEventBus:getEventBusesEventBus" + }, + "type": "array" + }, + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" + }, + "namePrefix": { + "type": "string" + } + }, + "required": [ + "eventBuses", + "id" + ], + "type": "object" + } + }, "aws:cloudwatch/getEventConnection:getEventConnection": { "description": "Use this data source to retrieve information about an EventBridge connection.\n\n\u003e **Note:** EventBridge was formerly known as CloudWatch Events. The functionality is identical.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst test = aws.cloudwatch.getEventConnection({\n name: \"test\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest = aws.cloudwatch.get_event_connection(name=\"test\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Aws.CloudWatch.GetEventConnection.Invoke(new()\n {\n Name = \"test\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := cloudwatch.LookupEventConnection(ctx, \u0026cloudwatch.LookupEventConnectionArgs{\n\t\t\tName: \"test\",\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.cloudwatch.CloudwatchFunctions;\nimport com.pulumi.aws.cloudwatch.inputs.GetEventConnectionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = CloudwatchFunctions.getEventConnection(GetEventConnectionArgs.builder()\n .name(\"test\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n test:\n fn::invoke:\n function: aws:cloudwatch:getEventConnection\n arguments:\n name: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { @@ -390142,6 +391827,13 @@ "description": "Number of machines allocated to the fleet.\n", "type": "integer" }, + "computeConfigurations": { + "description": "Compute configuration of the compute fleet.\n", + "items": { + "$ref": "#/types/aws:codebuild/getFleetComputeConfiguration:getFleetComputeConfiguration" + }, + "type": "array" + }, "computeType": { "description": "Compute resources the compute fleet uses.\n", "type": "string" @@ -390209,6 +391901,7 @@ "required": [ "arn", "baseCapacity", + "computeConfigurations", "computeType", "created", "environmentType", @@ -400290,6 +401983,13 @@ "type": "string", "description": "Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws.\u003cregion\u003e.\u003cservice\u003e` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker.\u003cregion\u003e.notebook`).\n" }, + "serviceRegions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "AWS regions in which to look for services.\n" + }, "serviceType": { "type": "string", "description": "Service type, `Gateway` or `Interface`.\n" @@ -400316,7 +402016,7 @@ "type": "string" }, "availabilityZones": { - "description": "Availability Zones in which the service is available.\n", + "description": "Availability Zones in which the service is available. Not available for endpoint services in other regions.\n", "items": { "type": "string" }, @@ -400358,6 +402058,10 @@ }, "type": "array" }, + "region": { + "description": "Region of the endpoint service.\n", + "type": "string" + }, "service": { "type": "string" }, @@ -400368,6 +402072,12 @@ "serviceName": { "type": "string" }, + "serviceRegions": { + "items": { + "type": "string" + }, + "type": "array" + }, "serviceType": { "type": "string" }, @@ -400399,6 +402109,7 @@ "owner", "privateDnsName", "privateDnsNames", + "region", "serviceId", "serviceName", "serviceType", @@ -403264,6 +404975,30 @@ "type": "object" } }, + "aws:ecs/getClusters:getClusters": { + "description": "Data source for managing an AWS ECS (Elastic Container) Clusters.\n\n## Example Usage\n\n### Basic Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.ecs.getClusters({});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.ecs.get_clusters()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.Ecs.GetClusters.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.GetClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ecs.EcsFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = EcsFunctions.getClusters();\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n function: aws:ecs:getClusters\n arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "outputs": { + "description": "A collection of values returned by getClusters.\n", + "properties": { + "clusterArns": { + "description": "List of ECS cluster ARNs associated with the account.\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" + } + }, + "required": [ + "clusterArns", + "id" + ], + "type": "object" + } + }, "aws:ecs/getContainerDefinition:getContainerDefinition": { "description": "The ECS container definition data source allows access to details of\na specific container within an AWS ECS service.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst ecs-mongo = aws.ecs.getContainerDefinition({\n taskDefinition: mongo.id,\n containerName: \"mongodb\",\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\necs_mongo = aws.ecs.get_container_definition(task_definition=mongo[\"id\"],\n container_name=\"mongodb\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var ecs_mongo = Aws.Ecs.GetContainerDefinition.Invoke(new()\n {\n TaskDefinition = mongo.Id,\n ContainerName = \"mongodb\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := ecs.GetContainerDefinition(ctx, \u0026ecs.GetContainerDefinitionArgs{\n\t\t\tTaskDefinition: mongo.Id,\n\t\t\tContainerName: \"mongodb\",\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.ecs.EcsFunctions;\nimport com.pulumi.aws.ecs.inputs.GetContainerDefinitionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var ecs-mongo = EcsFunctions.getContainerDefinition(GetContainerDefinitionArgs.builder()\n .taskDefinition(mongo.id())\n .containerName(\"mongodb\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n ecs-mongo:\n fn::invoke:\n function: aws:ecs:getContainerDefinition\n arguments:\n taskDefinition: ${mongo.id}\n containerName: mongodb\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { @@ -420262,6 +421997,10 @@ "inputs": { "description": "A collection of arguments for invoking getCertificate.\n", "properties": { + "defaultForNewLaunches": { + "type": "boolean", + "description": "When enabled, returns the default certificate for new RDS instances.\n" + }, "id": { "type": "string", "description": "Certificate identifier. For example, `rds-ca-2019`.\n" @@ -420292,6 +422031,9 @@ "description": "If there is an override for the default certificate identifier, when the override expires.\n", "type": "string" }, + "defaultForNewLaunches": { + "type": "boolean" + }, "id": { "type": "string" }, @@ -420925,14 +422667,26 @@ }, "type": "array" }, + "supportsCertificateRotationWithoutRestart": { + "description": "Whether the certificates can be rotated without restarting the Aurora instance.\n", + "type": "boolean" + }, "supportsGlobalDatabases": { "description": "Whether you can use Aurora global databases with the engine version.\n", "type": "boolean" }, + "supportsIntegrations": { + "description": "Whether the engine version supports integrations with other AWS services.\n", + "type": "boolean" + }, "supportsLimitlessDatabase": { "description": "Whether the engine version supports Aurora Limitless Database.\n", "type": "boolean" }, + "supportsLocalWriteForwarding": { + "description": "Whether the engine version supports local write forwarding or not.\n", + "type": "boolean" + }, "supportsLogExportsToCloudwatch": { "description": "Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs.\n", "type": "boolean" @@ -420989,8 +422743,11 @@ "supportedFeatureNames", "supportedModes", "supportedTimezones", + "supportsCertificateRotationWithoutRestart", "supportsGlobalDatabases", + "supportsIntegrations", "supportsLimitlessDatabase", + "supportsLocalWriteForwarding", "supportsLogExportsToCloudwatch", "supportsParallelQuery", "supportsReadReplica", @@ -423213,6 +424970,54 @@ "type": "object" } }, + "aws:route53/getRecords:getRecords": { + "description": "Use this data source to get the details of resource records in a Route 53 hosted zone.\n\n## Example Usage\n\n### Basic Usage\n\nReturn all records in the zone.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst selected = aws.route53.getZone({\n name: \"test.com.\",\n privateZone: true,\n});\nconst example = selected.then(selected =\u003e aws.route53.getRecords({\n zoneId: selected.zoneId,\n}));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nselected = aws.route53.get_zone(name=\"test.com.\",\n private_zone=True)\nexample = aws.route53.get_records(zone_id=selected.zone_id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var selected = Aws.Route53.GetZone.Invoke(new()\n {\n Name = \"test.com.\",\n PrivateZone = true,\n });\n\n var example = Aws.Route53.GetRecords.Invoke(new()\n {\n ZoneId = selected.Apply(getZoneResult =\u003e getZoneResult.ZoneId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tselected, err := route53.LookupZone(ctx, \u0026route53.LookupZoneArgs{\n\t\t\tName: pulumi.StringRef(\"test.com.\"),\n\t\t\tPrivateZone: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.GetRecords(ctx, \u0026route53.GetRecordsArgs{\n\t\t\tZoneId: selected.ZoneId,\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Route53Functions;\nimport com.pulumi.aws.route53.inputs.GetZoneArgs;\nimport com.pulumi.aws.route53.inputs.GetRecordsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var selected = Route53Functions.getZone(GetZoneArgs.builder()\n .name(\"test.com.\")\n .privateZone(true)\n .build());\n\n final var example = Route53Functions.getRecords(GetRecordsArgs.builder()\n .zoneId(selected.applyValue(getZoneResult -\u003e getZoneResult.zoneId()))\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n selected:\n fn::invoke:\n function: aws:route53:getZone\n arguments:\n name: test.com.\n privateZone: true\n example:\n fn::invoke:\n function: aws:route53:getRecords\n arguments:\n zoneId: ${selected.zoneId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Basic Usage with filter\n\nReturn the records that starts with `www`.\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst selected = aws.route53.getZone({\n name: \"test.com.\",\n privateZone: true,\n});\nconst example = selected.then(selected =\u003e aws.route53.getRecords({\n zoneId: selected.zoneId,\n nameRegex: \"^www\",\n}));\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nselected = aws.route53.get_zone(name=\"test.com.\",\n private_zone=True)\nexample = aws.route53.get_records(zone_id=selected.zone_id,\n name_regex=\"^www\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var selected = Aws.Route53.GetZone.Invoke(new()\n {\n Name = \"test.com.\",\n PrivateZone = true,\n });\n\n var example = Aws.Route53.GetRecords.Invoke(new()\n {\n ZoneId = selected.Apply(getZoneResult =\u003e getZoneResult.ZoneId),\n NameRegex = \"^www\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tselected, err := route53.LookupZone(ctx, \u0026route53.LookupZoneArgs{\n\t\t\tName: pulumi.StringRef(\"test.com.\"),\n\t\t\tPrivateZone: pulumi.BoolRef(true),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = route53.GetRecords(ctx, \u0026route53.GetRecordsArgs{\n\t\t\tZoneId: selected.ZoneId,\n\t\t\tNameRegex: pulumi.StringRef(\"^www\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Route53Functions;\nimport com.pulumi.aws.route53.inputs.GetZoneArgs;\nimport com.pulumi.aws.route53.inputs.GetRecordsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var selected = Route53Functions.getZone(GetZoneArgs.builder()\n .name(\"test.com.\")\n .privateZone(true)\n .build());\n\n final var example = Route53Functions.getRecords(GetRecordsArgs.builder()\n .zoneId(selected.applyValue(getZoneResult -\u003e getZoneResult.zoneId()))\n .nameRegex(\"^www\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n selected:\n fn::invoke:\n function: aws:route53:getZone\n arguments:\n name: test.com.\n privateZone: true\n example:\n fn::invoke:\n function: aws:route53:getRecords\n arguments:\n zoneId: ${selected.zoneId}\n nameRegex: ^www\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", + "inputs": { + "description": "A collection of arguments for invoking getRecords.\n", + "properties": { + "nameRegex": { + "type": "string", + "description": "Regex string to apply to the resource record names returned by AWS.\n" + }, + "zoneId": { + "type": "string", + "description": "The ID of the hosted zone that contains the resource record sets that you want to list.\n" + } + }, + "type": "object", + "required": [ + "zoneId" + ] + }, + "outputs": { + "description": "A collection of values returned by getRecords.\n", + "properties": { + "id": { + "description": "The provider-assigned unique ID for this managed resource.\n", + "type": "string" + }, + "nameRegex": { + "type": "string" + }, + "resourceRecordSets": { + "description": "The resource records sets.\n", + "items": { + "$ref": "#/types/aws:route53/getRecordsResourceRecordSet:getRecordsResourceRecordSet" + }, + "type": "array" + }, + "zoneId": { + "type": "string" + } + }, + "required": [ + "resourceRecordSets", + "zoneId", + "id" + ], + "type": "object" + } + }, "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## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.route53.getResolverEndpoint({\n resolverEndpointId: \"rslvr-in-1abc2345ef678g91h\",\n});\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 System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.Route53.GetResolverEndpoint.Invoke(new()\n {\n ResolverEndpointId = \"rslvr-in-1abc2345ef678g91h\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.LookupResolverEndpoint(ctx, \u0026route53.LookupResolverEndpointArgs{\n\t\t\tResolverEndpointId: pulumi.StringRef(\"rslvr-in-1abc2345ef678g91h\"),\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Route53Functions;\nimport com.pulumi.aws.route53.inputs.GetResolverEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = Route53Functions.getResolverEndpoint(GetResolverEndpointArgs.builder()\n .resolverEndpointId(\"rslvr-in-1abc2345ef678g91h\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n function: aws:route53:getResolverEndpoint\n arguments:\n resolverEndpointId: rslvr-in-1abc2345ef678g91h\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst example = aws.route53.getResolverEndpoint({\n filters: [{\n name: \"NAME\",\n values: [\"MyResolverExampleName\"],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.route53.get_resolver_endpoint(filters=[{\n \"name\": \"NAME\",\n \"values\": [\"MyResolverExampleName\"],\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = Aws.Route53.GetResolverEndpoint.Invoke(new()\n {\n Filters = new[]\n {\n new Aws.Route53.Inputs.GetResolverEndpointFilterInputArgs\n {\n Name = \"NAME\",\n Values = new[]\n {\n \"MyResolverExampleName\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := route53.LookupResolverEndpoint(ctx, \u0026route53.LookupResolverEndpointArgs{\n\t\t\tFilters: []route53.GetResolverEndpointFilter{\n\t\t\t\t{\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```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.route53.Route53Functions;\nimport com.pulumi.aws.route53.inputs.GetResolverEndpointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var example = Route53Functions.getResolverEndpoint(GetResolverEndpointArgs.builder()\n .filters(GetResolverEndpointFilterArgs.builder()\n .name(\"NAME\")\n .values(\"MyResolverExampleName\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n example:\n fn::invoke:\n function: aws:route53:getResolverEndpoint\n arguments:\n filters:\n - name: NAME\n values:\n - MyResolverExampleName\n```\n\u003c!--End PulumiCodeChooser --\u003e\n", "inputs": { @@ -428163,7 +429968,7 @@ "description": "A collection of values returned by getReplicationSet.\n", "properties": { "arn": { - "description": "The Amazon Resouce Name (ARN) of the replication set.\n", + "description": "The Amazon Resource Name (ARN) of the replication set.\n", "type": "string" }, "createdBy": { diff --git a/provider/go.mod b/provider/go.mod index 9163c069063..7217c7a7530 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -8,10 +8,10 @@ go 1.23.3 godebug tlskyber=0 require ( - github.com/aws/aws-sdk-go-v2/config v1.28.6 - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21 - github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1 - github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59 + github.com/aws/aws-sdk-go-v2/config v1.28.8 + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22 + github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3 + github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60 github.com/hashicorp/terraform-plugin-sdk/v2 v2.35.0 github.com/hashicorp/terraform-provider-aws v1.60.1-0.20220923175450-ca71523cdc36 github.com/mitchellh/go-homedir v1.1.0 @@ -48,7 +48,7 @@ require ( github.com/Masterminds/semver/v3 v3.3.1 // indirect github.com/Masterminds/sprig/v3 v3.3.0 // indirect github.com/Microsoft/go-winio v0.6.1 // indirect - github.com/ProtonMail/go-crypto v1.1.3 // indirect + github.com/ProtonMail/go-crypto v1.1.4 // indirect github.com/YakDriver/go-version v0.1.0 // indirect github.com/YakDriver/regexache v0.24.0 // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect @@ -58,266 +58,266 @@ require ( github.com/armon/go-radix v1.0.0 // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aws/aws-sdk-go v1.55.5 // indirect - github.com/aws/aws-sdk-go-v2 v1.32.6 // indirect + github.com/aws/aws-sdk-go-v2 v1.32.7 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.47 // indirect - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.49 // indirect + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25 // indirect - github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2 // indirect - github.com/aws/aws-sdk-go-v2/service/account v1.22.0 // indirect - github.com/aws/aws-sdk-go-v2/service/acm v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8 // indirect - github.com/aws/aws-sdk-go-v2/service/amp v1.30.4 // indirect - github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1 // indirect - github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1 // indirect - github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5 // indirect - github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2 // indirect - github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7 // indirect - github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2 // indirect - github.com/aws/aws-sdk-go-v2/service/athena v1.49.1 // indirect - github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7 // indirect - github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1 // indirect - github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/backup v1.40.0 // indirect - github.com/aws/aws-sdk-go-v2/service/batch v1.49.0 // indirect - github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7 // indirect - github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1 // indirect - github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0 // indirect - github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1 // indirect - github.com/aws/aws-sdk-go-v2/service/chime v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2 // indirect - github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3 // indirect - github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0 // indirect - github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1 // indirect - github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7 // indirect - github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1 // indirect - github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1 // indirect - github.com/aws/aws-sdk-go-v2/service/connect v1.122.0 // indirect - github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1 // indirect - github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1 // indirect - github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5 // indirect - github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/dax v1.23.7 // indirect - github.com/aws/aws-sdk-go-v2/service/detective v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1 // indirect - github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8 // indirect - github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6 // indirect - github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4 // indirect - github.com/aws/aws-sdk-go-v2/service/drs v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0 // indirect - github.com/aws/aws-sdk-go-v2/service/efs v1.34.1 // indirect - github.com/aws/aws-sdk-go-v2/service/eks v1.54.0 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6 // indirect - github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/emr v1.47.1 // indirect - github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8 // indirect - github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0 // indirect - github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0 // indirect - github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7 // indirect - github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2 // indirect - github.com/aws/aws-sdk-go-v2/service/fis v1.31.2 // indirect - github.com/aws/aws-sdk-go-v2/service/fms v1.38.5 // indirect - github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0 // indirect - github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2 // indirect - github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/glue v1.104.0 // indirect - github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1 // indirect - github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/iam v1.38.2 // indirect - github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0 // indirect - github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26 // indirect + github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4 // indirect + github.com/aws/aws-sdk-go-v2/service/account v1.22.1 // indirect + github.com/aws/aws-sdk-go-v2/service/acm v1.30.9 // indirect + github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9 // indirect + github.com/aws/aws-sdk-go-v2/service/amp v1.30.5 // indirect + github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3 // indirect + github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9 // indirect + github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3 // indirect + github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8 // indirect + github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6 // indirect + github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3 // indirect + github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0 // indirect + github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0 // indirect + github.com/aws/aws-sdk-go-v2/service/athena v1.49.2 // indirect + github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8 // indirect + github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3 // indirect + github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/backup v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/batch v1.49.2 // indirect + github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8 // indirect + github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0 // indirect + github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2 // indirect + github.com/aws/aws-sdk-go-v2/service/chime v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3 // indirect + github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4 // indirect + github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1 // indirect + github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3 // indirect + github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9 // indirect + github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2 // indirect + github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3 // indirect + github.com/aws/aws-sdk-go-v2/service/connect v1.123.1 // indirect + github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2 // indirect + github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0 // indirect + github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2 // indirect + github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8 // indirect + github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6 // indirect + github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2 // indirect + github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/dax v1.23.8 // indirect + github.com/aws/aws-sdk-go-v2/service/detective v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3 // indirect + github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9 // indirect + github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5 // indirect + github.com/aws/aws-sdk-go-v2/service/drs v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3 // indirect + github.com/aws/aws-sdk-go-v2/service/efs v1.34.2 // indirect + github.com/aws/aws-sdk-go-v2/service/eks v1.56.1 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9 // indirect + github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/emr v1.47.3 // indirect + github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9 // indirect + github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1 // indirect + github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2 // indirect + github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8 // indirect + github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3 // indirect + github.com/aws/aws-sdk-go-v2/service/fis v1.31.3 // indirect + github.com/aws/aws-sdk-go-v2/service/fms v1.38.6 // indirect + github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2 // indirect + github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0 // indirect + github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/glue v1.105.0 // indirect + github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2 // indirect + github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/iam v1.38.3 // indirect + github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0 // indirect + github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6 // indirect - github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3 // indirect - github.com/aws/aws-sdk-go-v2/service/iot v1.62.0 // indirect - github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2 // indirect - github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8 // indirect - github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/kms v1.37.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1 // indirect - github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1 // indirect - github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7 // indirect - github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7 // indirect - github.com/aws/aws-sdk-go-v2/service/location v1.42.7 // indirect - github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7 // indirect - github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0 // indirect - github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1 // indirect - github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1 // indirect - github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/mq v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2 // indirect - github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6 // indirect - github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1 // indirect - github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5 // indirect - github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2 // indirect - github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7 // indirect - github.com/aws/aws-sdk-go-v2/service/oam v1.15.7 // indirect - github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0 // indirect - github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4 // indirect - github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1 // indirect - github.com/aws/aws-sdk-go-v2/service/osis v1.14.7 // indirect - github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2 // indirect - github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7 // indirect - github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8 // indirect - github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2 // indirect - github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5 // indirect - github.com/aws/aws-sdk-go-v2/service/polly v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0 // indirect - github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ram v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1 // indirect - github.com/aws/aws-sdk-go-v2/service/rds v1.93.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4 // indirect - github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0 // indirect - github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8 // indirect - github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0 // indirect - github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2 // indirect - github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7 // indirect - github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3 // indirect - github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0 // indirect - github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2 // indirect - github.com/aws/aws-sdk-go-v2/service/rum v1.21.7 // indirect - github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0 // indirect - github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0 // indirect - github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7 // indirect - github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0 // indirect - github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8 // indirect - github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8 // indirect - github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5 // indirect - github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7 // indirect - github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0 // indirect - github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ses v1.29.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1 // indirect - github.com/aws/aws-sdk-go-v2/service/shield v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/signer v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sns v1.33.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2 // indirect - github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.24.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6 // indirect - github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.33.2 // indirect - github.com/aws/aws-sdk-go-v2/service/swf v1.27.8 // indirect - github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0 // indirect - github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8 // indirect - github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7 // indirect - github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0 // indirect - github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3 // indirect - github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2 // indirect - github.com/aws/aws-sdk-go-v2/service/waf v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7 // indirect - github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6 // indirect - github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7 // indirect + github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5 // indirect + github.com/aws/aws-sdk-go-v2/service/iot v1.62.1 // indirect + github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1 // indirect + github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8 // indirect + github.com/aws/aws-sdk-go-v2/service/kms v1.37.9 // indirect + github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2 // indirect + github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3 // indirect + github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8 // indirect + github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8 // indirect + github.com/aws/aws-sdk-go-v2/service/location v1.42.9 // indirect + github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8 // indirect + github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1 // indirect + github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0 // indirect + github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0 // indirect + github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0 // indirect + github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2 // indirect + github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/mq v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3 // indirect + github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8 // indirect + github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2 // indirect + github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7 // indirect + github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3 // indirect + github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8 // indirect + github.com/aws/aws-sdk-go-v2/service/oam v1.15.9 // indirect + github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2 // indirect + github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5 // indirect + github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0 // indirect + github.com/aws/aws-sdk-go-v2/service/osis v1.14.8 // indirect + github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0 // indirect + github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8 // indirect + github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9 // indirect + github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3 // indirect + github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6 // indirect + github.com/aws/aws-sdk-go-v2/service/polly v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2 // indirect + github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ram v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4 // indirect + github.com/aws/aws-sdk-go-v2/service/rds v1.93.3 // indirect + github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2 // indirect + github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5 // indirect + github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9 // indirect + github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1 // indirect + github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3 // indirect + github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9 // indirect + github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9 // indirect + github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0 // indirect + github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2 // indirect + github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4 // indirect + github.com/aws/aws-sdk-go-v2/service/rum v1.21.8 // indirect + github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1 // indirect + github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2 // indirect + github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8 // indirect + github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0 // indirect + github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9 // indirect + github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9 // indirect + github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9 // indirect + github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2 // indirect + github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6 // indirect + github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8 // indirect + github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2 // indirect + github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9 // indirect + github.com/aws/aws-sdk-go-v2/service/ses v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3 // indirect + github.com/aws/aws-sdk-go-v2/service/shield v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/signer v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/sns v1.33.9 // indirect + github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5 // indirect + github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2 // indirect + github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.24.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7 // indirect + github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.33.4 // indirect + github.com/aws/aws-sdk-go-v2/service/swf v1.27.10 // indirect + github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2 // indirect + github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9 // indirect + github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8 // indirect + github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1 // indirect + github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4 // indirect + github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3 // indirect + github.com/aws/aws-sdk-go-v2/service/waf v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8 // indirect + github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7 // indirect + github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8 // indirect github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2 // indirect - github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3 // indirect - github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1 // indirect - github.com/aws/aws-sdk-go-v2/service/xray v1.30.1 // indirect + github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0 // indirect + github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2 // indirect + github.com/aws/aws-sdk-go-v2/service/xray v1.30.3 // indirect github.com/aws/smithy-go v1.22.1 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/beevik/etree v1.4.1 // indirect @@ -358,8 +358,8 @@ require ( github.com/googleapis/gax-go/v2 v2.12.2 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0 // indirect - github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60 // indirect - github.com/hashicorp/awspolicyequivalence v1.6.0 // indirect + github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61 // indirect + github.com/hashicorp/awspolicyequivalence v1.7.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect @@ -440,7 +440,7 @@ require ( github.com/pulumi/schema-tools v0.1.2 // indirect github.com/pulumi/terraform-diff-reader v0.0.2 // indirect github.com/rivo/uniseg v0.4.4 // indirect - github.com/rogpeppe/go-internal v1.12.0 // indirect + github.com/rogpeppe/go-internal v1.13.1 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect @@ -468,24 +468,25 @@ require ( github.com/yuin/goldmark v1.7.4 // indirect github.com/zclconf/go-cty v1.15.1 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect - go.opentelemetry.io/otel v1.32.0 // indirect - go.opentelemetry.io/otel/metric v1.32.0 // indirect - go.opentelemetry.io/otel/trace v1.32.0 // indirect + go.opentelemetry.io/otel v1.33.0 // indirect + go.opentelemetry.io/otel/metric v1.33.0 // indirect + go.opentelemetry.io/otel/trace v1.33.0 // indirect go.uber.org/atomic v1.9.0 // indirect - golang.org/x/crypto v0.31.0 // indirect + golang.org/x/crypto v0.32.0 // indirect golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/mod v0.22.0 // indirect - golang.org/x/net v0.33.0 // indirect + golang.org/x/net v0.34.0 // indirect golang.org/x/oauth2 v0.23.0 // indirect golang.org/x/sync v0.10.0 // indirect - golang.org/x/sys v0.28.0 // indirect - golang.org/x/term v0.27.0 // indirect + golang.org/x/sys v0.29.0 // indirect + golang.org/x/term v0.28.0 // indirect golang.org/x/text v0.21.0 // indirect golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.28.0 // indirect + golang.org/x/tools v0.29.0 // indirect google.golang.org/api v0.169.0 // indirect google.golang.org/appengine v1.6.8 // indirect google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 // indirect @@ -494,7 +495,6 @@ require ( google.golang.org/grpc v1.68.1 // indirect google.golang.org/protobuf v1.35.2 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect ) diff --git a/provider/go.sum b/provider/go.sum index 3cda031d544..1182d2e091e 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1189,8 +1189,8 @@ github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5 github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= -github.com/ProtonMail/go-crypto v1.1.3 h1:nRBOetoydLeUb4nHajyO2bKqMLfWQ/ZPwkXqXxPxCFk= -github.com/ProtonMail/go-crypto v1.1.3/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/ProtonMail/go-crypto v1.1.4 h1:G5U5asvD5N/6/36oIw3k2bOfBn5XVcZrb7PBjzzKKoE= +github.com/ProtonMail/go-crypto v1.1.4/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= github.com/YakDriver/go-version v0.1.0 h1:/x+Xg2+l89Mjtxl0VRf2+ue8cnHkw6jfYv49j6f7gZw= github.com/YakDriver/go-version v0.1.0/go.mod h1:LXwFAp1E3KBhS7FHO/FE8r3XCmvKizs/VXXXFWfoSYY= github.com/YakDriver/regexache v0.24.0 h1:zUKaixelkswzdqsqPc2sveiV//Mi/msJn0teG8zBDiA= @@ -1236,532 +1236,532 @@ github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU= github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU= -github.com/aws/aws-sdk-go-v2 v1.32.6 h1:7BokKRgRPuGmKkFMhEg/jSul+tB9VvXhcViILtfG8b4= -github.com/aws/aws-sdk-go-v2 v1.32.6/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= +github.com/aws/aws-sdk-go-v2 v1.32.7 h1:ky5o35oENWi0JYWUZkB7WYvVPP+bcRF5/Iq7JWSb5Rw= +github.com/aws/aws-sdk-go-v2 v1.32.7/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 h1:lL7IfaFzngfx0ZwUGOZdsFFnQ5uLvR0hWqqhyE7Q9M8= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7/go.mod h1:QraP0UcVlQJsmHfioCrveWOC1nbiWUl3ej08h4mXWoc= -github.com/aws/aws-sdk-go-v2/config v1.28.6 h1:D89IKtGrs/I3QXOLNTH93NJYtDhm8SYa9Q5CsPShmyo= -github.com/aws/aws-sdk-go-v2/config v1.28.6/go.mod h1:GDzxJ5wyyFSCoLkS+UhGB0dArhb9mI+Co4dHtoTxbko= -github.com/aws/aws-sdk-go-v2/credentials v1.17.47 h1:48bA+3/fCdi2yAwVt+3COvmatZ6jUDNkDTIsqDiMUdw= -github.com/aws/aws-sdk-go-v2/credentials v1.17.47/go.mod h1:+KdckOejLW3Ks3b0E3b5rHsr2f9yuORBum0WPnE5o5w= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21 h1:AmoU1pziydclFT/xRV+xXE/Vb8fttJCLRPv8oAkprc0= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.21/go.mod h1:AjUdLYe4Tgs6kpH4Bv7uMZo7pottoyHMn4eTcIcneaY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43 h1:iLdpkYZ4cXIQMO7ud+cqMWR1xK5ESbt1rvN77tRi1BY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.43/go.mod h1:OgbsKPAswXDd5kxnR4vZov69p3oYjbvUyIRBAAV0y9o= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25 h1:s/fF4+yDQDoElYhfIVvSNyeCydfbuTKzhxSXDXCPasU= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.25/go.mod h1:IgPfDv5jqFIzQSNbUEMoitNooSMXjRSDkhXv8jiROvU= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25 h1:ZntTCl5EsYnhN/IygQEUugpdwbhdkom9uHcbCftiGgA= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.25/go.mod h1:DBdPrgeocww+CSl1C8cEV8PN1mHMBhuCDLpXezyvWkE= +github.com/aws/aws-sdk-go-v2/config v1.28.8 h1:4nUeC9TsZoHm9GHlQ5tnoIklNZgISXXVGPKP5/CS0fk= +github.com/aws/aws-sdk-go-v2/config v1.28.8/go.mod h1:2C+fhFxnx1ymomFjj5NBUc/vbjyIUR7mZ/iNRhhb7BU= +github.com/aws/aws-sdk-go-v2/credentials v1.17.49 h1:+7u6eC8K6LLGQwWMYKHSsHAPQl+CGACQmnzd/EPMW0k= +github.com/aws/aws-sdk-go-v2/credentials v1.17.49/go.mod h1:0SgZcTAEIlKoYw9g+kuYUwbtUUVjfxnR03YkCOhMbQ0= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22 h1:kqOrpojG71DxJm/KDPO+Z/y1phm1JlC8/iT+5XRmAn8= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.22/go.mod h1:NtSFajXVVL8TA2QNngagVZmUtXciyrHOt7xgz4faS/M= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46 h1:03ylK6hyAhB9E6U2kWcBi9EIORe8vJGox1fi9DQ7tRQ= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.46/go.mod h1:XIZKyo7DYSsFXsFdrwRAYc3b1bHZpX2boIxXuJw9OS8= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26 h1:I/5wmGMffY4happ8NOCuIUEWGUvvFp5NSeQcXl9RHcI= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.26/go.mod h1:FR8f4turZtNy6baO0KJ5FJUmXH/cSkI9fOngs0yl6mA= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26 h1:zXFLuEuMMUOvEARXFUVJdfqZ4bvvSgdGRq/ATcrQxzM= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.26/go.mod h1:3o2Wpy0bogG1kyOPrgkXA8pgIfEEv0+m19O9D5+W8y8= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25 h1:r67ps7oHCYnflpgDy2LZU0MAQtQbYIOqNNnqGO6xQkE= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.25/go.mod h1:GrGY+Q4fIokYLtjCVB/aFfCVL6hhGUFl8inD18fDalE= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2 h1:9WvCTutkgDExBamb9UZQ94oiCjJwXUhhtoBH3NIs0Iw= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.2/go.mod h1:9QmJU2Zam+wUZe8etjM4VY9NlC0WeMFLIvtUIOIko4U= -github.com/aws/aws-sdk-go-v2/service/account v1.22.0 h1:Fg/uyf0CCBKLAStzIhYZcIXyVI1BaTJjoPPuuOMdyrk= -github.com/aws/aws-sdk-go-v2/service/account v1.22.0/go.mod h1:/OutbIU/lpaxPpjAeKIE6lOfy9bPOZi1xMzSllMubKw= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.7 h1:rv8PVsnReslpDVVByyuX4LzfA7j0+Jcj6Gili1dBEd0= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.7/go.mod h1:ns7D5/uAekEaVLAIzzNrxVz/CsBCCwNfSdi46PEaGhI= -github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8 h1:qcx0XpDUjTkwp89kt15m1iKorZ1BK1uzXFTT+1NvU0A= -github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.8/go.mod h1:T44GdsVnipn1kFnmZbVqLhDNtl9rrWVBmjsuPIrRQzY= -github.com/aws/aws-sdk-go-v2/service/amp v1.30.4 h1:0ya3FPNzwsGD93yx7ag3l5sD6Kelb8qghRAUgRfB5G8= -github.com/aws/aws-sdk-go-v2/service/amp v1.30.4/go.mod h1:e3oL6s7I4YUSaRCpz4gSp1ujDmi+f0CwMbDjlRsad40= -github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0 h1:1swpQaAKSbCkjnx3e0Jl7zmbi5M+k8Gr/aSjo45uLFY= -github.com/aws/aws-sdk-go-v2/service/amplify v1.28.0/go.mod h1:2wrh0ye46s6rA3L1TKkvu4MEADM54tvnxcMkXVL4z5c= -github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1 h1:XBVNkd4B5uGC6RgJ+/4x/ZUuk7/6f/hQ8cvGRSxltBI= -github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.1/go.mod h1:4cynmnoMmeiroN7OvI8upcQbvJ3Rfzd3j5hOthYKQnk= -github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7 h1:sDijLs7HLzhvxPWxODryESj4gMA8A8seQWhaUVZaPlE= -github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.7/go.mod h1:5AN33eZ7xq2pxsvMJGgXmQA30PQGHOGOaHZf8Q7AaFw= -github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1 h1:I8nQw87FkrIlGbeXx3O7yFpn6a1wmcdEzDd3U6lCacM= -github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.1/go.mod h1:pTisi6AYAEJXJpYnghBsl52D0U2Xu8/ZxnCsN5g8Fz0= -github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7 h1:rktzRP9bRlkjb9g5ndMnS6x8tUgc/rrrXyCCn3qHe4s= -github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.7/go.mod h1:7UgJlroQG4RN5Klt8zwbZFvfGGV8zWvgf3BH+iJoRfY= -github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8 h1:C4Ahu+vqQMgwcKfOaxdUgn0Tmz/yKl5lrk/Y9aGhRsc= -github.com/aws/aws-sdk-go-v2/service/appflow v1.45.8/go.mod h1:m9n55ulVW0oYNVhczguWuVkoaWky0znzYCn1Is2Q4l0= -github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7 h1:LrYSdKQMAAJs8XpSfNba7Goc0m0hOEGWoNvrOWFasEw= -github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.7/go.mod h1:GiSlb1fm4OJ1foTOhXcDziKm2Xre4+bcG8AnQAhjUIM= -github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2 h1:2ikMzzun3sqemZqT96Q2I9ofTWEbFbEx9B1GLBMJmzk= -github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.2/go.mod h1:2mMP2R86zLPAUz0TpJdsKW8XawHgs9Nk97fYJomO3o8= -github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5 h1:dxVAH0LY3XmilHw4O4eB+kYKTu3SqujSYQlyKA6PqkM= -github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.5/go.mod h1:A+d2JfMEfDdWWMz3OfbK0IKtWjqoLaKlHt3ifC9pd04= -github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2 h1:QL9Ak3hh3POYTr/DgOe4pn0naYOnARZ9Gy9/uIzW+Oo= -github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.2/go.mod h1:a+yECc5pms9wxGPwIKHOhnmDWcHJqAUmTIZR76IhMaA= -github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7 h1:sycevRiEU3w7mUO+aVCAFgQw7VxXmzGj+13evW/l+Hk= -github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.7/go.mod h1:7/hVyfkxKjfuBu0Z+Ggh9n9VWNEkxPVFagCJZZYGV0U= -github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7 h1:VlcGnZMtvyxACAPxWPPyWBIRmaqQ62vyf/dTWKyHC84= -github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.7/go.mod h1:/lor1ybmbMZb2It700RSirZR8uIXzt6/EVv9b9qX3r0= -github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7 h1:9KTwRIeh67p4JjOtkAiUQ6Qbzui3igoFyCFGudRR9BY= -github.com/aws/aws-sdk-go-v2/service/appstream v1.41.7/go.mod h1:YC50kSYeBhmjzeJKNf4CB85KN9Gdy+RKhtt4MvMx4ro= -github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2 h1:NGExoL+9wUDfrQqX6xZavPb93IjFrKLG2b3r+suCfVY= -github.com/aws/aws-sdk-go-v2/service/appsync v1.40.2/go.mod h1:YN/LhOApnQGAgb4AljjHkcpl+OmaLrkD6cGPL1dkajI= -github.com/aws/aws-sdk-go-v2/service/athena v1.49.1 h1:BASu7+dZA5YsB8r32SGoC+tPtRmd6pp5OOY0UMRQq6c= -github.com/aws/aws-sdk-go-v2/service/athena v1.49.1/go.mod h1:27ljwDsnZvfrZKsLzWD4WFjI4OZutEFIjvVtYfj9gHc= -github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7 h1:THLQzF9JZZthlhdf8i+rDCqO8K7sk2xmsgl/by0/4B4= -github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.7/go.mod h1:UZOdtpOTwIj4yHbPVNxfayWIlQp4c3Xht/7sDaFzZs0= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1 h1:XFZsqNpwwi/D8nFI/tdUQn1QW1BTVcuQH382RNUXojE= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.1/go.mod h1:r+eOyjSMo2zY+j6zEEaHjb7nU74oyva1r2/wFqDkPg4= -github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7 h1:7zci6q+hPs522cfe75lHUw9LnJ/Ha6eeE977IpBiRwg= -github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.7/go.mod h1:J/X0cqccGAPGPtWCWi5Juw2sSkmUN7mKnBKbbyyjzwc= -github.com/aws/aws-sdk-go-v2/service/backup v1.40.0 h1:Fg0AZko1ZNgP1dhc2DdWWSHZpD0eCZ/dauSccQYwvsY= -github.com/aws/aws-sdk-go-v2/service/backup v1.40.0/go.mod h1:YgtsGOZJNjMAnSov/HRVspxzEUjjszZi3qXo90gzNU8= -github.com/aws/aws-sdk-go-v2/service/batch v1.49.0 h1:ew1qgtLddHOgV2yuzG0oV8srXYf4+L0hotZvhhpNK64= -github.com/aws/aws-sdk-go-v2/service/batch v1.49.0/go.mod h1:5pxmENM3nBEAr2XrSs6c89Iwl6wAJk0/pkyFd3Gmav0= -github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7 h1:zrQ6zDzE5ohrLEpwaXGoF0PoBiSBo0oW6uW72iyF0ic= -github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.7/go.mod h1:J+Zv3ekV1h3RyqVlxi1hCliEuI1SwugGAnmiOfwzNco= -github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1 h1:zMEJeGsIuYpjO4Osdll4EdOemC01Fx1nmXOAjJzALLs= -github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.1/go.mod h1:BKSewSMuaeUidKqXArDlT06PWK/PP3wsgLWTXKeKgQw= -github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0 h1:hnoHWrcuFtnhPcg0Cx0HtWsXcQGZe01Y0OqssMIBy9o= -github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.32.0/go.mod h1:d+BIleA83BNMLQbwc1gYB/Kgrogwl4lzn2RN+XPIC0s= -github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0 h1:j8c+43fhvHwhKLoNuVKByx2JMMknnInSvfES9iYhMXY= -github.com/aws/aws-sdk-go-v2/service/budgets v1.29.0/go.mod h1:jhUXdAWAOIKQReti3jcD8zaDjyayYBAuhmijh8+rYrk= -github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1 h1:g+Xnw4sHm/T5xDTlNvPBeM6gAAQSzj7EwOI0vBXscSE= -github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.1/go.mod h1:lpKKa8zv8/MTIHRh1JB24Y+R/RXLE6BWxnFCQ/b0W2M= -github.com/aws/aws-sdk-go-v2/service/chime v1.34.7 h1:iHBLzHxZF2vRCQzm9fKp7yA6X2nnUzqeVF3TY60tqhQ= -github.com/aws/aws-sdk-go-v2/service/chime v1.34.7/go.mod h1:NFTd15WIZy1RPTOSZEsWalWG7PuteqwXLfcy/YQocY4= -github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2 h1:r4NLm/DDTGnpo2MMXIv/yox2ckrm1xugN41SH/gBrIQ= -github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.2/go.mod h1:NVs+MoGw0vt6s6g0hulXyy9IMRxTlfPrsral5630V9E= -github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0 h1:IwQ9oL4a8ZhJq/tgfPd5r17wxe7V9Sa6JhhwfCkS0D0= -github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.0/go.mod h1:U8vcvSwicq+2VDdkPTP8UYn5IV8YFWPPi8CoMI786w8= -github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0 h1:XlyfMge7JCGYR9wJoihE0aSx1mmlDdmeDg8l/SmCXPQ= -github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.0/go.mod h1:F/4OPOJP5yt+EsQXiOyMq1CkV00LZImdgoHdRWd0nQA= -github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8 h1:sXmoUPtWluI9ONDMfs7/0qC10bgSE/I+xschdBItNeY= -github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.8/go.mod h1:l1sYjOTxY/lcqFT56ruW2YoC1k2in//ko50kBxwpYII= -github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2 h1:xUD/6aoYwDsMmVl6J6Umkgk+QlkzDm1N0w2BukgXTMI= -github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.2/go.mod h1:NQSFnuiS7N4Leys2Mx/N0UMIWkMsXHBs3HEI4ElCSV8= -github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1 h1:EqRhsrEoXFFyzcNuqQCF1g9rG9EA8K2EiUj6/eWClgk= -github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.1/go.mod h1:75rrfzgrN4Ol0m9Xo4+8S09KBoGAd1t6eafFHMt5wDI= -github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0 h1:zYk75ljFsvA6PgmbkMVy5b3M/arUF7EY3kHJz7LDaDk= -github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.0/go.mod h1:fXHLupAMPNGhRAW7e2kS0aoDY/KsQ9GHu80GSK70cRs= -github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7 h1:+7Ru1G2Y17qgRiUAcBxc9enlf0TxustitfBqonrWcBc= -github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.7/go.mod h1:Di9EQnngIp8gHvxf+GkB14uEbC5UcSxsNOOnSWMsfjQ= -github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0 h1:HdUkTXcE1thauOhDGMHjNppUvbygtVj4e80gI3zXJxg= -github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.28.0/go.mod h1:l9Gu/zoAKx1ww1ZtRlSj8qP80AV742bDP337N5NkY3o= -github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6 h1:m1CAIBZzVi05OAocQs7SzY3gLsGGNBmg+qpHA7HQteU= -github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.6/go.mod h1:4ogUNAMmF9rtIYGYnFm21WXc/8+lcAuoNYUkS534MfI= -github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3 h1:DfrEQMWCfk0wkuv/r0zwcGoykCuYWCLoGolbax6O3sw= -github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.3/go.mod h1:WcTfALKgqv+VCMRCLtG4155sAwcfdYhFADc/yDJgSlc= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3 h1:nQLG9irjDGUFXVPDHzjCGEEwh0hZ6BcxTvHOod1YsP4= -github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.3/go.mod h1:URs8sqsyaxiAZkKP6tOEmhcs9j2ynFIomqOKY/CAHJc= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0 h1:j9rGKWaYglZpf9KbJCQVM/L85Y4UdGMgK80A1OddR24= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.0/go.mod h1:LZafBHU62ByizrdhNLMnzWGsUX+abAW4q35PN+FOj+A= -github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7 h1:5us9BU1TnHeSqgQEiQCH9qpDbwGEtYAz6fhSL0jiAyA= -github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.7/go.mod h1:k6IbvJ+UeAR3ueA7so+YwS+sPoHa99ECNQvbtwt/pxk= -github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3 h1:p8f+OrPZ9NHMKGFbQ0PZlXTe72Nm5afbDhormEUGg8Q= -github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.3/go.mod h1:dOgg7MoOJYIvQkUkZRrKuO/3YdAbO3+fIJlICyDc3dc= -github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7 h1:FgYA/R4VzjeXwimhbQGJhuyaxV/ORz1LVXUkn4t++Nw= -github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.7/go.mod h1:1V3pxyJ9hgz8HDju0oDV7lY+pzM/rERREZh7Kd6W3Yo= -github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7 h1:8IZ97GQsCxQ3n0yQ+0QAMMtt2YpOeig6W5Q+hIBCfjE= -github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.7/go.mod h1:7thXvCQtqWJhO9u+40n1lA89PhEA7069UVxShNyL5N0= -github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7 h1:j2T2/23Cyo+5cOl8iXOL9Tau780sXBriOhWw/N4ex20= -github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.7/go.mod h1:GmV2UoFy3kQRz44DlCYZUu7/m1tT8K+6TGtqkBQWxHY= -github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7 h1:WPhY1/OCDi8AteUyBZj7zvVczNZ4O6T5/HtSxBWh3nE= -github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.7/go.mod h1:0Xfzxc16U/0QopHTRY6P7MapMxHqd8RkJOt27ryEV+g= -github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7 h1:5FCm30+pN7ZXwLohD5e2ec/rGPeuTz7l5cCFMFZfVwY= -github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.7/go.mod h1:miiswEyJjWFb8lIQgqA067DXBnq5mmTk2eIgKkhg9Yg= -github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7 h1:x7Wiwow6bm0ICkR9akuYUkzfdpZrDx5wvkY64hZ0nT8= -github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.7/go.mod h1:91nPYuyG0FyzUG6sKqXqU6wJyeysU/9H/ug+tbQR1jc= -github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0 h1:oYEy8cOgXMEN8tNNnH9tOmEGaATZkMVZZBT+kiDyx24= -github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.0/go.mod h1:fLGjNeyN4aduz+LrpWje0ufvfadQnwZof389MwTeFtI= -github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7 h1:5bDPXYGWnZ9nY/N7tY9cSO4hMadCFvZqDwRIs/4ik7w= -github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.7/go.mod h1:K9YY4T95yT7BVqHvDjSo8h9yxftqPvWYDFfuCxtHF/g= -github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7 h1:12UdLytB/DylaodJgGl0CUBT7Zz2xRskdlrHst29JVE= -github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.7/go.mod h1:yDbe8Oh55gPuNdJzsv3CFbHV7d5wvUoLkFhql0p+y1U= -github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8 h1:mgVSYWMnSZ6QTeCd84IXaxvw0cgAMxq4R6Weo9vejzU= -github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.8/go.mod h1:eVAaMRWHgjdGuTJCjlmcwYleskahesLPrGFV4MpQYvA= -github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1 h1:qMJk1I55avN/vN+51rPdE0dLgkhWrlU6Cw0Wg34eQvM= -github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.1/go.mod h1:U+GnB0KkXI5SgVMzW2J1FHMGbAiObr1XaIGZSMejLlI= -github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7 h1:z6WD4P7bvSJNlmNVDsfNP/e5o0Zmbz9oM2wOgFWCHRA= -github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.7/go.mod h1:M+Z8mhHoSWbr3Q1V8ZaINLLj0p1WGYWjCv/kO4IgUVw= -github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1 h1:iH/z1Q7WYbT2MoTkEIMvR32Ip+FFRuD74EKXUqYLP+k= -github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.1/go.mod h1:Epb43KiHofSehPHq6PEQZ07hcl/Euv4vUi7kEcC7J7I= -github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1 h1:zA4KArT5FZ4ypJc8X+7MJNN3iv74K8ygmFhci64M4YI= -github.com/aws/aws-sdk-go-v2/service/configservice v1.51.1/go.mod h1:2fOznUkaoZ2EtJimN0zizQRxQmkndSJz/SSd2x0goKo= -github.com/aws/aws-sdk-go-v2/service/connect v1.122.0 h1:O6uOzf10vuwomHSEnUg1h2a4Gl16FDTAC5ZG/oPYgCw= -github.com/aws/aws-sdk-go-v2/service/connect v1.122.0/go.mod h1:tuGtOUYMxcOObTcKDHKpzTG9EvjfXjOIEC74a6meGRk= -github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7 h1:uWiDzkr4L/KMlftI2OqmELmsv0ZGxeyi3YAo266wJzs= -github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.7/go.mod h1:/FZ+YQmJpAdZPR4Z1tA1mIxA/SmLmUlgrn3sZOAmnfQ= -github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1 h1:fpqsKm/4mA+oOn2IM62syUhcVZMU3Gc7tl8HTd4Ul+k= -github.com/aws/aws-sdk-go-v2/service/controltower v1.20.1/go.mod h1:zVh69cAM8AHhBlu/eP9OSBCRbojNw++iEHx0+wgBojI= -github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7 h1:8iIE0CQ6ZWC11vSLJf+M4gPgaiP+qxQ3haPV7KhGZTE= -github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.7/go.mod h1:guVPkA6zDaG1wnh0Od9xyPb/6lUijf2zaHi4tTxW8Do= -github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1 h1:2aaEZa6CBfsEebfn3jxwnIDGbSAwZnqIsEC5KF89X2w= -github.com/aws/aws-sdk-go-v2/service/costexplorer v1.45.1/go.mod h1:RboWadEsqV6Hw/OOyyu8IP+kdz0DASutt3H4ezBxSIk= -github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1 h1:r1LakPxgYvob4eOY0rTjgYuahwFhVgx0txkSHpnyxFw= -github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.1/go.mod h1:agAlqygpDyX9paflw12sVF0sGGzAk6Ed5plVQgOqJRk= -github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0 h1:Wkf9S+n02aTZ8pQsp+nBRRVFdodbHG7V5HWqwYQWm/Q= -github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.0/go.mod h1:yresrCHgaNcKcF7cLJ6emqK9eb05B1Ik2KvDMLbncU8= -github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0 h1:Bz6/i8CbYodfvX5Efsp0i9+3CG7+312M7HoOnzn7cRA= -github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.0/go.mod h1:4O6knGhxKpEu9ILt1+PGSN/LVWzLa4hdyUdPfjgFTao= -github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7 h1:kaYiuNxHzwDMwsqM766yy0cp8ZVldOTwJhOeR0MINU8= -github.com/aws/aws-sdk-go-v2/service/databrew v1.33.7/go.mod h1:Gu2mR/aUZzdmnNORl8GbAN6xDsPO/t9KNG+B99SNMIk= -github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5 h1:X62garDt07bE4Ojd+qO6MTlyMC/wYPw6Sg0QkSfNgXs= -github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.5/go.mod h1:UJZLGoXBQs6AukctWkOWimAQh6wloVGq6LOTyg/ALJs= -github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7 h1:b2xXuJ5Yh5RuyOzs3vdBamLXVK5DIM5l819/pCxbC/M= -github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.7/go.mod h1:IH2WIe0ol0aDtM5a/+nP6UYRwrDXi/gwF+DA0nJK+i8= -github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0 h1:qCjwlzJJikstQVKrbu/dMpZbhtqlTLawr6zSLRVvRyY= -github.com/aws/aws-sdk-go-v2/service/datasync v1.44.0/go.mod h1:ty1/xBfWRiv/C+e/cbTLkM4UGMfkOavUgp3daLZ2QKc= -github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0 h1:L1IGMQ1T1eZtJLDA4n0SgTYFaHeJ7OJYqy00+JrEGoY= -github.com/aws/aws-sdk-go-v2/service/datazone v1.25.0/go.mod h1:2MCAq6PXnLOI6NVaUES50GGvOl1pa5l6N2XmRAVWWWw= -github.com/aws/aws-sdk-go-v2/service/dax v1.23.7 h1:hZg1sHhWXGZShzHGpwcaOT8HZfx26kkbRDNZgZda4xI= -github.com/aws/aws-sdk-go-v2/service/dax v1.23.7/go.mod h1:fYBjETTq8hZfirBEgXM1xIMy+tvCGYZTeWpjeKKp0bU= -github.com/aws/aws-sdk-go-v2/service/detective v1.31.7 h1:Pw3K9Leqg7SfEoPZek374z1pTJXSKbbS+zbGolMCsWI= -github.com/aws/aws-sdk-go-v2/service/detective v1.31.7/go.mod h1:ngskhJvBbS6oSmoGYyX6gzcoumPw+W5KIzbMVNBd8lQ= -github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7 h1:oXxzZJw5Jc5rrbnSBYjC5EfQ3cik+ZzdjHIZYPQ2SeA= -github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.7/go.mod h1:RmmJpAmMnDSzrKzi29jEcnhy9d4xfjRJ368FEnhvCiE= -github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7 h1:WrbyPtKCsyt0UcHzoF/5Kof6O3b4JkZgx5pAFrAe3Ps= -github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.7/go.mod h1:/pcwN9rb3n1thi1++LLQik7v48pXo7mcgh4baY5giPA= -github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1 h1:U2VtqwmOzP7sZYWmrnapl3j3KLxIntWyK0RU3uGBIPk= -github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.1/go.mod h1:IVHMPfXzPHdq2JuZmnyreo2Dhhlu84Vel/tochYKgh8= -github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8 h1:o3yUhrImWkJuI42DyTJu7REWf1+EUNlwfmLpo2yXzb0= -github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.8/go.mod h1:CxYqXrb08ko/psMpQ692AcEFXCuB+sVuWA2OZPB32t0= -github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0 h1:urPakVfaxgWE5VA6RVPF0DQPpe5JrJFcpsrQWDgUq6s= -github.com/aws/aws-sdk-go-v2/service/dlm v1.29.0/go.mod h1:SBPSK/ycAG4ET3JblaBP2Xt52RjNcg827EFgqN8W7AY= -github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6 h1:N2iwdECLOQuClhv3XdTgGSY75N7QHF5nDekPGoFpRyY= -github.com/aws/aws-sdk-go-v2/service/docdb v1.39.6/go.mod h1:pa9tid/NTUDjayagl5El0KVg9IiV3hJEKVxFmvyc+J8= -github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4 h1:pT1NLJ04YA/05ZEbYBNhminfsbKBvHDlOh8ScoMZybA= -github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.4/go.mod h1:ZupWmXwSQwiyktsk0/7C71pCkTn7dLgOw47TmpvtU1Q= -github.com/aws/aws-sdk-go-v2/service/drs v1.30.7 h1:0jUZJqidFnPF9LlSSsYD9yQcbIYLyNKjGa+gFPh9UlA= -github.com/aws/aws-sdk-go-v2/service/drs v1.30.7/go.mod h1:myL1h4VGyN3HU1B/7WBs2MsjKYX3FugwPJ09muIM8tE= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0 h1:isKhHsjpQR3CypQJ4G1g8QWx7zNpiC/xKw1zjgJYVno= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.38.0/go.mod h1:xDvUyIkwBwNtVZJdHEwAuhFly3mezwdEWkbJ5oNYwIw= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0 h1:ivPJXmGlzAjgy0jLO9naExUWE8IM8lLRcRKLPBEx6Q0= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.0/go.mod h1:00zqVNJFK6UASrTnuvjJHJuaqUdkVz5tW8Ip+VhzuNg= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7 h1:R+5XKIJga2K9Dkj0/iQ6fD/MBGo02oxGGFTc512lK/Q= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.7/go.mod h1:fDPQV/6ONOQOjvtKhtypIy1wcGLcKYtoK/lvZ9fyDGQ= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7 h1:eddAe+FnCCLECUKHUHLM9/iAlqDkyRjZk/84+eo0ToE= -github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.27.7/go.mod h1:lik3qEJ4TBnQrEKoZnFh8E8nn5oZSebnB/pydq8oQRQ= -github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0 h1:TCQZX4ztlcWXAcZouKh9qJMcVaH/qTidFTfsvJwUI30= -github.com/aws/aws-sdk-go-v2/service/ecs v1.53.0/go.mod h1:Ghi1OWUv4+VMEULWiHsKH2gNA3KAcMoLWsvU0eRXvIA= -github.com/aws/aws-sdk-go-v2/service/efs v1.34.1 h1:y2BaF/VBEQM5Gi27ZOX1jSKRQLNifOfvegkqKKDPNEM= -github.com/aws/aws-sdk-go-v2/service/efs v1.34.1/go.mod h1:0c/j249PCFk5d/KHJsBIoCVdnZa9Or71J/fqC/n63BA= -github.com/aws/aws-sdk-go-v2/service/eks v1.54.0 h1:78/Za9/4c5boz78pcKvJV4WfzVHcFwebpfAUzS6XYUg= -github.com/aws/aws-sdk-go-v2/service/eks v1.54.0/go.mod h1:ZzOjZXGGUQxOq+T3xmfPLKCZe4OaB5vm1LdGaC8IPn4= -github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1 h1:Dch9DIcyrHf6OTEhgzz7wIFKrHZAWfcZ1BCAlZtwpYo= -github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.1/go.mod h1:gzplo968xB24VkeHC4wKfDbSERguKL2xKPL1Csd/mH4= -github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7 h1:ieY1UqWTqjb83Rx1KiUO2pxFRdebobkKxHKDXIlIMhM= -github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.7/go.mod h1:U47A7lAuy5QYMD7lnRHA8WJCzV/W0POLZrUfjZ7HLro= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6 h1:uQFPQNvc9hIaF7SyHQyg2vRtTcWONaa1LUUy+8LEzT8= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.6/go.mod h1:KkaWcwL6GJtS/TNn1+fVJPAR+6G7Bs7kEm8E3MlgbhQ= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1 h1:L9Wt9zgtoYKIlaeFTy+EztGjL4oaXBBGtVXA+jaeYko= -github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.1/go.mod h1:yxzLdxt7bVGvIOPYIKFtiaJCJnx2ChlIIvlhW4QgI6M= -github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7 h1:LEo0xkW2yM3qVp8awRVG1lp1o/eR2o0CSR4h9CpB3us= -github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.7/go.mod h1:cMruo7iPDprwYjl8CruF4+ht8gZnMJ8nmbVtgEEBu8M= -github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7 h1:46x9DdOeOXKRKsDuwX22aHWg1Ow/32jkYyETzh/1zPQ= -github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.7/go.mod h1:sjP2fl/DXY5A/zWjkC414jwK5HXbydQ/ClUFIIzyNQA= -github.com/aws/aws-sdk-go-v2/service/emr v1.47.1 h1:7vjckLqynZflJB13FUfp1oWOvmAhkHFlA6WsnWSOcj0= -github.com/aws/aws-sdk-go-v2/service/emr v1.47.1/go.mod h1:Bae8t4Qt9r5jnngv9coFhXIHvFBCzlplxsqzm2pOLTs= -github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8 h1:tr2CAqQqNsOQqlQTNFJ0HW4o4A/era9mnq/9UnnVZng= -github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.8/go.mod h1:BAo50mn0HxLW1w5N96Y3KluxU//eaQkpQv2O0LLPsw4= -github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0 h1:505TF4yWD2kbKrjKW5+QtrAb7Ow2AdkWRkvhhUG8lk8= -github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.0/go.mod h1:HAlr1TP57Lswg9mwg+5SyoeDRMMj98chLBn9BRq/SmE= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0 h1:UBCwgevYbPDbPb8LKyCmyBJ0Lk/gCPq4v85rZLe3vr4= -github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.0/go.mod h1:ve9wzd6ToYjkZrF0nesNJxy14kU77QjrH5Rixrr4NJY= -github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7 h1:Y4KQFc4uXRZRUS0c8zauTd0t0vAMvQrAS06DqwyvWMg= -github.com/aws/aws-sdk-go-v2/service/evidently v1.23.7/go.mod h1:uvzDzbyHPk9ZoALbM6K0Yz+XiZuGHwHPNGXUdggdDu0= -github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7 h1:4Figzs7CIQI08uPe8YDsECkDOJuR9N8eMz2Y8pccxc4= -github.com/aws/aws-sdk-go-v2/service/finspace v1.28.7/go.mod h1:a+RGo9o5n5Ts8kCQadDaq8Py9r6upMOFTzd5LV1xB2M= -github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2 h1:A4rkZ/YpyzoU8f8LMe1rPXEvkzX5R/vdAxDwN6IGegs= -github.com/aws/aws-sdk-go-v2/service/firehose v1.35.2/go.mod h1:3Iza1sNaP9L+uKzhE08ilDSz8Dbu2tOL8e5exyj0etE= -github.com/aws/aws-sdk-go-v2/service/fis v1.31.2 h1:sgNhe7x7r4SffGdtbZteb0AHqCmw5ZHDIiyMCEl6BWs= -github.com/aws/aws-sdk-go-v2/service/fis v1.31.2/go.mod h1:MDGBuQGY9Y4zvv6Bi5tDF4Am+D7fRCvk+nUVndGr0l0= -github.com/aws/aws-sdk-go-v2/service/fms v1.38.5 h1:y41UPvSB231dfhAikN9xB2OSEGi8wdJgu7YvOHIT9IY= -github.com/aws/aws-sdk-go-v2/service/fms v1.38.5/go.mod h1:XnzEACT9GzGF0eSbBbkupYA74UtnF2b4mQN6In289KA= -github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0 h1:n4ifwCx29MYkKBnojL/dkV1BzG5IJubsG4Z9A/bZB30= -github.com/aws/aws-sdk-go-v2/service/fsx v1.51.0/go.mod h1:5q7w7rvT828zgFuEod4Ijbw/yJ4Tn4vOPSSxbRT7Lws= -github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2 h1:OzCZubJlSiTU7ht4kGi+g5/RWjoutYyBYWPPaw6Mi5c= -github.com/aws/aws-sdk-go-v2/service/gamelift v1.37.2/go.mod h1:MOsRBRZZKsukJ3FetfsrX+QXgLd9k0q1wwIxJrh5qu0= -github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7 h1:YTg3h8OBu4x3UCsu9vKz9VHqkfJQpY1fpwXye6GeoMQ= -github.com/aws/aws-sdk-go-v2/service/glacier v1.26.7/go.mod h1:w/cFjxbAVqNeAMQf31PI9KopvcFYoXdv0oG2Y9wU0uA= -github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7 h1:TB66P1ES3DvjeR7YNTfO4/4ncB2MiFx0jzazbPisWkw= -github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.7/go.mod h1:geddg2iWFvxpfa7SIoJztvcdP/Prm1xk9W4+IUhGs7Y= -github.com/aws/aws-sdk-go-v2/service/glue v1.104.0 h1:H6ZuOpWZpXqLieLZ2shNSJI+deobB1+FKL6plTOaqUo= -github.com/aws/aws-sdk-go-v2/service/glue v1.104.0/go.mod h1:ajiRue7mZ0vQjVHQkQG2KBaPHW8lL5GtvmjRTHWDaqk= -github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7 h1:LVJA+YR5tHGo95E8P5W1GFnqrQIiOOagnYCGLExvVr0= -github.com/aws/aws-sdk-go-v2/service/grafana v1.26.7/go.mod h1:oEez2RtKrs3oJ6EgbLV0aBC5YJ/bPcMbkGNtsrW1L3Q= -github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7 h1:ZYq/OyCCRtS55xvC73U7klRHzWlV4AG0XvG8/jbBH1E= -github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.7/go.mod h1:5iOqOd+Xi7tMBd+ucAb95owiLCYfeqxphlblc8EvCJg= -github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7 h1:6I620zcBLf791OnuF3hJGj2ft+qLvSsxRerminjOiGY= -github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.7/go.mod h1:RPZk76+qDmck0IFAo+ZteQDOKRN3jST4mFsCeicDmOc= -github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1 h1:d1SZI0dUdWVzX5anxfCMBmTcJlxoqkX2DSvHhuzsqeo= -github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.1/go.mod h1:JMxJFzRnFpi77J2uktvtZh4lcGMJMC9HLE9Tqvf7atA= -github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7 h1:XuRWGRITuK7WMWKMkog/htDAt/t58wwdTK04oynlPL8= -github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.7/go.mod h1:0Ef9fBviMZwF5p9vDNcmAB6hUst2h8aNRnkUhzoE3B0= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.2 h1:8iFKuRj/FJipy/aDZ2lbq0DYuEHdrxp0qVsdi+ZEwnE= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.2/go.mod h1:UBe4z0VZnbXGp6xaCW1ulE9pndjfpsnrU206rWZcR0Y= -github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7 h1:y0SG6t2s4xrOwjulhbGQ72ovA2MSlrb2UyAz+pA6n8g= -github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.7/go.mod h1:cJpIii79T0fjc0awSqvU/1kltAjp8MCmMpkhbOUUiik= -github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0 h1:iYKAYIDogQjGVip912p9brH3/SUnY+uBAZyZi2TKz20= -github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.39.0/go.mod h1:7s6ULWi0Vru/qbdXGU9P17fRG3J0pnCLdb0Q7ldlI2s= -github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7 h1:LV32Xwxm9bvE4DnnUHyfDFrkL5sNGGnr/PWG8LMg2rA= -github.com/aws/aws-sdk-go-v2/service/inspector v1.25.7/go.mod h1:yK+nyYadIKeORBC4ctdbS87vSBa6AHzck8HHhQ6ZxX4= -github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1 h1:dX68SHOUFejZMeg2HyHlyL1QFWR+p03S2y08EO2eTdY= -github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.1/go.mod h1:SDwBSilPek820sf6C7qttUzdiO/2FXPkj811SAbn0sY= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26 h1:GeNJsIFHB+WW5ap2Tec4K6dzcVTsRbsT1Lra46Hv9ME= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.26/go.mod h1:zfgMpwHDXX2WGoG84xG2H+ZlPTkJUU4YUvx2svLQYWo= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4 h1:UESN2kL6NEqhlaLvg1maDmb090rENe5SXlQPniFPAHQ= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.36.4/go.mod h1:H7KyxzxenQN4btMpYIMErtXJF/Wdxt9nuDf0dfDNMkg= +github.com/aws/aws-sdk-go-v2/service/account v1.22.1 h1:MfaYo0TO/FibfEObTTGU+JZqOnexjMVc1iFqu9DImCE= +github.com/aws/aws-sdk-go-v2/service/account v1.22.1/go.mod h1:ozwSD0lNjn+nnqY/ZV2CA3zWpvKGSPtT9rcb5QxI/J4= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.9 h1:ffHv1mr4MyM4fBBltCe88/QqqxVfEEq9A2/qhKEhrl0= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.9/go.mod h1:oncclZWZWxKSIuG8bBS4Ry/VobgJyplv1KDfCEpww40= +github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9 h1:2XsPqThCu/+PaG1Lq09vCmC7cTx0mB/+u7e3T7ccb3E= +github.com/aws/aws-sdk-go-v2/service/acmpca v1.37.9/go.mod h1:fLrdaNdi4lN8ePYS3kpFcq2XTdYeQSPR8hbDfYvrdyc= +github.com/aws/aws-sdk-go-v2/service/amp v1.30.5 h1:48aYtRq69X/u0RvaE16oT8Kc98H15ZIcAx02qNcjw+w= +github.com/aws/aws-sdk-go-v2/service/amp v1.30.5/go.mod h1:69KPh+vGRGqDSylU36r8FYjlkHbhwbFMKzTXi8dCCYU= +github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1 h1:BRKu2FLrhasoAF2JiFpYWlDaKERpWMZSx0lU8ldKhrY= +github.com/aws/aws-sdk-go-v2/service/amplify v1.28.1/go.mod h1:7m/R6PVZjusjZwjs7J5//zaCIp8Kej3C0C4OyEGOby4= +github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3 h1:AlUd7PYPSXiyMAjiHgqvkIvFtfsBeosJfJzx0Ng3S88= +github.com/aws/aws-sdk-go-v2/service/apigateway v1.28.3/go.mod h1:Jvet+MRHVA+6G+ffFK7UGd15+1ye2BwUiG06arzkDu4= +github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9 h1:AY7lMHNvOaUdOatec2lpcVUXpI/e1fzbj4q/OzuQLqo= +github.com/aws/aws-sdk-go-v2/service/apigatewayv2 v1.24.9/go.mod h1:iSSjR27ZzU5PnMbFa/c40rW/L02x5apER7wVjCUMcMU= +github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3 h1:zJ1UX5vlv5PRrBnHmylOazF7Zya0MZYU2Cg3Jz+row4= +github.com/aws/aws-sdk-go-v2/service/appconfig v1.36.3/go.mod h1:Vz1x9xhvNm11gCuBUXaHwbB3CJ2EZ1c531nQiBoa5Fo= +github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8 h1:WwsWPy2j/mau4y4IwcoGPrtpaI+9vWkl/M+e4G0uwJ4= +github.com/aws/aws-sdk-go-v2/service/appfabric v1.11.8/go.mod h1:u+W0G6t6bkw/FA10RZpuwtKb94ccCaWUkneehe9kgnI= +github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9 h1:wkknNc8T4RrjgYCFu2vxtcWNiQvyHLq9W8RE4/F3WvM= +github.com/aws/aws-sdk-go-v2/service/appflow v1.45.9/go.mod h1:7g9GEiNdP5F3nlxWRuQK4h/7H/5IDdJaq7FmpSn9qsk= +github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8 h1:SwIjH56sGy4ifus7xp57LFavHQQgsgicqw/rlfuMNqo= +github.com/aws/aws-sdk-go-v2/service/appintegrations v1.30.8/go.mod h1:8IlXTRL2PzNr4oL4EJj77us9DO5T/ZfoXLmZE738U1I= +github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4 h1:kgzQyUVnwqlle3n00WN4wUWIukpSZoBfI20s9SY0jhA= +github.com/aws/aws-sdk-go-v2/service/applicationautoscaling v1.34.4/go.mod h1:FPBqDaA0nWfNiPZ/8WN4O2tj0J+nzuv03oxABcNNrPc= +github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6 h1:NRo3BLJkZ5Q8uBWxDZXOa2NzcIJr5MgBsWT3F2pLplo= +github.com/aws/aws-sdk-go-v2/service/applicationinsights v1.29.6/go.mod h1:gf1ylqx8AxuRhYP8rXJSwS3fUBEakKsDV6BjralAHLM= +github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3 h1:EjnqG6u4RcLvkificNkUTCgqhkkIfNMgfrErwLaogkw= +github.com/aws/aws-sdk-go-v2/service/applicationsignals v1.7.3/go.mod h1:1Yyn7PDQ3mg85BoFFU84AeGEU64lHn0oF2KJ7dHgi0A= +github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8 h1:5muGyKO9+ZX8TraBEvnjnzPNG0wrecgSSHX0Ilm78GQ= +github.com/aws/aws-sdk-go-v2/service/appmesh v1.29.8/go.mod h1:KM/3G3muE7uucn7iY5t0BQXHThBMnQjJEh08oq8Labg= +github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8 h1:wpgsIfA/h1kayyZJPiAYgZmgVQ/tsMNq+Pl1/qK1wKQ= +github.com/aws/aws-sdk-go-v2/service/apprunner v1.32.8/go.mod h1:jLgw1naLtply2fX7QbqSkbbk4Ws9ASP4QsStZDWGfVA= +github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0 h1:d36PMCY+OwgPqJfgPvByG2gjel2e0mcMt0JNEYMeFm4= +github.com/aws/aws-sdk-go-v2/service/appstream v1.42.0/go.mod h1:HeQk2RRQrmFPeFN1vcg9ZUx85LNH154LjGWaHW6hD3k= +github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0 h1:cvWsS4I5l14/2ObJDCWDbzNaIHtrcJlXwqMiJjzaArI= +github.com/aws/aws-sdk-go-v2/service/appsync v1.41.0/go.mod h1:JtkvZfop6kbv602XTgr2oZY0RNq//obfdEYdYsE68WM= +github.com/aws/aws-sdk-go-v2/service/athena v1.49.2 h1:LMQ/A+F86oe+8s8NKXUmIQ+JEZvpUMVU5Jydqyj4xKU= +github.com/aws/aws-sdk-go-v2/service/athena v1.49.2/go.mod h1:VWKiavh/r4OXYLSrLCc3MEcT2czaWOZi1A9JfZ63S/4= +github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8 h1:iIVLqKuQOeyqwqpeBSczPY8U395LhvyDDXxoM0UGFWE= +github.com/aws/aws-sdk-go-v2/service/auditmanager v1.37.8/go.mod h1:R5rKVPEeKh+WHUO2JH03I4nptz2HOrBlLRKIJ0ethiY= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3 h1:1QljimH+yYwrCPgmF2S/vnIE/sBEBS0IdZIvE5+bRJY= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.3/go.mod h1:t5bdAowh8MWq51TuDmltU+wtxMl/VaegNwSBaznkUYc= +github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8 h1:Axo/XfQwTEly50CeWI+KwPvzPhHRZOKqRrYeFNyN2YA= +github.com/aws/aws-sdk-go-v2/service/autoscalingplans v1.24.8/go.mod h1:IoOmwaeuylIVdMvAR9UvxPwnOCJWbCAHMmc5Xm6+10M= +github.com/aws/aws-sdk-go-v2/service/backup v1.40.1 h1:GAAsSB7nI11QOW4UoxywTbm+vveQoa4OjmTbveC9klw= +github.com/aws/aws-sdk-go-v2/service/backup v1.40.1/go.mod h1:XjQvu2ZePG6iCp186VJMgnARCL6NdWg4zfyFEqH6AHQ= +github.com/aws/aws-sdk-go-v2/service/batch v1.49.2 h1:6vnQOp2iTRys9/fHMpbSgE+klXL1n5ej+JnA18j+o6g= +github.com/aws/aws-sdk-go-v2/service/batch v1.49.2/go.mod h1:E7mVO6W6scZTZWYO+aEe6//s2E9TC0B4o/S5DcWAuvQ= +github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8 h1:RREAjt5uVy09Qtvl531q3/v81nW7LzgosqwakgTkbp0= +github.com/aws/aws-sdk-go-v2/service/bcmdataexports v1.7.8/go.mod h1:V0HdDB+lfHWOfH92XYkc7av3UICF6/tADj5TJBK/6Qs= +github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2 h1:j68iNEyVNTTg8NSAr0KJF66/IEMwqpFjD5TJ0Wl7nSA= +github.com/aws/aws-sdk-go-v2/service/bedrock v1.25.2/go.mod h1:EyyHjPLtcZUu2eg+aB7K9xs4AKskGN1T755632T/Df8= +github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0 h1:QYfytewWlCDwjpmAnOJp5tgP4CkSt2MhFqOawNHahtI= +github.com/aws/aws-sdk-go-v2/service/bedrockagent v1.33.0/go.mod h1:DsVlL/WBmekQaLyt+puVryiwgPRVmdG4iYtXFKk1D0o= +github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1 h1:tVNnwsNTeo+Etw9gr1sWV+Kj3ZoMJc43iZpVU4R8eeg= +github.com/aws/aws-sdk-go-v2/service/budgets v1.29.1/go.mod h1:JY7T8MaH4rW9YFQEWexD4WKErgSgSqozoV3sKghAhNI= +github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2 h1:Pk375myUxoD39hTn0b/+7nYIlG3SP7f4aOsoH3NVk70= +github.com/aws/aws-sdk-go-v2/service/chatbot v1.9.2/go.mod h1:pNxaTTo1JQaKq1/vzoqDABCpcnUH6blogfcamZgdE6k= +github.com/aws/aws-sdk-go-v2/service/chime v1.34.8 h1:WkvFnPWcF0vb3yyZNy3xWPjmKbUkKiO+7R89UE/KWVE= +github.com/aws/aws-sdk-go-v2/service/chime v1.34.8/go.mod h1:Fu1c2q0AQg4DSclD9MWtfSL2t9adrOQDhFOmFqGpdLU= +github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3 h1:2rQ9+mp7RR1FGxIXJIuxF9ahfBAGWHyhEnNNYLzcbZI= +github.com/aws/aws-sdk-go-v2/service/chimesdkmediapipelines v1.21.3/go.mod h1:XtPmOUramYrXE0m2lvCkfNgB/Tq3htF2Q+dxYPd+ByQ= +github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1 h1:5MSmXrqjVPjzSjW0o+KD9yVqcw0k4p6kyjtTQl8tVAQ= +github.com/aws/aws-sdk-go-v2/service/chimesdkvoice v1.20.1/go.mod h1:7ZrFBi8T9q7MHVVzwYP7KgQaI79/vkYK30/PWMEmQkQ= +github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1 h1:nm7JCgtixCjR2SJZIIrNhhdKA6OY5spr+HoPz1y2/3w= +github.com/aws/aws-sdk-go-v2/service/cleanrooms v1.21.1/go.mod h1:S/+ThddHYLlHPrHpcTHR/kCLhXsZTii5fBjWa0Mqc/4= +github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9 h1:8OeMDf2EJR5Xc7jyyCvvvTr1Aqywe7xinilmzEgqNss= +github.com/aws/aws-sdk-go-v2/service/cloud9 v1.28.9/go.mod h1:Wrh4tKMWldsSLZwDNFhsLBnD/kzBdfsfdJ+OSWC4jJQ= +github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3 h1:CqhKpcm7vRbGqIKq4EgIXyDpFUcNHCn0Y/OhnP0thgs= +github.com/aws/aws-sdk-go-v2/service/cloudcontrol v1.23.3/go.mod h1:+m2sovuoyrrRtwrMDH/RrBq66dpBfEW1BK/4t9VCHqE= +github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3 h1:z7kto7ewktoNiLqNhpm8ZpWOIu9WJrQtdvVqR01/9mQ= +github.com/aws/aws-sdk-go-v2/service/cloudformation v1.56.3/go.mod h1:10A7sHyxlTZSB7419K2wq/1tn0x/K9/drbD2j8VRZVc= +github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1 h1:jtaYeSe1A/vag0YwjCZmFty9BEV6MhryK5n8strwcks= +github.com/aws/aws-sdk-go-v2/service/cloudfront v1.44.1/go.mod h1:m70SuBWmdnAnd6e3Z2PxtLL8PfgzFXx4hcGlySK/yik= +github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8 h1:9st+40hamlQ/98Q7ppwFJQMoWa0HbnmVX7+JlWNVQeU= +github.com/aws/aws-sdk-go-v2/service/cloudfrontkeyvaluestore v1.8.8/go.mod h1:qb90fXDbbwuDneZ1VlhEXRFULd7+pkwoqzqzJ/ygm34= +github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0 h1:ncKfGacso4WwPdgbGYxMJ8hECv6lDoNZizS9xzEL3gE= +github.com/aws/aws-sdk-go-v2/service/cloudhsmv2 v1.29.0/go.mod h1:GgwUhfSyCc/1n4pPtE9hAT7s8sYgwKMCHIea7DWtaC8= +github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7 h1:fDgUT7WnsrJojoVMBZuig/zBO/QsgyKby1ZwISvNBXw= +github.com/aws/aws-sdk-go-v2/service/cloudsearch v1.26.7/go.mod h1:+VE5bSjV3BYlMphES5JAnhgH5ySiX2jIym42SjtTr88= +github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5 h1:+fSJTvw91AyBSgS7iaPlSe0NVwa1DJqb6F6GClah+0s= +github.com/aws/aws-sdk-go-v2/service/cloudtrail v1.46.5/go.mod h1:2lQF0aEQAXkUf/Td7RqGIuylJlJO6wSv/onvNdShVyA= +github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5 h1:+NHuBj2D4pZq+9Y8NZykdBebInAwCTywvr6/MOte+ro= +github.com/aws/aws-sdk-go-v2/service/cloudwatch v1.43.5/go.mod h1:aBk4XbmWf8p4N15l6DPVgb2t/n5gpk+mZMbigYV3a1Y= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2 h1:9zwK03mlPPGzTaiLh1AJS6IhOAWDYnVXfZTwdyBhQtg= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.45.2/go.mod h1:u8Bi6DG9tLOVIS9MNqtE3vh9T6I/U/8RBpYvy/VyMjc= +github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8 h1:1ztU+umT5kFQpbTC+8HNtbYEEpDKAMuJfbJCspljEbg= +github.com/aws/aws-sdk-go-v2/service/codeartifact v1.33.8/go.mod h1:LB1mlJyYyiQlOWEcTjVFBF02MPtuekmymBgCgVuAYUA= +github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4 h1:Ot0JuMkwX6BkDCLH526ELBIPdGI6Ra3aLnv/D6/K/xE= +github.com/aws/aws-sdk-go-v2/service/codebuild v1.49.4/go.mod h1:d9BkReeJ9l7w0EAstfeEDdkGXEeAh/OmsZ6DHAcIpEc= +github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8 h1:Ou0aiKOu6BYTWz00dr4INrz3nhxMjoI/b6pQQJlDkQQ= +github.com/aws/aws-sdk-go-v2/service/codecatalyst v1.17.8/go.mod h1:o/BXYX2/9RZSc37Y/EoU+HDon9fmaW0gRJGzgS/vwTE= +github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8 h1:D29pH2YgWtzOD9ou/mdfjKBmdfj78MLwvQ31nt/Efx4= +github.com/aws/aws-sdk-go-v2/service/codecommit v1.27.8/go.mod h1:aLt5K9dn3quueZs15lzF1vXrGXPDJbh0Z4h6+eIFf8A= +github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8 h1:F+CHwOPvtr8tdvmq+0WeWtQQDLZXXGQ3k0NlpFX3Uto= +github.com/aws/aws-sdk-go-v2/service/codeconnections v1.5.8/go.mod h1:fuCM6Dq/mYjwrMMg7WYfxGLS3rtm8WQScnb3J4TWQWE= +github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9 h1:x2Sz/Um2M2BnkZU7MTlO2M8BDpqGU0ElYXO3WZAOYMQ= +github.com/aws/aws-sdk-go-v2/service/codedeploy v1.29.9/go.mod h1:TSwz0tIKm7gbj+cM/btARXRF8VSPQ+1beyfpTgkLxNU= +github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8 h1:zN+9zIaiaafk0NFdlNLVEZZLo2hQy+eOKzOwfencs/w= +github.com/aws/aws-sdk-go-v2/service/codeguruprofiler v1.24.8/go.mod h1:+jjXeB9n2LaUuryhoI5Hfy0xaqYmbe2kqDh0Y9bIvkg= +github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8 h1:/ANSg9t9W+OpcfRCXiRN9q+cTYqtqP4NnEbhfs3O1f0= +github.com/aws/aws-sdk-go-v2/service/codegurureviewer v1.29.8/go.mod h1:/GPiKI3Ii0G/JbayHwyigiWDk+zma0Vuinx/5kLxHCs= +github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1 h1:agfJhI+vVurH9RG0FQKcww3UjQmCa62C1GWcfxoILjg= +github.com/aws/aws-sdk-go-v2/service/codepipeline v1.38.1/go.mod h1:poDAID6Zh6NEzgXCwYymLhkTQUE0V9uY+84phLMICiw= +github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8 h1:y1SCCbaLA4yXDOR4vMcaS9IuJYDcqtgfL8y7JW7V79s= +github.com/aws/aws-sdk-go-v2/service/codestarconnections v1.29.8/go.mod h1:mYzkMbNHQ0Q3XmQ+k2EtB6j0HixPteBRhuVv6za+xio= +github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8 h1:fpcjjRkXNumgSgOy12C8psBT+DTNQ+qISSRHnob9Gy8= +github.com/aws/aws-sdk-go-v2/service/codestarnotifications v1.26.8/go.mod h1:XHapW9k7Kknj3ltZK4y61x0ZZgzzTYeDsb+u54AEeUU= +github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9 h1:45fUrgNmm/p7K3jZdUUAmmh+NvpjsTtgceFjDjKHpt8= +github.com/aws/aws-sdk-go-v2/service/cognitoidentity v1.27.9/go.mod h1:YKkFAyQpB2INvqQCRqund14d8HOwz3r8lA+9ZwzoPWs= +github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3 h1:dCHr9LHyvstMsKpvQE416MJZCsT0xwsO/JBdTkofzyA= +github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.48.3/go.mod h1:Rb0ZVYhF0yOeUKciNUNOsUwMwnlZCod7zyiF2+C7qVQ= +github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9 h1:PrxvtpRaiYgMuIxaiODBsX1rtadAuyLw5EZVticjSyE= +github.com/aws/aws-sdk-go-v2/service/comprehend v1.35.9/go.mod h1:B54u0dzMmGt47kJ98a/lFwByBscvrIWT2HX1p/szNWc= +github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2 h1:DxMFMEcH8cXMB2KSfDSY/QWQ3LQMBbCRVS9OxB+D3s0= +github.com/aws/aws-sdk-go-v2/service/computeoptimizer v1.40.2/go.mod h1:mTG74QNXnV8f0Qr95VbKEUfE4a+9fh8rYTDwa5uvo3Y= +github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3 h1:ybU+H4GCd6yQhe3HNQf5YCsJm5yAT0lIXxey4azQZWE= +github.com/aws/aws-sdk-go-v2/service/configservice v1.51.3/go.mod h1:nm1OoNlPmGfPdBvK/xqNvh3aqnsCXu8N3cyLk28kRfc= +github.com/aws/aws-sdk-go-v2/service/connect v1.123.1 h1:H9wHtuzWPx/xjSfZt3nZ9eAeMo8h+v5sX2VNqhzUU7w= +github.com/aws/aws-sdk-go-v2/service/connect v1.123.1/go.mod h1:nZpWdBCj5AvfqaUYTZiP8RrF0M7og3aIVhf9KoQFqNg= +github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8 h1:hj206zH/z7il1iX09N8S46Qzs8k6v6sacJrIp1Jcpj0= +github.com/aws/aws-sdk-go-v2/service/connectcases v1.21.8/go.mod h1:MS/Qch0cTw1+b2VeFNt71D8krYxjuYlmWvnYV8Nof5k= +github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2 h1:cVkS7f2tetfZz55XO64+GlDecSJslcxVrwJ8nZVwcpc= +github.com/aws/aws-sdk-go-v2/service/controltower v1.20.2/go.mod h1:mioqxoTwIEg+SsUeokS0iyGriDQ6O1oWr9ONVLDy9XI= +github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8 h1:tNRHv8OXTnf0rlut9Vp3DSpI/j0C4SFOK5KWBe9j1d8= +github.com/aws/aws-sdk-go-v2/service/costandusagereportservice v1.28.8/go.mod h1:mj6abMUDCI9R5smS3ZLCprpxBvjV8ljxROlA0VcEXpQ= +github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0 h1:lQExmRiGGDTUBi5C7Q/SmwbL7xfHJqkI2I5Q40SMjJU= +github.com/aws/aws-sdk-go-v2/service/costexplorer v1.46.0/go.mod h1:5WHHpqKGSnRAIbRHXrslVwNyIx/oGCPCz7swI7Iotbg= +github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2 h1:Ek+aYopz3wADJJft8YOHZYVZiMPK66laU/rKvl8pVTA= +github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.11.2/go.mod h1:yvizjKqbFymZRI19hE6XLehO5hULzK66hthy/5kOvG8= +github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1 h1:a+ECmdBt81/vUkUDBKI3xz1tz2rVRegE0TxgNYbIaho= +github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.44.1/go.mod h1:qs2I0CqRjF/G+QDX4Xvb1Pcu2Iq4vFgtEyU2E4SCyhc= +github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2 h1:vDCXOsWjVNmqSYO2mq4y0qCfSuA29U8SXNQpkiwlPl8= +github.com/aws/aws-sdk-go-v2/service/databasemigrationservice v1.45.2/go.mod h1:bquWddnSuIbQ4g5Q+DVSLa28hVAPhUYXYPuHVzY8sqE= +github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8 h1:iuuNaEcx10pJuk7NRtKbf0bdrbzSxe2REuIs5TQGHxA= +github.com/aws/aws-sdk-go-v2/service/databrew v1.33.8/go.mod h1:vzCG7ZitkB3UgvWOqRLY6b0g+u+a7r/LgDWmGH8KL5A= +github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6 h1:PhreObT3/aVbIksowe7JnTZulAokeRe8SKA7TihpQ/A= +github.com/aws/aws-sdk-go-v2/service/dataexchange v1.33.6/go.mod h1:VB/5KWRgeksKAmKb/+BC7XQQD7aClJDQsjpCdAeuCkg= +github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8 h1:qHt8TIRSD/BdInSc/F1cnzelofxHnwCfadmyCB9AmQc= +github.com/aws/aws-sdk-go-v2/service/datapipeline v1.25.8/go.mod h1:EEgyHTHCQ51KOoP5GbrY96UPSyphzzmI72v1TKwThFo= +github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2 h1:H/J01pCpZxxkOBeiQz63rRJ6drRrm/Hw4XV5KXxFqPg= +github.com/aws/aws-sdk-go-v2/service/datasync v1.44.2/go.mod h1:hvXfW5IP0GUj9DG1CPW/vkgUowsgVQUAWWrHqoFuovI= +github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2 h1:piTDOQkhX+rd0DoLJkd4kycKM1VZVDtjN1L3vj86CAI= +github.com/aws/aws-sdk-go-v2/service/datazone v1.25.2/go.mod h1:aDMOdbc07wZdcKsHas2817moI7tI/j7kd4S8F3sXuhM= +github.com/aws/aws-sdk-go-v2/service/dax v1.23.8 h1:pPfeBjmh883HOB4RoEuCsuDKP2+A3jdoo1kdqFkarnU= +github.com/aws/aws-sdk-go-v2/service/dax v1.23.8/go.mod h1:tX1mw+xkugF10zMxo//EelMCOLwO6wtZJmgxx6EQwJM= +github.com/aws/aws-sdk-go-v2/service/detective v1.31.8 h1:ob5yrFpeMKKUfsPq26DocL2WBHa+X6/AKSQA4/0U7eY= +github.com/aws/aws-sdk-go-v2/service/detective v1.31.8/go.mod h1:OGWjfz5vd3gaYgqzfT+NlQgmxAm6IM3FGg0CKkNIsNk= +github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8 h1:FV/K4EqSdF68msYBSfzEyCScODJREO+ccNJxy8xCXC0= +github.com/aws/aws-sdk-go-v2/service/devicefarm v1.28.8/go.mod h1:nkp+PfI8vKCyafU0D/BXPJTIhhvL9nWr4zZ4Sy0RQ4c= +github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8 h1:OIikL5f5QlXyc051nPNKrPn7uzapRvsrtwlFUxnye24= +github.com/aws/aws-sdk-go-v2/service/devopsguru v1.34.8/go.mod h1:6YW1nV0873yX5+jiffFVhx3v4CLJLZc+50ZV3yLskn4= +github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3 h1:KPzMuKWf63640pBF+TYm0f8VzIXoS7qxETQyD7bz3Rw= +github.com/aws/aws-sdk-go-v2/service/directconnect v1.30.3/go.mod h1:UlAbS/TuMovrezlW21TdxX/rmpA49XuuvPSZnJzjnDs= +github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9 h1:TYfXZhqtLu0IGIvhaYtdpUrUPLPexeHP3A6XWHkzUII= +github.com/aws/aws-sdk-go-v2/service/directoryservice v1.30.9/go.mod h1:8H2cV0KgyOajxRjmn1aVEKdeFoYGCfidVp9fiiSDdBQ= +github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2 h1:Xh5CXdydZM0OJwTQWQcRHSCz8Mv461STCe8FhhhsBiE= +github.com/aws/aws-sdk-go-v2/service/dlm v1.29.2/go.mod h1:U/tY2rV+/oZ2YsUUe49PMoz9XKbN0+CQHzT5JhbXyBc= +github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1 h1:XqXErApKL6tpNbg192sfCLWaO37w9sB3RS5xB6EjKFw= +github.com/aws/aws-sdk-go-v2/service/docdb v1.40.1/go.mod h1:MQ9uU7FnemGLCkLCfl4ikGvq7UVduD169Kxft07J4kw= +github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5 h1:JEGaqPMALXNvkwMAQFaWHFmsJeEQxokYxklxnYOo66o= +github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.14.5/go.mod h1:USqXLryQqswYCghqSEITP/qIKwMGaFiMt7CohdHwVIc= +github.com/aws/aws-sdk-go-v2/service/drs v1.30.8 h1:lTmz5+1IUklrXFIay3glpkS4UG8BuojaqsR+zfE65Mo= +github.com/aws/aws-sdk-go-v2/service/drs v1.30.8/go.mod h1:yD3q/bZ6VfItjUSpsif/LX2cutVFBwbI/U03vJ8fctc= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1 h1:SOJ3xkgrw8W0VQgyBUeep74yuf8kWALToFxNNwlHFvg= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.39.1/go.mod h1:J8xqRbx7HIc8ids2P8JbrKx9irONPEYq7Z1FpLDpi3I= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2 h1:4RRNXH6wQUs5ovRx+/R19TbRWb3RVUDs0MYHLxqtd+o= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.198.2/go.mod h1:mwr3iRm8u1+kkEx4ftDM2Q6Yr0XQFBKrP036ng+k5Lk= +github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2 h1:dYe1cRrjqlM0lBmixTAzgCfigqsb4wSiJh2Oj5OvgBA= +github.com/aws/aws-sdk-go-v2/service/ecr v1.38.2/go.mod h1:NqKnlZvLl4Tp2UH/GEc/nhbjmPQhwOXmLp2eldiszLM= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1 h1:pD3CFGTKwsB8TFjTohMWz0Qb1PuYpI78vYU8s5yhLx8= +github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.29.1/go.mod h1:aHMIyHh+6N2w3CY24J9JoV5ADnGuMZ7dnOJTzO0Txik= +github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3 h1:/nZmlWSgeK4dx3NqLtFUqa3q43PCvDLYyU3cvA9CE5g= +github.com/aws/aws-sdk-go-v2/service/ecs v1.53.3/go.mod h1:YpTRClSDOPvN2e3kiIrYOx1sI+YKTZVmlMiNO2AwYhE= +github.com/aws/aws-sdk-go-v2/service/efs v1.34.2 h1:gV7yKX8euN6W9vXiPutShochfx5ren706E9D0qsoOjo= +github.com/aws/aws-sdk-go-v2/service/efs v1.34.2/go.mod h1:SB5IpCGoPDDTpf7wMLVtq5MRsad+vqIMONmJf/l4nqY= +github.com/aws/aws-sdk-go-v2/service/eks v1.56.1 h1:TbZoGON9WoQSDC86lTA+eDCXTCqJElgM4TTiqdVcSG4= +github.com/aws/aws-sdk-go-v2/service/eks v1.56.1/go.mod h1:kNUWaiotRWCnfQlprrxSMg8ALqbZyA9xLCwKXuLumSk= +github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3 h1:q3Yh3C1E+6vDTIzNNIHROJ4AwaCACBo91o4GIakTCFo= +github.com/aws/aws-sdk-go-v2/service/elasticache v1.44.3/go.mod h1:XIxNB7tOhWeEBxjR73NTGrQ6tTHM2YBCKS/5CL2YKqE= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8 h1:A6w8FeT/ZD67gHTlJLdemN3eZbvcVXOcmeHvTLbkeCY= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.28.8/go.mod h1:hat9kpRr8nmdYKvacqWSpRGIbH8pDvwj68cO6zRkOpM= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8 h1:WdcbaWZfYERsexqm1btE5R6iowdJsTeNxDbwfEMEriQ= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancing v1.28.8/go.mod h1:NhhK29UDwO8PSPb85Lt9bPuZaWTOCXdGP+8LK6Y8D/4= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3 h1:MeAc21VH852SMTbtMEHhwEaL6YsxOL9SA0wxVyiN6+8= +github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.43.3/go.mod h1:vaGBfWQyju9wbTBd3k0ujKFKKE/UfscXZwS8f+j55QM= +github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9 h1:WqiAJgy4lzv4FpNRtY94Zh692zaGtiroiuP+MMCTyN0= +github.com/aws/aws-sdk-go-v2/service/elasticsearchservice v1.32.9/go.mod h1:RGpS/LUXtCHiTnQC0xcsuQidWCanPCjMRsvYd3O7AvI= +github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8 h1:1hkU+GDIgxHES3K0uaO9HC1hL/B+FkXULR495C2PSm0= +github.com/aws/aws-sdk-go-v2/service/elastictranscoder v1.27.8/go.mod h1:I0CkwEHiAiFiW/NKQi+NUyY0qjlix4uup9GaWhN3c2k= +github.com/aws/aws-sdk-go-v2/service/emr v1.47.3 h1:egH3Zq0gx3FgswC6qBASuJrw7Nb1kB+xD4Fdj01RCDs= +github.com/aws/aws-sdk-go-v2/service/emr v1.47.3/go.mod h1:WuAC06U38KdHRoPgTyr2A9ILBc/2wZUxULxPd4zA/Ws= +github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9 h1:41HYpMqQGJzfJfRirTpnDkqkQsYIppIw7WmagXhQZK4= +github.com/aws/aws-sdk-go-v2/service/emrcontainers v1.33.9/go.mod h1:nXFpwY9bqIPDCv5t0d0iST0DHlRb4iIsIG4BfAyevGE= +github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1 h1:kywRSDFKOVFPH6IpihkzsezlguwDjUqFvR3AGYbkDQ0= +github.com/aws/aws-sdk-go-v2/service/emrserverless v1.27.1/go.mod h1:B0jBD6uiycypay/53cErzYD/SIbb6X/Hm9aTe5HL1m8= +github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2 h1:es3A4qacM8ygOFqQwnhkHAjlmn3ZQjAV4hs1C8aroqM= +github.com/aws/aws-sdk-go-v2/service/eventbridge v1.36.2/go.mod h1:pd8aAX/C3BSJ4Y0PSF8KoOpXFP6p511Uu2PObSdhW/Y= +github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8 h1:xOp+ZD5VOvWqOMKk1qF+QHRlxv6QhzdVdtOwbno0Zxg= +github.com/aws/aws-sdk-go-v2/service/evidently v1.23.8/go.mod h1:TTCWa93TXhrb6CtYI69zr83iW7VsihxGPsoMQuhXCXk= +github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8 h1:tqLO4nT7J1SuUm3F/8oNTW2ajvGItVu9APeStZX+Uhg= +github.com/aws/aws-sdk-go-v2/service/finspace v1.28.8/go.mod h1:i2TLGZU7vwN4MN4l9NUa2VFVB25CT5DDxOm60gFMzls= +github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3 h1:sYTcQxkegr5TXo7tuPOdmPxJFX75pdPKi35Wn7i3Zdc= +github.com/aws/aws-sdk-go-v2/service/firehose v1.35.3/go.mod h1:enMJr53++oOWp8UdocZE4avuepzSLlhduTp03AjQuDQ= +github.com/aws/aws-sdk-go-v2/service/fis v1.31.3 h1:Pyde+VIhO71j5j+BXiwA2civiljvIRLkKFpCSEpw29E= +github.com/aws/aws-sdk-go-v2/service/fis v1.31.3/go.mod h1:lMzi+Vbnzlq6fPfIvHPWoX2LHKM2S2EOn5z6Vx71nmw= +github.com/aws/aws-sdk-go-v2/service/fms v1.38.6 h1:AC3x00ZKA10zqPJuq6djqZ4SQJOgPSNJWsMYlmoHP4E= +github.com/aws/aws-sdk-go-v2/service/fms v1.38.6/go.mod h1:B3Vak6cFQfuW0ngCa07XogB2G4UNbPsx2RX8i09HYRI= +github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2 h1:ebMa63iPLHJ0dQgNTu5hJcYtmvr97SgJBMgdJ4Czqzc= +github.com/aws/aws-sdk-go-v2/service/fsx v1.51.2/go.mod h1:cNaIag1SJLzfaYSGY0TY6blDFVpQjRqHfb3NhANZmTo= +github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0 h1:KNBSQcM3wuDev57F/ORYpX51mOvPjyFu3SSsS2CzHo4= +github.com/aws/aws-sdk-go-v2/service/gamelift v1.38.0/go.mod h1:vrO+dsUPRzqUFiNr5T/9fm2bCZDcQZ8q46anRzviwxk= +github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8 h1:6J1jxl2VB+BNVlI8z/XoJVf5oCjh/Cjz3T6lqU3V8EE= +github.com/aws/aws-sdk-go-v2/service/glacier v1.26.8/go.mod h1:ljvtU36DYrdMfg8PvFJvJ6+Km6T+Zs5N3r+fDvCMdy8= +github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8 h1:/VXwulp0KVr+yAiagmz7J064zFtyZAS0t7Tz4xsVDGc= +github.com/aws/aws-sdk-go-v2/service/globalaccelerator v1.29.8/go.mod h1:wEL5hRUgzkBiUmwGUAWDMDYLK5K3j4Mbpla9l3GXar4= +github.com/aws/aws-sdk-go-v2/service/glue v1.105.0 h1:raq38Qb6iJJtzADr7Z4IYHOFp5E1NVpHDGoTOsGLHNM= +github.com/aws/aws-sdk-go-v2/service/glue v1.105.0/go.mod h1:FyYpmVnMux6fzG2kcLnVwT/swhs8DNtleGIkc8gh63c= +github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8 h1:dZ3qWAilQFEKWYSJSyjSvaL3tl5kwPT9VXQ1GV+cqcM= +github.com/aws/aws-sdk-go-v2/service/grafana v1.26.8/go.mod h1:CKgvdy9Q91eKNQ0Mz8e65kEOzDVoeRGarecs1XNGkW8= +github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8 h1:A73wChQvUbZ3oSqhtMx80BtXrOyLiHRddE+vDz8xY7g= +github.com/aws/aws-sdk-go-v2/service/greengrass v1.27.8/go.mod h1:Yax0txZhN3xXq3YeqepuVNK4svEV7kj+AsdoGl+/qX0= +github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8 h1:DJQrTBTH2+0oHKxzru2I0OnNrjTNjbi0lePppIWrqtw= +github.com/aws/aws-sdk-go-v2/service/groundstation v1.31.8/go.mod h1:yJAK/nvt910++tfz/fjIPuXSsDrlCFfhOeJ7tYXd+IE= +github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2 h1:G3Zn5O7FPgZ1deY6Xj/W2KeJqGyLZTwOt1t/UR5APOA= +github.com/aws/aws-sdk-go-v2/service/guardduty v1.52.2/go.mod h1:t9MUf/xsmtROFhlWE2jMn3HolrNBJQK3C/JdRoKkV6A= +github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8 h1:g9LInxjUDtI+uEa0qrqIEzCrqnrCUC8dsEbDc5Xqo7A= +github.com/aws/aws-sdk-go-v2/service/healthlake v1.28.8/go.mod h1:ZQBr9Wj30oaFWK00kpQNg06CZM19GAKyc2iMotrEr18= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.3 h1:2sFIoFzU1IEL9epJWubJm9Dhrn45aTNEJuwsesaCGnk= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.3/go.mod h1:KzlNINwfr/47tKkEhgk0r10/OZq3rjtyWy0txL3lM+I= +github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8 h1:Lg2UE1jqXgvhaWnHbnUuFdFORQLxKbJY4TSU87q6zGU= +github.com/aws/aws-sdk-go-v2/service/identitystore v1.27.8/go.mod h1:M5UW9CJQV78QiCxGihlGzwRbAD4B+fJf3y8yAij62Y0= +github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0 h1:nGY1TFaPCz4j/h3xRO2hBt/fx770wVE/pnrRNI8W2Uk= +github.com/aws/aws-sdk-go-v2/service/imagebuilder v1.40.0/go.mod h1:VQkLCCako1+BM9h4q7cDfPeakZiLJJoFY2z/aTpandE= +github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8 h1:Et5o92SeqmgWdmH+htC85Y/G05ysMh0vvX7POcjdNY8= +github.com/aws/aws-sdk-go-v2/service/inspector v1.25.8/go.mod h1:esbcyZItviqB1B7lUKaWPsPo20usI+mxi/RRS1hXwkU= +github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2 h1:CcQCGFVjLOcFxNwW5ZOv0qoL3TZRtiNSOozH5gU4rkk= +github.com/aws/aws-sdk-go-v2/service/inspector2 v1.34.2/go.mod h1:mLnwoGGkALpyxU8Hh/p7U8jvAqTty1oXmlbQe7xoBbw= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 h1:iXtILhvDxB6kPvEXgsDhGaZCSC6LQET5ZHSdJozeI0Y= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1/go.mod h1:9nu0fVANtYiAePIBh2/pFUSwtJ402hLnp854CNoDOeE= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6 h1:HCpPsWqmYQieU7SS6E9HXfdAMSud0pteVXieJmcpIRI= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.6/go.mod h1:ngUiVRCco++u+soRRVBIvBZxSMMvOVMXA4PJ36JLfSw= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6 h1:nbmKXZzXPJn41CcD4HsHsGWqvKjLKz9kWu6XxvLmf1s= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.6/go.mod h1:SJhcisfKfAawsdNQoZMBEjg+vyN2lH6rO6fP+T94z5Y= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6 h1:50+XsN70RS7dwJ2CkVNXzj7U2L1HKP8nqTd3XWEXBN4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.6/go.mod h1:WqgLmwY7so32kG01zD8CPTJWVWM+TzJoOVHwTg4aPug= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6 h1:BbGDtTi0T1DYlmjBiCr/le3wzhA37O8QTC5/Ab8+EXk= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.6/go.mod h1:hLMJt7Q8ePgViKupeymbqI0la+t9/iYFBjxQCFwuAwI= -github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3 h1:uRN467USr5RaiOgScMKkuqllDptKNHBvIPcOgXQFL2M= -github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.3/go.mod h1:Pnzezn20O/qGSc8S3NVpy879f5w4bWnYW3iGHTUbgBw= -github.com/aws/aws-sdk-go-v2/service/iot v1.62.0 h1:k4eHmwRX+SDJ0dJengn9wZ6xUw0w0nTN6/J6zj/TR48= -github.com/aws/aws-sdk-go-v2/service/iot v1.62.0/go.mod h1:2QrSORRSY/NYGcTbUdHIz62SM5RlLCAnBcpcDIjg/Sk= -github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7 h1:Wzu7Zb+Xxekp9ncI9Lqx24b8avRoLh4ZaVjUWda3Po8= -github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.7/go.mod h1:dT/c5XzdfUmqgbuY2rfoqEoaS4hhhV6bzYKCmHIudsg= -github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7 h1:3+CqncIjYZhQ4dW0MEe3LN48ny4H1OydEIrtN6N/NMM= -github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.7/go.mod h1:A8OzS86qbmve0dL7bqdbqy4PcBKWCWqg8gKRHLO9pEI= -github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2 h1:9QFYCHXxRywbd/jvx9wtU73u7QT0I7Y3qAKLgDDIwKo= -github.com/aws/aws-sdk-go-v2/service/ivs v1.42.2/go.mod h1:BwNgy90oNpZ/VrzHTn6y/z2jdsJ2ZK6D5yvvtE5Ft0o= -github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7 h1:HlECOFumfIpk5nRnSdJ6F6ney0vxu9JsLe4zifGlswg= -github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.7/go.mod h1:C57nohycrCEMovZLg5G75J/DEZka5WSuOJtfaYqIq8s= -github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8 h1:JtNyNMbRidkQhMY7+ezxSV+l779MoKHpF2O8dhPenH4= -github.com/aws/aws-sdk-go-v2/service/kafka v1.38.8/go.mod h1:6ezJjIOpnDf+Q/BJ2CIITrcdXSvfUS1zwjnEHHPa8oU= -github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7 h1:OSj7D23vSCmeHSp8IQUuSvc57cUi6FwYQ634FgbMdOY= -github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.7/go.mod h1:oy7uAjiwfudbkCbOW5nIBNhzPEsQbnbcNO18JgdVqZU= -github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0 h1:9I8Wi0EDviprTdQfgI75ax4mL/A9GAef/UqBst4rL2s= -github.com/aws/aws-sdk-go-v2/service/kendra v1.55.0/go.mod h1:/HuziZyTc3mY3YW5DqgZAnyhFoK38EMCqnASuWrpYoo= -github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2 h1:uHvt8hkpzVedMpTDiLeH99Jsok2hQLk2SrRLUaSSIKQ= -github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.2/go.mod h1:hW+Z1zESPAefZ33sgnMvY1ADVCiPI2e8v1vTQcz/MDY= -github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7 h1:QTtbqxI+i2gaWjcTwJZtm8/xEl9kiQXXbOatGabNuXA= -github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.7/go.mod h1:5aKZaOb2yfdeAOvfam0/6HoUXg01pN172bn7MqpM35c= -github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8 h1:0h1EmAZ5VTdoteDEzE9OlTr7OXZGO56eMxOGGceioBE= -github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.8/go.mod h1:c9hLEK1e3z+ruMXThiEyqMrPdpPOxRw4yg3KZ3rHYl4= -github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8 h1:ryRIc8QkgWcMqmCSBcnYkchdLeDEOtCEjU4tJKCZv9M= -github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.8/go.mod h1:vS4K9dorERPC3u8+nXR32WJfltj6DCrx/B3w1njvJUY= -github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7 h1:u312E9WSNS3aL0fMkD3R8TCrv6RX4KT1F8I6itnQe/4= -github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.7/go.mod h1:pdoRfafdWneitPJSDJEIUH3npcWNF0a9ReMblcQC+hA= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.7 h1:dZmNIRtPUvtvUIIDVNpvtnJQ8N8Iqm7SQAxf18htZYw= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.7/go.mod h1:vj8PlfJH9mnGeIzd6uMLPi5VgiqzGG7AZoe1kf1uTXM= -github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1 h1:5sp+bK2sVPXf7KifZ4B+0GPKt5ckqraD8YbUaRk//CY= -github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.1/go.mod h1:TrZ6XeQ86aBjOsy+ae7RKlYWh3TQ53QQcA6YhtFadYk= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1 h1:q1NrvoJiz0rm9ayKOJ9wsMGmStK6rZSY36BDICMrcuY= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.1/go.mod h1:hDj7He9kbR9T5zugnS+T21l4z6do4SEGuno/BpJLpA0= -github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7 h1:nMYxTZs0WjVLEyTEqRtD6WR83nMqF65uPHSv43SrFDQ= -github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.7/go.mod h1:6g7hO7AFKCy9KcvxJFPs8m6u/YS42+AXnI5G6v5amyk= -github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7 h1:ctsj2+1N2CfpM2WOrnSKMXgHIjoxqm8LbQ2zs/ecZWI= -github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.7/go.mod h1:jW7hiTAbVhBgyur3096wz15sT2YEZYPyVtO4fRWgZc4= -github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7 h1:1iMiIfLc8yYCQJ4HwxLkD9L6vU5hnTcNoBI8yoanyR4= -github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.7/go.mod h1:Tj5DuyiCjIK6WkzvyXYy0PVq24dK+6CKvon670Q9Jag= -github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7 h1:qtiX/fhTL1mrZNOM7KXKgaiHCMSmRfclUMtI2ep619U= -github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.7/go.mod h1:aH2CD/bGJKv5nBMc2S3bYIapITSSZ6au6YJERm5cEdo= -github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7 h1:pVO3tnwny+c+XIfNkmrReAkNd4Gyy7TVvro1ZTfzY4g= -github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.7/go.mod h1:yveTbfkp9hhabgl3aXbd2/AvWCgJRi0O+mhm3REyvE8= -github.com/aws/aws-sdk-go-v2/service/location v1.42.7 h1:yLpR7rDAh1mSazJyYc2bNzVk8EMuertx4ZCsDzSFeNg= -github.com/aws/aws-sdk-go-v2/service/location v1.42.7/go.mod h1:lSuujyYUNaI4cHRzTha04mEVGSpIW0PM9AiTemTvKDY= -github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7 h1:wyvJFktMUDLYX7q8LpfuvDS50sIR2QrcK2OPaoJZL+Q= -github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.7/go.mod h1:xVdP3fbrhDfhVNugkmC2aY95Ea0od8j0cUUxoRJ+UP8= -github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0 h1:3gXxbz0y85XUK+5fY3reEO2jgZ7DdCnnaNqje+LSTQA= -github.com/aws/aws-sdk-go-v2/service/m2 v1.19.0/go.mod h1:XXdV0w3yWrEmBvE4iZVAwWEPtQD+UrDIc3j/ETsI5+4= -github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7 h1:mlaPITmZnYi8bm20Ql8tTPrSdLZc6LwdH9RYDuAgf3o= -github.com/aws/aws-sdk-go-v2/service/macie2 v1.43.7/go.mod h1:wya8VTBSC9uglnFujLKT/21M03qc+tnTUHV3fgW6aFM= -github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0 h1:uF6NHhbMcpWPb04VCN+77kt4l3J8VdUUSP4uhy30Eqg= -github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.36.0/go.mod h1:NyaKp3HdG4vD6gNfnIwGsl68/4vneSu1cok7yZAOB/U= -github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1 h1:O0PufOavkptAta6HE7q128zvKV4jcZ5PbyyIRbUsWI8= -github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.63.1/go.mod h1:4B8R+NlIvQUF77Rpqe2r4xQceaUVXCFYfbJ2ASlocbc= -github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0 h1:ahj6vblksLY3nA2wPp9PIM8Z4jVvr3ePQKH1De5I2fg= -github.com/aws/aws-sdk-go-v2/service/medialive v1.64.0/go.mod h1:3941uJpLJirB+Xc5CM5rsVMeQuNkp0UMrdswdqvOelQ= -github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7 h1:NEDXmP4JZxYVPcU+rvIcLUPM6kEhCS2lw09weM1a0WI= -github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.7/go.mod h1:E4wTOblO64Lm0JHaNwxx1klyfyQ3rKje2J0CwQ6Q4XE= -github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1 h1:F+do5xWXqiQhY4sVpYwzVxrER5h6IKfedgFJVuAfpF0= -github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.1/go.mod h1:+vDyRn8cichafKg5NVt3+HC81nasKOkFpJ0jxuTL6J0= -github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7 h1:OK3XNax+Pg6cKlgOSOs3Rp/zGlq29gmQQVOMv6Frh4g= -github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.7/go.mod h1:4Cz00WLWNC0c79Y1Rks4MH+ezS5zXGerYY9DryVWRNQ= -github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0 h1:7HzWnEIEXis3QZCiGpI0FwM4CzxKr82dc18cTqE+Ws8= -github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.0/go.mod h1:nv31Ugm3PeTj/1NoUT1wlJpSttTV9kpANgSGMCOdTYg= -github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7 h1:bqyymOULuOZX/dfbQymKhPDJ25X9w+vmGs+ZcNtTCB4= -github.com/aws/aws-sdk-go-v2/service/mgn v1.32.7/go.mod h1:1FEu+ENxyHxLkiMtgvcDscPNRHEkj+p9cTPLRqL1A64= -github.com/aws/aws-sdk-go-v2/service/mq v1.27.8 h1:xGcrYXOE7mCt14ToL/ZibXsBW0DhReBuollS35Ci7pQ= -github.com/aws/aws-sdk-go-v2/service/mq v1.27.8/go.mod h1:EjYQlgBAl1BVTGEpjQSTTn8q2IaBYmKZAMGorq+J8N8= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2 h1:qCqdF8H1+aemTiY4A1vNygeiAgqKGl3nNnsztBPa36w= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.2/go.mod h1:jMA6WUWuLnmu8HD8/bbhF+UsqZZDD21Sy50KeCYk4Us= -github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6 h1:4XpR4uxdYixFnQecBQ4bj+OVTTIllaVLIdNZT9PVGXU= -github.com/aws/aws-sdk-go-v2/service/neptune v1.35.6/go.mod h1:JeJv7jf5G41lHVNiZ+24s7Frzg8k9xYCGborBe0FdNw= -github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1 h1:2jejkFcjwRmm2w7h5em/psgHikBl+uc8F9qoFdyS5F8= -github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.1/go.mod h1:GpKZo1Lgbubeuqk2To4Tr1E5DBHj2mGrl2tuhysti2I= -github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5 h1:Vn3W94E0lKKVu8vgSZmnVoP70cfsIRrguopbSC0L4DE= -github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.5/go.mod h1:b3UwYXVSlxwwRl8frZR9eXRc3rqisD4YyHv+rZ1Xmyc= -github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2 h1:wcJGFyxaX1Msm6c2glpFYIXr9/+Aq5GP1gLX7NBPoNw= -github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.2/go.mod h1:EWCvUfz0rkfBfd/2s6Jj8DBT/PilQ/ClD/EByti+JKA= -github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7 h1:jq2n7Z+SUcKFK8zR4lmELte9rgX59HtBqQUBg2DhTYU= -github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.7/go.mod h1:Sl6QugaUidIUBpGqzz5EHcwx6cT918H/mnQKNHTyAdc= -github.com/aws/aws-sdk-go-v2/service/oam v1.15.7 h1:gy/9lznIWLyAxokvjktoXNHpmLz8f7Fl/jUrdXdWbGk= -github.com/aws/aws-sdk-go-v2/service/oam v1.15.7/go.mod h1:Rh8Jc91inXNMdoRQk/ETf3waaqde2ZgaBFMyUKC10ko= -github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0 h1:rjJ9MjX7jObSSxrBK1IU7bkHD6iudbhKTZie4eSHoBo= -github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.0/go.mod h1:f2qp9ZzFIyhStNsVqT09BQbw5K13qEYYMTB9WNNWtDs= -github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4 h1:+igfh7CHy9+DAnTtTsC1ZIcfkCn/8r+ESK+/+NQj4bk= -github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.4/go.mod h1:pyPPjpS52Akb5g9Y1Sy1eNqWud1ZDDjhe/cLrBfrvyo= -github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7 h1:JHabLpXH1A2IkaLYccQwC2TBnKLm2b3uSKvAu9N39YE= -github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.7/go.mod h1:ddJLpQoIwK18NaELU6CxxgLnzYdAyzfGEGBwudjbJgo= -github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1 h1:hwEq/kMSSM22O+zD8Di/lmyU/YVT4EPybIgso87KbYo= -github.com/aws/aws-sdk-go-v2/service/organizations v1.36.1/go.mod h1:SVY+doFrL3KTvVMWzFLKvD7KYQ6GQfwNRPSQS7eA3cA= -github.com/aws/aws-sdk-go-v2/service/osis v1.14.7 h1:K37+ch2PxHJVWg1NRfVebstqZvicwfPPHQuXmwznbqw= -github.com/aws/aws-sdk-go-v2/service/osis v1.14.7/go.mod h1:TRjW1OYREjDpa4Z8pn5Axm6SFPdP2FVcy+jX5eyX3XY= -github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2 h1:OpS3l/leIv8pbK1zaeoZ5WzzTojbLN8zdK8inc37bMM= -github.com/aws/aws-sdk-go-v2/service/outposts v1.47.2/go.mod h1:5X4a801ISjSwj+2Wq5FVicytit172Cdy7Clwia8l3Q0= -github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2 h1:FShkGVtnQNoezF2amvLfP47k7t/TcwwnXPihC1dpw5s= -github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.2/go.mod h1:mGR1OiBn//5KaxFrLLMwoMDiMeKD07ifB/YaHpYFsFI= -github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7 h1:LOvtIRHTybPxw6Q57GpPxmNaD1dn3I8oK9aYD2ZBRmE= -github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.7/go.mod h1:3BgmxWQ8Z4E2uyTWXp610jzZ4ohM0vk4ECRTiquMusM= -github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8 h1:Ir7mcDtBOJObLKHl/FXB2eRPuWgsDoZNIq8lfVNuJ+Y= -github.com/aws/aws-sdk-go-v2/service/pcs v1.2.8/go.mod h1:LI8eDIEw9SSDuQp2D3UDB6+LZtfs3oraCFoCuf5NHQE= -github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7 h1:SZq67/WO334eVG9JqpGZ8uT2ozLV8eX4KWXOXncVmT4= -github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.7/go.mod h1:8vy9a2PeHCuidO1JTs7iII3BB9WHA4VRlpgHP04mR8c= -github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2 h1:JijCnewV7KgxgzohNUqCrkH8AU1asAC3Gna0+O9lC6Q= -github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.2/go.mod h1:Aj5x9nXOR2FuuPVcPVlEQnEaliM7Sy08MKxmy40ZQck= -github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5 h1:W0cvpLbDGJIctaEWbClBT6oLNdiUUsEmq4CMm00cLMs= -github.com/aws/aws-sdk-go-v2/service/pipes v1.18.5/go.mod h1:D3p7y45dr9Vgx5sIVD/PxnTwIcbjmlboTHv4GMP7Qsk= -github.com/aws/aws-sdk-go-v2/service/polly v1.45.8 h1:qP67eGQ8myAxyd9+ZA6AZc0nYFmEOBwi7zrC5Aj0DFg= -github.com/aws/aws-sdk-go-v2/service/polly v1.45.8/go.mod h1:Bn1paZpSkDKa1vVJcx5DnDZOFMxMrgR7s74igJuhMTk= -github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7 h1:9UDHX1ZgcXUTAGcyxmw04r/6OVG/aUpQ7dZUziR+vTM= -github.com/aws/aws-sdk-go-v2/service/pricing v1.32.7/go.mod h1:68s1DYctoo30LibzEY6gLajXbQEhxpn49+zYFy+Q5Xs= -github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0 h1:Kso/qtJxdA8weHZiidLoeQDn5xYQhjRGd0QGtR637LE= -github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.0/go.mod h1:cmW8VmRWKpSEhqy70H3+QCFfHcTguZMZphBIdqcWsIo= -github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7 h1:TWJzwB7S/SBBVitz/0HtdB7pqyf1iv9OUCQ6qeYob5Q= -github.com/aws/aws-sdk-go-v2/service/qldb v1.25.7/go.mod h1:8AyevnOHnUsSNTlqH723oxU2hGgIdhVsUjtDS6JIi8w= -github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0 h1:uQXH8RFPBteSygrsYvNumyFSN8USfdKSfpo8sIGwbdM= -github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.0/go.mod h1:GE3TPXNfQ2OETAUjwhnFl3CYWqzF9SPB1sJjeUSOkJA= -github.com/aws/aws-sdk-go-v2/service/ram v1.29.7 h1:c6XYrBzh3J8J5Vaxcj4fbfuzDtKv7Blg/bYmd12PG44= -github.com/aws/aws-sdk-go-v2/service/ram v1.29.7/go.mod h1:Znaic26hqqKZ3mmG+UA8aLdnWrOYmkdHUd5KoT/DzGY= -github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1 h1:4w3T6RGy/jrGrup/o9WwtVXEWbwbL/up/+dPaGR5IfU= -github.com/aws/aws-sdk-go-v2/service/rbin v1.21.1/go.mod h1:R1qdIYNn+b3mrEkq9r7jM7FVpgGDeOkeYVr3Poc+95g= -github.com/aws/aws-sdk-go-v2/service/rds v1.93.0 h1:jIqOqvzMvmcHgwjPwHvxPCiLV1P2+hPoBwEH8wkfbZ4= -github.com/aws/aws-sdk-go-v2/service/rds v1.93.0/go.mod h1:ADD2uROOoEIXjbjDPEvDDZWnGmfKFYMddgKwG5RlBGw= -github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0 h1:4/hmROBioc89sKlMVjHgOaH92zAkrAAMZR3BIvYwyD0= -github.com/aws/aws-sdk-go-v2/service/redshift v1.53.0/go.mod h1:UydVhUJOB/DaCJWiaBkPlvuzvWVcUlgbS2Bxn33bcKI= -github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4 h1:A0vlEMhhjNwiDuSeyqCV5E+nKi71xB7JEZ3zmSk9C2o= -github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.4/go.mod h1:D22t6rKMIQkle+JZOeXSyPbhluGCmp64qfBYnJciyNo= -github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0 h1:g72Z/eRmA5dK2v6LCw5hwPpCLI36bbgyIQkUS4KlCPM= -github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.0/go.mod h1:HR4+m/4+W7RiaFMme0p6Y5dV7bDKhAIn8UiiZfWJVXg= -github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8 h1:K21+kYo7APUzqhc6pvCxHWAGxdyaxJqnEfBSySbFlGM= -github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.8/go.mod h1:LIrvj+qa6+K+FfiOFv/DXgmBxDU/LCZebFYulAITgps= -github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0 h1:/5/8lHaUP02qAlDUnr3mDMxnFvtOxx7OvZkwvt0JsIE= -github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.0/go.mod h1:6M1A4+fuybF+twN7Ch53fSEb0jdQAnDl7SjEQOdJQrE= -github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2 h1:vqsk41T4OS50+uU4oYh6YWXjX+wMV8j6fbxMD+xkHXg= -github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.2/go.mod h1:TsghsVk15IIlBkv5onzATu0Efu4xd8Xqh1QsQRCFoQU= -github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7 h1:gj5YZ+wn0LpNlqapkn6mEc3Af3w3G79RPh2eT7Os/zc= -github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.7/go.mod h1:XngsyfRxK0KbWSC3WIP+YacPE4HoSm4GDpRWiwtQAfQ= -github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7 h1:xQUVjSepDh2F1BUH9Fyxam3YLnYpehb4qzdvdo6sBcY= -github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.7/go.mod h1:XklDWgTWh+O/pQRDMSmh6AJaTFYswRsQ+o5XjwBP2+c= -github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7 h1:M49WXIllz0oLeFxvvEfZvb+FPMfhN9nnDH/Bdiyjf4k= -github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.7/go.mod h1:cb8Aygy/+Ap36c0StMfVnUBCLked9v65w7i/ShJLTLs= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3 h1:pDBrvz7CMK381q5U+nPqtSQZZid5z1XH8lsI6kHNcSY= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.3/go.mod h1:rDMeB13C/RS0/zw68RQD4LLiWChf5tZBKjEQmjtHa/c= -github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0 h1:D7xRgsQnKiC/BQOVfG9DrsdRo2PIPwCwgHb6EpKLjFQ= -github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.0/go.mod h1:c4Zcr9bz35UJ07RC3cR/zBdpFn7ZjZqy/ow+oN0+NEo= -github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7 h1:6SZ8kRmQE278KIJXq4cLdlOgO7nvlxgn6BNZRIIuyFQ= -github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.7/go.mod h1:RFwYVDBuEI0U+vxTP5m5lGgGe9Wo2kagynHfxTl2fWU= -github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7 h1:/NwKq9S1DBMAIYNamv9kBz0fwuqnILphCnilPMO48Yc= -github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.7/go.mod h1:Qalb81pBJbyuXB8Z1JbrOs8ZB8pbLwTTfR/L+ssPP2k= -github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7 h1:uozag7wGE9PbM/rESMnnXkBqPpOR/UtSpUSUB5Knl6M= -github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.7/go.mod h1:aC09Jm/A1wGiFkMs2BDU5IvGL6V26xIgJKQbM1VyXrA= -github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2 h1:9YaCGPw0s0qmxlyPujSe6LWqmtjfouTIRXrEtiJyHaw= -github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.2/go.mod h1:m0CMmlFRzCrscSzjkH7GOPstcuKhgJCgK2153O2bP1I= -github.com/aws/aws-sdk-go-v2/service/rum v1.21.7 h1:AEl97eESj/H7fjtDH1dNyUCXHH2Dj16o2JYXLePaRH0= -github.com/aws/aws-sdk-go-v2/service/rum v1.21.7/go.mod h1:D54Xit4pURxcusZV7N1/J9U+/1LSTA2wmrAb2zAJhdA= -github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0 h1:nyuzXooUNJexRT0Oy0UQY6AhOzxPxhtt4DcBIHyCnmw= -github.com/aws/aws-sdk-go-v2/service/s3 v1.71.0/go.mod h1:sT/iQz8JK3u/5gZkT+Hmr7GzVZehUMkRZpOaAwYXeGY= -github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0 h1:tH6HJdKj1O5N8Uti8D2X20JYoDe9ZdC827iY92U+Ooo= -github.com/aws/aws-sdk-go-v2/service/s3control v1.52.0/go.mod h1:sAOVMYapLSs3nCfdQo63qfVkKHlu97oqHDPrRbqayNg= -github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7 h1:yUuN4xIlI/2bUqniq5OdIw13FIGtUdPhzU4dzl2v6fM= -github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.7/go.mod h1:yCIumXPHLHsjmrD8P9UvXFVT0R9R+Wlqut71bW5+ZY4= -github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0 h1:akXaBXvSIT3ca7Ojnc1TX+2pTK6lhyodZTYTrdUD6Vc= -github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.0/go.mod h1:X85zeZUOEsqLnH/CShIydM9ANVMwXHL1A/pvTMSQw6U= -github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0 h1:keGexhxWOl6TmtE3QI+ofpgFIgdMLc3lfkwgjuSXe1o= -github.com/aws/aws-sdk-go-v2/service/sagemaker v1.169.0/go.mod h1:LoIh7abCP1rQng1kxJVJOTux55TaYN2tVN7G+zNbhus= -github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8 h1:/3jd7Xm88RYeYpfInSUMCLF+zVgfYK8N5xWPlj05vS4= -github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.8/go.mod h1:hCwaxwoPRJmODF1jv6HvbUyT9q7Ak43LesgkvNvZ0PI= -github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8 h1:9TVRGRx70yb6sa0QHQiASkQJvi/7yyHjSgacjqtuoGs= -github.com/aws/aws-sdk-go-v2/service/schemas v1.28.8/go.mod h1:e2l9QQlF3fXpXQp/eOaiAY8eVIk/JZX4Ood3FFMSGa8= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7 h1:Nyfbgei75bohfmZNxgN27i528dGYVzqWJGlAO6lzXy8= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.7/go.mod h1:FG4p/DciRxPgjA+BEOlwRHN0iA8hX2h9g5buSy3cTDA= -github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0 h1:nMhvHZ3rqAVJEf6nQzhPFJxd1Ta2V5irglgO6LxefZQ= -github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.0/go.mod h1:vcK9C11qfED/CA+tpAVXNzUNdHMIi6YkG2SY4rJeWzQ= -github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5 h1:nwqNHhr5lUPJu7+xguOlyHzT8/mWvzq/sAalls7Z2lg= -github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.5/go.mod h1:5ouEhyGzNtLjT3iWieBp4haVCzL3O+L/WACksBRvGmc= -github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7 h1:nwt36WJvLlHVvWsMJ6I9kXL9PDdHymiMX1wGbC9XV70= -github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.7/go.mod h1:ebAPCdcVdlTh+1dJqKJZ9nqaaW9fvVmUsDhgd5mu5uU= -github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7 h1:5wifyBACWZHZQ2Qgfs4rhJn5+pDDwLADqPKZDjdrhuY= -github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.7/go.mod h1:yKI83wCV2CPuFQC8xrt8pzAiemWUsz7NKFZEOJBO+Og= -github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7 h1:uUMAVnxMbdZNkIYjSa0x33AQQ7d/FctnXacslwqHV20= -github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.7/go.mod h1:6lOlu/wGdOPV5TwZ4gPZWDb0y1PtzN+jaUWL++ocCx8= -github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0 h1:e1QcVk0DcUPLPUjnBC3A+Z5kvDc0Sqp3jWQvhjGEwSE= -github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.0/go.mod h1:YMM+e0OfZQVBpTJs+WNZWP/hdodeWnepXgancR5NFFw= -github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7 h1:MpCqFu4StEaeuKFfcfHBr+a6I2ZG+GgiNZqKa5gBHI8= -github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.7/go.mod h1:Idae0gtkk4euj6ncytZGgDkkyZKmkFasf1mbZZ0RA6s= -github.com/aws/aws-sdk-go-v2/service/ses v1.29.1 h1:2e4bmSER1FF330Xu8p0nwnV4Ctdb0VzLQPUV15xs3iY= -github.com/aws/aws-sdk-go-v2/service/ses v1.29.1/go.mod h1:axmD03yvc8MIBcQkETvptcdw+wySwdc8MpYzQixku2w= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0 h1:iZSAegNa3SPiSAtEdgk/YjkvxewlWZmFmeV5jRWKors= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.0/go.mod h1:3HwKVNBED+1798uQndpI+aYLKjw7gutYS3rur2GQEDY= -github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1 h1:EsBALm4m1lGz5riWufNKWguTFOt7Nze7m0wVIzIq8wU= -github.com/aws/aws-sdk-go-v2/service/sfn v1.34.1/go.mod h1:svXjjW4/t8lsSJa4+AUxYPevCzfw3m+z8sk4XcSsosU= -github.com/aws/aws-sdk-go-v2/service/shield v1.29.7 h1:S4nh0xUMZyNkhm7R5r2ITaa966JUYklMGug5LQHWefk= -github.com/aws/aws-sdk-go-v2/service/shield v1.29.7/go.mod h1:YebUyWBs2+7W+ybtLOJp/cvCqi9pqIwS8J2Zkn70Tls= -github.com/aws/aws-sdk-go-v2/service/signer v1.26.7 h1:lFV4EORSh0nyu8KkVp6Esw9A4nQqJ7kKdJT4IB7ods0= -github.com/aws/aws-sdk-go-v2/service/signer v1.26.7/go.mod h1:SVmnmYEocWBuQQhmyACYG1nDoWaMUpBQsgUkPa9v6WU= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.7 h1:N3o8mXK6/MP24BtD9sb51omEO9J9cgPM3Ughc293dZc= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.7/go.mod h1:AAHZydTB8/V2zn3WNwjLXBK1RAcSEpDNmFfrmjvrJQg= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2 h1:mFLfxLZB/TVQwNJAYox4WaxpIu+dFVIcExrmRmRCOhw= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.2/go.mod h1:GnvfTdlvcpD+or3oslHPOn4Mu6KaCwlCp+0p0oqWnrM= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1 h1:cfVjoEwOMOJOI6VoRQua0nI0KjZV9EAnR8bKaMeSppE= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.1/go.mod h1:fGHwAnTdNrLKhgl+UEeq9uEL4n3Ng4MJucA+7Xi3sC4= -github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7 h1:9C399gf+xBWcnc88jYMdJXuDIUD4Cx0GgWgNwLkw7sQ= -github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.7/go.mod h1:s66Ty5zVYIbHuUl9Qv1jKyGPviLi1JCyMUITScR9eTs= -github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7 h1:oaL9ihEn6IFAj7B2TMsHl5FWDD7mtzVP4cLuAixRZyA= -github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.7/go.mod h1:V8XcDjqhMDjAKPMbMVHhIdlxq4XmE38TrCnUPqVc7UE= -github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1 h1:VVR6LIH9dWS+yjm65SirUAOq/AslPI0pHyKAcYblDBQ= -github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.1/go.mod h1:T8ZPwRPFsWMZRMdGRI8A//XEB8LO6rmg10HzcdJtPQI= -github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7 h1:G/RD7kQlR7Kn+4zkXDX2zNGI35h+vITgfxXR836n3nY= -github.com/aws/aws-sdk-go-v2/service/ssmsap v1.18.7/go.mod h1:S74L321WjjyiND/iV5Ogc6FTPVKFlWfdvHu4kg3Wl8U= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.7 h1:rLnYAfXQ3YAccocshIH5mzNNwZBkBo+bP6EhIxak6Hw= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.7/go.mod h1:ZHtuQJ6t9A/+YDuxOLnbryAmITtr8UysSny3qcyvJTc= -github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7 h1:X+5QChV4btPAoTpQ/GAcEJ1tCrpO6Y8X4C5CG11WNWI= -github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.7/go.mod h1:LYMBcQuhPc6czFaQpYC9JAcEcMf1DNVie4YHg6iC240= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6 h1:JnhTZR3PiYDNKlXy50/pNeix9aGMo6lLpXwJ1mw8MD4= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.6/go.mod h1:URronUEGfXZN1VpdktPSD1EkAL9mfrV+2F4sjH38qOY= -github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7 h1:InM09Qs5JI3JIAFhn+rSUCntQYzxCWjxbhO4ClleGK0= -github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.7/go.mod h1:ilUpGJkGtgY4Wm/A0RMUualrpaLeNqKVK+v6IneCKEU= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.2 h1:s4074ZO1Hk8qv65GqNXqDjmkf4HSQqJukaLuuW0TpDA= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.2/go.mod h1:mVggCnIWoM09jP71Wh+ea7+5gAp53q+49wDFs1SW5z8= -github.com/aws/aws-sdk-go-v2/service/swf v1.27.8 h1:uOj2sgPJAhL/SGgWo+eXS6BwzSvf1b1aU7j3EXjnk88= -github.com/aws/aws-sdk-go-v2/service/swf v1.27.8/go.mod h1:AvLsUcEcGmH2QWmwosGAMkBqRrsI0Jr2x92clBtul9s= -github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0 h1:1xNsirfhnLd8DKsfPWrJK5T+KCV4CaYH8SYzgiklKWM= -github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.0/go.mod h1:S/mI+GqL6A6JNbKqu0M9qKop3LOE6X96OzXdJX0rO6w= -github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1 h1:eJp5OnMaO41jYGwemZSOtmWf2g/TSAYfWEQDfZ6yBP4= -github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.1/go.mod h1:izz7C90kWSbYfURLt+atG6pdCvOP3AFjGEznRf0YgGw= -github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0 h1:Cqjh7UV5nW8VXuvpwtlpboGn7az0PjpQuaWdQbBMgzY= -github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.0/go.mod h1:oIpMQLOrjkZVCZl0ff5cDgE/zZuFE4PwVb61+2fkELk= -github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1 h1:nfS8q82YuHG8pks28bGSAqy9R44XBLM72jcKDqRG7ak= -github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.1/go.mod h1:PJ9MdxcmYoM5bLKzp92fdGooNWHTDMhuC4TGJ3peY7c= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8 h1:chzp64fl/hknlRR9jlstQDB4bYaf848v7KmzUB13omA= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.8/go.mod h1:6r72p62vXJL+0VTgk9rVV7i9+C0qTcx+HuL56XT9Pus= -github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7 h1:KJ5CkGw76hEoR66sJRZFgiRGxtybWGuQgvnJ+Q6qTtA= -github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.7/go.mod h1:BwUrZHaN6ruqmc8+b12wWhJ6fHqLrkZ0Z214feUqWWM= -github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0 h1:2JFcCNsaT1ykArnJ7B6fFjE4H4OJtT38vHpsufjLvoY= -github.com/aws/aws-sdk-go-v2/service/transfer v1.55.0/go.mod h1:UV0UI3xdWUkyarrq5gViMKtXx4EWBKQsSpPxc+rdJCA= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3 h1:3HJY3Fym+WfG/BQmrrGq5hS80th6Vlx3VM2ZyaH41Lo= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.3/go.mod h1:myoi8VQCWyHnkfxRjkM1H5lFQilgGXbU2ulwAVqxeow= -github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2 h1:AccQsc7IIvDFoQ+ufWB04NQ1Ebgzf6rNAbN7fxkt57g= -github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.2/go.mod h1:LLTXSn+ChGS/Ejt+akSlR0QBJ2VJVibiKQfp/IovK7Q= -github.com/aws/aws-sdk-go-v2/service/waf v1.25.7 h1:QatDy5lb2iXs9GPxuPSRDogX2HesmmUXu0GCDCQ7exQ= -github.com/aws/aws-sdk-go-v2/service/waf v1.25.7/go.mod h1:Jx83wxDXt4tq2UEhy4ODhqgpb6NBkQRs4TSkcHfBPcg= -github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7 h1:9V+YZqYy+FvDzZF16xXE7IWYlNWJKurMay7HC+ZGm0A= -github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.7/go.mod h1:gB1OOPydtleVh7rcCj8fgoNfi6/4chzyP6aereNH3tA= -github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6 h1:cK66ajiEQ2+eVezj6SMetpTohM1TuR94nPXGbGGCHaI= -github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.6/go.mod h1:HSfXIyNzPY6UIB37eFe76S4f/YyQPbuoovY+JhEy1x8= -github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7 h1:e4VW/f+S98RAKzHZT9+gPqFhNELSobBcgVZOTl23C/o= -github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.7/go.mod h1:X1zN/DRROy1bpTCMdQqVLd4/hLaM3GbMhVURUW8F8mA= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7 h1:tB4tNw83KcajNAzaIMhkhVI2Nt8fAZd5A5ro113FEMY= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.7/go.mod h1:lvpyBGkZ3tZ9iSsUIcC2EWp+0ywa7aK3BLT+FwZi+mQ= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7 h1:EqGlayejoCRXmnVC6lXl6phCm9R2+k35e0gWsO9G5DI= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.7/go.mod h1:BTw+t+/E5F3ZnDai/wSOYM54WUVjSdewE7Jvwtb7o+w= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7 h1:8eUsivBQzZHqe/3FE+cqwfH+0p5Jo8PFM/QYQSmeZ+M= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.7/go.mod h1:kLPQvGUmxn/fqiCrDeohwG33bq2pQpGeY62yRO6Nrh0= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7 h1:Hi0KGbrnr57bEHWM0bJ1QcBzxLrL/k2DHvGYhb8+W1w= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.7/go.mod h1:wKNgWgExdjjrm4qvfbTorkvocEstaoDl4WCvGfeCy9c= +github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5 h1:C658qdjSO3wvmFXKEwbrqSD+JxBBfFseI1vIJVRLg0M= +github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.20.5/go.mod h1:7TNNDrsoVl5OxM0UEh2uX/H/3Hq59Jw3809u4bATn/4= +github.com/aws/aws-sdk-go-v2/service/iot v1.62.1 h1:3q2RRmd6BZd0jJT4719a4e+kcvSLF0dKovfLU8X3sBE= +github.com/aws/aws-sdk-go-v2/service/iot v1.62.1/go.mod h1:ue+mjRX/ouA4Rjg/83FvjEUI2ZR/410BkstnHlSL8Lw= +github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8 h1:BCvpgvJhnJDq3YS3XSs9u54Bc6ky2+2kszNgpZDNI1s= +github.com/aws/aws-sdk-go-v2/service/iotanalytics v1.26.8/go.mod h1:hVrIDoP3oRDh4VuWs89rnj+1CnoEuEBQn/M18BneVOk= +github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8 h1:xMCflrGr6J1r8z00uOQMZuOq6iBwOS4zeJPZ+KbMIHE= +github.com/aws/aws-sdk-go-v2/service/iotevents v1.27.8/go.mod h1:sDC7waf+7Q3lxdvEdYY1ci58frTsWT9BVYwub5bib/A= +github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3 h1:gbdCIgfsZzwkm3C21vxciD+Zv9HP5CfSdq3yCwdRDIA= +github.com/aws/aws-sdk-go-v2/service/ivs v1.42.3/go.mod h1:uOczxLoEa+mtK76AHYr/flGPN+Kpq6YR9ikADNLxHFA= +github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8 h1:4G+AOEXJ/rkN3mBjhCA1DcmebxNhf5gXzsBpzn+AB88= +github.com/aws/aws-sdk-go-v2/service/ivschat v1.16.8/go.mod h1:X3hx5Kcy+zbdhfM2dFIOv3USIfAxHhIkqbUoeCAljaQ= +github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9 h1:2y8YEVPTiGBPPoHBLWU+hEnbA/rLVCEWkeF9nD0ox38= +github.com/aws/aws-sdk-go-v2/service/kafka v1.38.9/go.mod h1:8BomElFc/tYQysVPwmZXFytmn2CwnxKW51HqYD2B29Q= +github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8 h1:XdYl62Iiz0BijE0Zms+d4lrDQ8SDLTjFEICHQ6StbIM= +github.com/aws/aws-sdk-go-v2/service/kafkaconnect v1.21.8/go.mod h1:oFlBQokWwNlEA7Vsx+U0/U/G30mYMuNqaA6UnQ2m4qY= +github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1 h1:EX8rYBovCNrTm7zANC5FjDrogliKi7d+9MtbYgjDhxQ= +github.com/aws/aws-sdk-go-v2/service/kendra v1.55.1/go.mod h1:uBUgXTy2ibIe6dY0/7Ku5CTE7YC3FVTFzULZot29Nro= +github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3 h1:uXRHMEF5VIW6iiG2g+90lIqAHSAR9s+kh+MmU/8T7R8= +github.com/aws/aws-sdk-go-v2/service/keyspaces v1.16.3/go.mod h1:ZjsHqse6ZuBieZOLY3AqZXSSLXnumtZNFpZnSMvfN6E= +github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9 h1:TJwtWqaszpQfHlN+gGvvYbTylBQ9KZaX3/OBI4OGZeI= +github.com/aws/aws-sdk-go-v2/service/kinesis v1.32.9/go.mod h1:WmoBj0ARg65jSdpLzavVmbMvhw6k1uyG1y4CKtdZXBs= +github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9 h1:HupfSCXSkQ4YD3seFb8bgbwHLsCKJNEQjEufp19LMMM= +github.com/aws/aws-sdk-go-v2/service/kinesisanalytics v1.25.9/go.mod h1:ch9RoDuhuStevvh1qn29mBKDDIAsuVHKZZUCobS0TFE= +github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9 h1:oydBzTZIhO5k6clmHGYgXxwOQKXrnMGt0ZHB7oky6cQ= +github.com/aws/aws-sdk-go-v2/service/kinesisanalyticsv2 v1.31.9/go.mod h1:ra9LVAr+KMfXAGN7F1qVbxX3+WZOCJqmem+iSY4qzbw= +github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8 h1:3X4gf83v8pjbh4e8obiwvU+ZqDl1U7am2c1ZxOVDftA= +github.com/aws/aws-sdk-go-v2/service/kinesisvideo v1.27.8/go.mod h1:BSLLbclyWD9LyVXHKL7E/+753lkqlBIRI8yUtPJQaWY= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.9 h1:Ns4iL+x1XB1SATmwAFzuebrn/d/7v8l4XDSR1/rEmJg= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.9/go.mod h1:ANs9kBhK4Ghj9z1W+bsr3WsNaPF71qkgd6eE6Ekol/Y= +github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2 h1:IUlID9r2gZKHN+oxQ7ph9pE0nqLgL45czJGnPapvcLE= +github.com/aws/aws-sdk-go-v2/service/lakeformation v1.39.2/go.mod h1:/8URO3jdXHx2trFkw8886/BvIymTacL7D8ycHuYly6M= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3 h1:zDBQUFed2z2nf/SuXoOh1MknV3qKOizFZMexi1zjRAw= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.3/go.mod h1:jWFEZMgQ48dPvuAWy2zcRIq8Mx/L0eO0iR1xkGR4Ov8= +github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8 h1:Kxrp+zOb2WYS4BDRS7osCBOPIK1T7OedcOytIe2I8CY= +github.com/aws/aws-sdk-go-v2/service/launchwizard v1.8.8/go.mod h1:f+ruiwPQPaXW7OnTCUn5ttZm21UvB3WKMd7PxFxaSaM= +github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8 h1:wlqWZFl1a5658FCynvBGxlZVRzwgltRkAbggFSc48Jc= +github.com/aws/aws-sdk-go-v2/service/lexmodelbuildingservice v1.28.8/go.mod h1:qIvRShof+noy6JCXF1DyhAdT0ZTl6QIEK8miw8nE4ss= +github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8 h1:pEbokMuqyrgz8KByw2yQH5Tzhw7JRotxtHVimKcI4Dw= +github.com/aws/aws-sdk-go-v2/service/lexmodelsv2 v1.49.8/go.mod h1:7BG6qQsWR6fYSCYwp4/w4EkyXn1yJ3AJeTi/uQSfCXs= +github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8 h1:z9bgL1NA0f86mMxBXuRZRCjznUK+bDslDnC0Y+SPMAI= +github.com/aws/aws-sdk-go-v2/service/licensemanager v1.29.8/go.mod h1:YjWGMia/niFFH4WNCCD8JhAVQjOap5CDAPB8UJtLgfU= +github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8 h1:+lmJoqxuUoPlSfGk5JYQQivd9YFjUvRZR6RPY+Wcx48= +github.com/aws/aws-sdk-go-v2/service/lightsail v1.42.8/go.mod h1:Gg8/myP4+rgRi4+j9gQdbOEnMtwMAUUIeXo+nKCFVj8= +github.com/aws/aws-sdk-go-v2/service/location v1.42.9 h1:MjSw2vZaHX7CWujRMxmWrKsdtpvwVt00klNxTlQpzcs= +github.com/aws/aws-sdk-go-v2/service/location v1.42.9/go.mod h1:pLV2Zo7MrlA7gimwosh4miL7IRUmRC1Glj74JHTs1Ts= +github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8 h1:MepszuUAtpru75y6R81UiltsF7dNYk90PBbDQtcOt5c= +github.com/aws/aws-sdk-go-v2/service/lookoutmetrics v1.31.8/go.mod h1:i3rtKmFIMVe0TkEOU59xpUuG/IgllBnO/4xz+CrzJi0= +github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1 h1:01gzWPcmywLIDTNsuMTMkwDd56DOpaH3ORELBFiOPJ8= +github.com/aws/aws-sdk-go-v2/service/m2 v1.19.1/go.mod h1:QmxK4noc4FpL88R5hgX00wMhJeaqwxGcXC3SxoIXoQc= +github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1 h1:BWTRwZ4JyUZl4Bo9DWp9J9SSSsq4j8Wnkb407D/AO1c= +github.com/aws/aws-sdk-go-v2/service/macie2 v1.44.1/go.mod h1:+55oP7voi8jWtWudP3C6df7b4+XEQ50rOs2/Y2P136A= +github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0 h1:uw/s4g7PlsPKV/5QHt51J3IhyrNrrKedQCa3AOASRiw= +github.com/aws/aws-sdk-go-v2/service/mediaconnect v1.37.0/go.mod h1:nQRm3vFS++fo+i1pixS31pDKDaWSMBjyVCOSL4po3ps= +github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0 h1:Uha+aj8TYrnnYjhnheLa3GniVzVbIbjnGKlKaVjK+HU= +github.com/aws/aws-sdk-go-v2/service/mediaconvert v1.65.0/go.mod h1:E7dWYdCNLQyAb8leeCcjMeG3g14nd5OO1pIYYY8drJA= +github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0 h1:L0+i3E+jALDly2q/z/CAPZTACaqZ6coA5RnKrKrWf8Y= +github.com/aws/aws-sdk-go-v2/service/medialive v1.65.0/go.mod h1:JvKDUMzVs5Np/QYqpnYGR5o66Km2e0bfWVFBh25x33Y= +github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8 h1:gXROivyJ1SVEvTy3oRwQbP7nvmVCxr83zQ4R+74mgKI= +github.com/aws/aws-sdk-go-v2/service/mediapackage v1.34.8/go.mod h1:eRrFGQ4oUTOkEJ4YSZTXbG1jdRlhQ9p7nX08phDicGw= +github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2 h1:TBq4cekBpJD7doDntY/6mSU8KyCYlh7I7i8botXmolE= +github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.20.2/go.mod h1:xa0RiLhZTd1f+3qm/eHj1lHiKtImnzt0wXYniKkk194= +github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8 h1:FWYlWiwEi74W9ApdqK1Law+kdQ5yDfPr4gUvBzKVzNg= +github.com/aws/aws-sdk-go-v2/service/mediastore v1.24.8/go.mod h1:3n5xd9tmks4+lOZI5Qh/jVetyiO2+LIqRQlrzAa15kw= +github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1 h1:Y0not2uSNLhPDs7RGIxLFkvtR56E+TI7JfQr/8i4bhs= +github.com/aws/aws-sdk-go-v2/service/memorydb v1.25.1/go.mod h1:r/zU4+MeETICHE4Itz2We1Im23jZgJ899lVfXLopalA= +github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8 h1:62m7MivjC5e+HeETKjg3bYNI0w5GP3IJxjMIzcTkgXM= +github.com/aws/aws-sdk-go-v2/service/mgn v1.32.8/go.mod h1:xPenzcQbhn1L8XuESeDl9y0i25h8n1yQJQmW5ROYpks= +github.com/aws/aws-sdk-go-v2/service/mq v1.27.9 h1:2iPHOuNL1uHTdhqqkiR6mfRK6nra/VFSFgjPQMXK0Bo= +github.com/aws/aws-sdk-go-v2/service/mq v1.27.9/go.mod h1:9oVLOIK2YboVZqZYVlvQZ28TdxLZWt5nPIiJqaDlRXE= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3 h1:QGerJikhYvOuyqPJT+6qyUk3T/KEJDE53mNeC27toA0= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.33.3/go.mod h1:gHRsqVAN4KABEf4vBdi11nNY8U4vKG38SwZHoMdCEgE= +github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8 h1:KSWRl7TUuw2O+dPD3CrDCrtOVV8Z0N13Kf5sSe1J2l8= +github.com/aws/aws-sdk-go-v2/service/neptune v1.35.8/go.mod h1:/LeVCQJBKeihOLKPtQCFgst/Lotva5fG8jLX7cwSSg4= +github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2 h1:wtg+d+NRT8yz2bMNe1ZL9HbSTfSPfr4tuRqSq61wDYI= +github.com/aws/aws-sdk-go-v2/service/neptunegraph v1.15.2/go.mod h1:mpOYkWvlMmQ1sF6S7YU9m5konYvctK2RR7cxNa31H54= +github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7 h1:QylOhJ/Cq8rXpdGY0TVDozlqlrioqhBGL8lr0humk/Y= +github.com/aws/aws-sdk-go-v2/service/networkfirewall v1.44.7/go.mod h1:JRNqD9oCs0lfhwggQ9try04MIaPU8lJ5XIufAUv49Ho= +github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3 h1:ru7v1ILijPCjR1R64RYFFpOO1MSyJqCIkikGEZYtZY8= +github.com/aws/aws-sdk-go-v2/service/networkmanager v1.32.3/go.mod h1:gwQKk95S0e8fJmDMy3CQIj3dRJOOPDjVMdMd1uwgD3w= +github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8 h1:L4XrxVqV4uAPgibh6ojLqYzFxqQOUi5ZgGeqiKZIKvo= +github.com/aws/aws-sdk-go-v2/service/networkmonitor v1.7.8/go.mod h1:vOvJO177noMda348GUujF+fVQjcyOofT30sfbpKkCjU= +github.com/aws/aws-sdk-go-v2/service/oam v1.15.9 h1:aeOfua5whEwx6fj8+YSZEdY9ey9KHeckx00O33tQcls= +github.com/aws/aws-sdk-go-v2/service/oam v1.15.9/go.mod h1:S40vS26lQ05dLf16US8N4j+KP7hhSMAiF4bnPQY+iqk= +github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2 h1:utfI7koMw9rvggZxJwMCIp9ZC2uwCDnF860Hr/Ztxo0= +github.com/aws/aws-sdk-go-v2/service/opensearch v1.45.2/go.mod h1:06sh4z8qtZg8J5hY9stqqKXcrl3kZK9HMzgd/xXjRJI= +github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5 h1:fEZyIysXAoD0jW1FC7fV858SuFsqJJpnZSUA8auRsYU= +github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.17.5/go.mod h1:FW7oTeY2uO9QTWrZcRV2bMo4yrwXusoLEcPZWeDHMHc= +github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8 h1:XMd8liE+LOaXNUebxvQHZA25vqUbx9XXJzL+aWpn7Ds= +github.com/aws/aws-sdk-go-v2/service/opsworks v1.26.8/go.mod h1:xa567cJgKGkSwhUsQ7tvC/DxPv5KJUE5CYldt++OYNA= +github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0 h1:VlfFFYSLuS7MPNyF7wf1gANoLQLhEj+Kq7ifVzl7gog= +github.com/aws/aws-sdk-go-v2/service/organizations v1.37.0/go.mod h1:5ThtlWQYo2b4sghzFmzDelaJtsW7hOct5MnpbaG8ZeU= +github.com/aws/aws-sdk-go-v2/service/osis v1.14.8 h1:C5t9VoY0Rgec9zAdzXlvXXkhj+zicGc+KhnWIROOFzc= +github.com/aws/aws-sdk-go-v2/service/osis v1.14.8/go.mod h1:eyPTDZRCYMT/LOsDMiMgB4uzGcBWX3o2DpVyvrBsCOs= +github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0 h1:Km42d7UMgQRnkrI5R7vsfaYRqEmu1nbT56UdhFuR8as= +github.com/aws/aws-sdk-go-v2/service/outposts v1.48.0/go.mod h1:W4/z6UyMkYcZ9wXH+K9NuAgORXhSSOeSf9Jy/tcnoGM= +github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3 h1:ktY4tL7IGLYYjx9PIqH+dM8gneIsFJ++Nu6n1MHu6MQ= +github.com/aws/aws-sdk-go-v2/service/paymentcryptography v1.16.3/go.mod h1:jnbiXijUeMw/egLenN/Q2YHVo3zw3k53wtHpAOh6F6Q= +github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8 h1:XG8VNHO0HovBRoumSh6aa4lE2zvcWwYGn6liEDedeXw= +github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.9.8/go.mod h1:vqmwWxk/hWuW3ShSSLHXYvsASrPVH+/gQfAT2lhXV4s= +github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9 h1:0CdL4x0u8iJowqsaH5eDPNXKBcFDO6+rZnF/3VX+osg= +github.com/aws/aws-sdk-go-v2/service/pcs v1.2.9/go.mod h1:92vnR3khCkYSXvU2CumTTml73QH/QjUVTArBKjTUtT4= +github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8 h1:2/nVs5LrrkUHx7nwR0TAMW6NM0aCDFasJiwHKP4SQQo= +github.com/aws/aws-sdk-go-v2/service/pinpoint v1.34.8/go.mod h1:eO3MBJmI02GF2b8/CUMWvAuspEjJWdznqa+R9Xb0JUA= +github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3 h1:MLoB8LW9cS/ER+gjexYAqOST0qOX4r7EYoMNwNJwur4= +github.com/aws/aws-sdk-go-v2/service/pinpointsmsvoicev2 v1.18.3/go.mod h1:qO/EXvlmYq5Ls/ItNdqYbZgfZbyF1ugH5y9/BdZzHHE= +github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6 h1:h+cn8Fh8IFQfZMy+nA7+tNinrvQB8bmg0iXo1m+QAJ0= +github.com/aws/aws-sdk-go-v2/service/pipes v1.18.6/go.mod h1:yuDWzNCsMu6a3yyyvTgz66Riha9Pm6oViFIjfdxmBPs= +github.com/aws/aws-sdk-go-v2/service/polly v1.45.9 h1:0k9cGm5XiN9yA3qX8PPQsici1C0cEnFxY5MCCMUGsBw= +github.com/aws/aws-sdk-go-v2/service/polly v1.45.9/go.mod h1:xKPCt/jbEOsKadnY4b0vhxoTzl8s52CyJ6CkZCiytCg= +github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8 h1:R3X3UwwZKYLCNVVeJ+WLefvrjI5HonYCMlf40BYvJ8E= +github.com/aws/aws-sdk-go-v2/service/pricing v1.32.8/go.mod h1:4kkTK4zhY31emmt9VGgq3S+ElECNsiI5h6bqSBt71b0= +github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2 h1:qKsrjL5pTNhjsDxnn9GNMUQPrQbXsPHuv47wVorVGlw= +github.com/aws/aws-sdk-go-v2/service/qbusiness v1.19.2/go.mod h1:Uirj9iOAsGJlIFg8nxXF9RsTvTv5D8yn5gUi4m7dKB4= +github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8 h1:J3qABofeUmWMZqqG+WyemyKxyYfo+Ktg7uyHF7Jz5H0= +github.com/aws/aws-sdk-go-v2/service/qldb v1.25.8/go.mod h1:7tOE+G8Kdo5GIeU6equqEi6olyYPybBTgDc4OPshhMI= +github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1 h1:TyaxdSPqIie56hbSgLifnw5rLA4j3Dw2T3gYfhmCyFM= +github.com/aws/aws-sdk-go-v2/service/quicksight v1.82.1/go.mod h1:+I/OWby3QufWpnAQqjgLKV4ZqEiUkXJ84miM7nE/MiU= +github.com/aws/aws-sdk-go-v2/service/ram v1.29.9 h1:OCzlUYDSoCgRvIXXKsfOR3DcRc5qY0pL7l4C8n5VnS0= +github.com/aws/aws-sdk-go-v2/service/ram v1.29.9/go.mod h1:AfzjV8GA6ZIolmqP4UrZX9OXKJeCH8xQKwI12T+HbCU= +github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4 h1:4c4/PPssf19JGLM7oy9PT0e4Xdg0T484UzAgANIbnaE= +github.com/aws/aws-sdk-go-v2/service/rbin v1.21.4/go.mod h1:bDv9F4WCfs6gGlvVCNAWgrIN4vuRdmfNafdvLjnI/Vc= +github.com/aws/aws-sdk-go-v2/service/rds v1.93.3 h1:3QUDP8cX4iV1DEzl5dWLuMxa0DDZkjzSJbi6z/w1x74= +github.com/aws/aws-sdk-go-v2/service/rds v1.93.3/go.mod h1:QEpwiX4BS6nos2d/ele6gRGalNW0Hzc1TZMmhkywQb0= +github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2 h1:9JzuUkDm6o66Jblgqg3RHeCC4eUmICmKDXwTyeZ9VEQ= +github.com/aws/aws-sdk-go-v2/service/redshift v1.53.2/go.mod h1:Uz+PdLUo8+x/iXFrZGc+j+w/AVAfc7Qmju9XjCiQGHE= +github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5 h1:xQLNC+ens3y94XQF/AnwOhMBY2znloIKqBksGrCDH0c= +github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.31.5/go.mod h1:ihiYNUYpUX0Q+az297JaPqZ15p9r7+LwcXPqP1u3Fyo= +github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1 h1:anb79RuKbIO8z+SgNiDGCQln5CBI3Edzp9mXTAcZuNg= +github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.25.1/go.mod h1:u4NPdVb3te3+QB4rdjFGE9Of4V3vPqrPbTk6fAR6qf8= +github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9 h1:TXVrfsRN83O2z0pdnyhsCEZiutR6/49MjXsBhOniHR4= +github.com/aws/aws-sdk-go-v2/service/rekognition v1.45.9/go.mod h1:r7S+8caIe63Cor0D7w0iWFXFTVT1YqTCDZLPdRv4fkA= +github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1 h1:aU2V0g/F2f/monQf9546ObCOUVzV4T97zRL7QBjIbcY= +github.com/aws/aws-sdk-go-v2/service/resiliencehub v1.29.1/go.mod h1:iN7xxx0rr5JNw/edT/UwkH5iuELKh0n+OzCO8mTMQqQ= +github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3 h1:9gN8CVlfJRLcNpHyBJa9s6+evPQ+64et7cSDSHkWP0c= +github.com/aws/aws-sdk-go-v2/service/resourceexplorer2 v1.16.3/go.mod h1:d5IKn6skI7qW9+lJ6yxMSWAsBaRfRrFvd5d768m+0H4= +github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9 h1:7FPUGi+wjKYw/EduqdEH3+NGGAuMydF9aGgkhEGmwZk= +github.com/aws/aws-sdk-go-v2/service/resourcegroups v1.27.9/go.mod h1:qMPl/jD9Inr5YPP4Tehm1gUq9r558c7HfxBVYYudDLI= +github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9 h1:g/ty7BdvFKYLnKGuaBOFc+vxHdCiqKqOKlK78ynmyqw= +github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.25.9/go.mod h1:+34YBpm8pl2Zzg9ZB5z0Ix/FIcR06yUoJSr2sEOi+wI= +github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8 h1:UZGvejgPVw0Qhwt3Kua0XC+7N8aAdH62KCd1yDJJv38= +github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.16.8/go.mod h1:xgh2UyLblHo40RL4po9e7D1iHfAsA85SxtbfdlDN7pk= +github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0 h1:NcZIXk9jGPGVG4wa+xR8gpcOk9sCR/BaMTAEYpzqs8Y= +github.com/aws/aws-sdk-go-v2/service/route53 v1.47.0/go.mod h1:xlMODgumb0Pp8bzfpojqelDrf8SL9rb5ovwmwKJl+oU= +github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2 h1:IH+UWySP8buYbojqBKwOGOZN6zpAc4sd8gTDLEJYl74= +github.com/aws/aws-sdk-go-v2/service/route53domains v1.28.2/go.mod h1:kbxY8XfDPZYpcBqQtezB8r1DqZWgCydOSmgoKcTjvf4= +github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8 h1:U1hxHsKRnTh4tI8Ntv0MOsaOH+MdClktUjz0UDcvcPc= +github.com/aws/aws-sdk-go-v2/service/route53profiles v1.4.8/go.mod h1:AitHbOsoMtRWbTE62FvieGF8JMaKcWIMsWV+MgOYn+U= +github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8 h1:gMqOTyw8VBzA6O/4jdZ7VyZd9+U4DtO/YfOayBOpwsw= +github.com/aws/aws-sdk-go-v2/service/route53recoverycontrolconfig v1.25.8/go.mod h1:405W+ejlUiDQKcVgyT8TZ5RI4zK99EPtZfshUlbt4IA= +github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8 h1:dKhXveDXJHHDRNSIvcep+3OpKkMvHW6Bpc1YvxmlvNk= +github.com/aws/aws-sdk-go-v2/service/route53recoveryreadiness v1.21.8/go.mod h1:h7qiFeePkUcitvF22CPyvUWadKuGTkYIJxzojt7T/do= +github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4 h1:FwXUUubNQFB4nDl1XuOJVHc0QW5hiQyzXOIUrLH2XmM= +github.com/aws/aws-sdk-go-v2/service/route53resolver v1.34.4/go.mod h1:vYD7xWxRn4FA2LL0zRgiP4GQZPev0VIuKWOYPdU7LEU= +github.com/aws/aws-sdk-go-v2/service/rum v1.21.8 h1:PsjsKI4htYgVNS7SkrvDamC1pudlKdebfKKfT+B+p0k= +github.com/aws/aws-sdk-go-v2/service/rum v1.21.8/go.mod h1:2k7Pf5TV51+bdYg994/m6Pg9pDEU3/75ljg0twzfeqc= +github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1 h1:+IrM0EXV6ozLqJs3Kq2iwQGJBWmgRiYBXWETQQUMZRY= +github.com/aws/aws-sdk-go-v2/service/s3 v1.72.1/go.mod h1:r+xl5yzMk9083rMR+sJ5TYj9Tihvf/l1oxzZXDgGj2Q= +github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2 h1:waRy4WnrQyfdAMR5HvVsftcQ+26m1Y++08B5ZHydJ98= +github.com/aws/aws-sdk-go-v2/service/s3control v1.52.2/go.mod h1:6BuUa52of67a+ri/poTH82XiL+rTGQWUPZCmf2cfVHI= +github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8 h1:47G52E232ytagHeaPcTIxd8GaVstyT4fKS9CrVRWbXM= +github.com/aws/aws-sdk-go-v2/service/s3outposts v1.28.8/go.mod h1:S8Tj7PrDEe6SceyPy1I4i7oXlaqViwk4ul7uHT9J2Eg= +github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1 h1:lYUf+JdG7N/AulNkJMBltvXf1noXA2VXEq7nh2f8ozU= +github.com/aws/aws-sdk-go-v2/service/s3tables v1.0.1/go.mod h1:LfkUcn8gnPNKpiN+A+b3zD6Gtw7Vu1LNlnBZAOd4N9E= +github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0 h1:+DtF9wWdcnKeLc4xMGX2gWkEJkR6+Zl3sUwu7G9xlTo= +github.com/aws/aws-sdk-go-v2/service/sagemaker v1.172.0/go.mod h1:hzu5ncs1K7l08GCup8WRVxw/uqgw1BQLDyfVomRM3sY= +github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9 h1:isM0cEE6tsKx0nN8PN6mD5KE875ZoXpBOyuhVg9eizw= +github.com/aws/aws-sdk-go-v2/service/scheduler v1.12.9/go.mod h1:GjSCVTlF0mOfHmQCl1MKcQIwmMOX4HYkKO3twXbm8+k= +github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9 h1:/GpTD05rBAVsnlnK+8uTTystVVb/tcCumvdvUhgwDAo= +github.com/aws/aws-sdk-go-v2/service/schemas v1.28.9/go.mod h1:IRe+k7OfDTrD2RxhMOAODUwXRBASXnLM2MX4wabsnxY= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9 h1:cyAt42tqeT06dSOziRmdt91iDylhP7aA6YJGeOkNe5g= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.9/go.mod h1:By/yiMzR0yfhPaqRWE3GrT9B/Z6871z1GfWGc+vf4Y8= +github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2 h1:K19T0ydEbAyKXb6azjJVCGke1xJ/fzOG8skUhrh8vyI= +github.com/aws/aws-sdk-go-v2/service/securityhub v1.55.2/go.mod h1:ezzhWuvK3dRgRtC9vvG9z1SaHq/POpD9BEfdXnpqkqs= +github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6 h1:EZUXhlRiuZFLmk4N7++pjyJKkgs/x/fD6EsRRMj4Coo= +github.com/aws/aws-sdk-go-v2/service/securitylake v1.19.6/go.mod h1:qvFMAMHEVtP2qwu4M5VbQutgIe0S0SHuwMneTq8gpdg= +github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8 h1:GhSS70WVmuUeFaW8d5ZvHtSJHtmXq9rNGb3EWPhyzms= +github.com/aws/aws-sdk-go-v2/service/serverlessapplicationrepository v1.24.8/go.mod h1:pe/aMwX4FiFdBCOAIGeP3y23znd52BtasZmfQRlLl2M= +github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8 h1:uDR8FMmsEd/g+eihjeXze1nJvGZOBYWJXdEutY++wnw= +github.com/aws/aws-sdk-go-v2/service/servicecatalog v1.32.8/go.mod h1:8ugnqCHkdv41d2Mo5F/mdPtaXauABVDYL3kV9U7LNbM= +github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8 h1:G9LHlcpsxE3028FETYM+y3DkMTR7Go9lPTP7L8emf1g= +github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.30.8/go.mod h1:PqH0Z4nbCtd1+zDrMTxLK+v4JaYdHSDzZb+FurGamcs= +github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2 h1:Gh/WPDtrIOTpnyGpykNeh6/Ctyc7K7I0Xh8JMrRqur8= +github.com/aws/aws-sdk-go-v2/service/servicediscovery v1.34.2/go.mod h1:KmNFSoNNh6qNFUCfNAVf3yW+gZXgEPc//PGttodQ1KU= +github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9 h1:JzK+RjrvPO/r6MpSY8HVoAPZxMAdrXLjUG7REKfejI8= +github.com/aws/aws-sdk-go-v2/service/servicequotas v1.25.9/go.mod h1:l6nMNVvoAEbRczyvXiYGChtzbm3UuZdrbMW7/FWelI0= +github.com/aws/aws-sdk-go-v2/service/ses v1.29.2 h1:ezumdYONyhe5B4OvSZxQfqfSyKW9kjekr56u1UjQmys= +github.com/aws/aws-sdk-go-v2/service/ses v1.29.2/go.mod h1:ByuC9jwCXWra9D1ME4Y6nh4mGXcFN8E3pikGlut8GHM= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1 h1:Yt8nLB7tGDz2tBACAvJpHHSMJ/JsFw4I2NqQI7wV8aE= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.40.1/go.mod h1:cwwQDQ0T1QgDRKyGU55qWLGg8BIij8oKKaYEjR1/U8o= +github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3 h1:pq+ygah6FFS4+rNW8t1gf/EyyvSKi0MnrqZhFyMYgwU= +github.com/aws/aws-sdk-go-v2/service/sfn v1.34.3/go.mod h1:XgAc621jHVwTQOS1gUHPPA1E2CdXwR5Pc9Pfg0+Oy0U= +github.com/aws/aws-sdk-go-v2/service/shield v1.29.8 h1:H5urm641txrisNK7AOXVVR3FdG/dGg+CpekseU5BgZk= +github.com/aws/aws-sdk-go-v2/service/shield v1.29.8/go.mod h1:fl0FdAKddek5SfmZAINtCgq0IQohtrQMpAIszgQIVjs= +github.com/aws/aws-sdk-go-v2/service/signer v1.26.8 h1:9nTp3RxyVLBMJH9N0u3EQ/WEDbA93jE6KjTQw52PA/c= +github.com/aws/aws-sdk-go-v2/service/signer v1.26.8/go.mod h1:c6Gw9xkSr+2GnDQ/s49eVp121Ahm4mZXWGjLrbzeUbA= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.9 h1:2XGaTUSuMEq0rPP7/h9s5c/v8mXVP1wtiRlF8OTHN70= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.9/go.mod h1:Nf9YEyqE51C+Dyj0DWSATxvsr39jBFIss6Jee9Hyqx4= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5 h1:gZp0bvAYAcjXOCkOURI1zqgG7qthhenNl9po+4sGL6A= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.5/go.mod h1:171mrsbgz6DahPMnLJzQiH3bXXrdsWhpE9USZiM19Lk= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3 h1:QMx9lj524IOWjI1IpmcXSkHaazGBzTPgBmECzbppF5s= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.3/go.mod h1:RKWoqC9FlgMCkrfVOtgfqfwdaUIaq8H93UAt4xNaR0A= +github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8 h1:PlcN/0lYOntA8seGJ0pEhVXYAXekUt2cQyIx9PV3+Y8= +github.com/aws/aws-sdk-go-v2/service/ssmcontacts v1.26.8/go.mod h1:CGeBTRZpsHvmOrHyCceuAPseVpJsyq0eMOo0Fu+4WgE= +github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8 h1:n88gB3+H7m6/4osKsHiI0r1CfAEAB7rfDtMXuOqVcnY= +github.com/aws/aws-sdk-go-v2/service/ssmincidents v1.34.8/go.mod h1:51SxJSOKmflIbDvd/UadpgjRTcpE/i5gzjdzLoT258w= +github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2 h1:4siT1z3nEVxJq1jZYu1SRoct5xgbKen+ammCuZBZ2zI= +github.com/aws/aws-sdk-go-v2/service/ssmquicksetup v1.3.2/go.mod h1:KSO1+erW2SUB6Mw/Qamu1fOT5fn/mzd9G79ENbYqyRQ= +github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1 h1:3/7a5HDlxoNVrtpb4lZ0U7yEvpg7K2Ri3h7lvN1uAdM= +github.com/aws/aws-sdk-go-v2/service/ssmsap v1.19.1/go.mod h1:fTVH5Ts2/fSD0LDSwP1lTkUhIZzOcZ9rvbZ2SuzO0Wo= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.8 h1:CvuUmnXI7ebaUAhbJcDy9YQx8wHR69eZ9I7q5hszt/g= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.8/go.mod h1:XDeGv1opzwm8ubxddF0cgqkZWsyOtw4lr6dxwmb6YQg= +github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8 h1:nCDnD8rVurC8E43scFw1lDHBRi1aSxAyOgfDHauTUsg= +github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.29.8/go.mod h1:gs/HuXKm8GZigCov15NZ9pt/u9EhD5gij4/uAEEnlJM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7 h1:F2rBfNAL5UyswqoeWv9zs74N/NanhK16ydHW1pahX6E= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.7/go.mod h1:JfyQ0g2JG8+Krq0EuZNnRwX0mU0HrwY/tG6JNfcqh4k= +github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8 h1:iGmu7HMw6AkqBHV9i5ROzn9otDr5S5PuLP+Ymd20gaE= +github.com/aws/aws-sdk-go-v2/service/storagegateway v1.34.8/go.mod h1:JEB0wcdNUtXNIXPBHoTTpcP4ImHRnxjxtIW0JQmHPnQ= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.4 h1:EzofOvWNMtG9ELt9mPOJjLYh1hz6kN4f5hNCyTtS7Hg= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.4/go.mod h1:5Gn+d+VaaRgsjewpMvGazt0WfcFO+Md4wLOuBfGR9Bc= +github.com/aws/aws-sdk-go-v2/service/swf v1.27.10 h1:wuoRmZ5TlXJhXiwuIwCLHhPRyqM8sGeOuf69kQI9zIo= +github.com/aws/aws-sdk-go-v2/service/swf v1.27.10/go.mod h1:BhhNXbUQvQWHqCE8ClGZ35wPk0X9yf7GENgrbR+QoNk= +github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2 h1:OOYsXCw0IFrigZqnQ//QI4E98jlOovyIwk6qOvDjlu8= +github.com/aws/aws-sdk-go-v2/service/synthetics v1.31.2/go.mod h1:jw1F0BxkenHqIGQN6/CNwjQXaczGUnNygDkHL+eYaHc= +github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2 h1:yoh8AI/J8XgXUfZoSZL6RTupb4bGNSWSXc5lv8gAHeY= +github.com/aws/aws-sdk-go-v2/service/taxsettings v1.7.2/go.mod h1:Hk446tKcJy9rblME6AOP4ohJzbg1OqzhcVagFxuTf7E= +github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1 h1:rPorKwVa4M69AL9nIW8uRPMz8RDgB2P6OwumayvqVUs= +github.com/aws/aws-sdk-go-v2/service/timestreaminfluxdb v1.7.1/go.mod h1:I9GEl0o6NjIcE984Vo0L9CR3wNdTmHxo+45k5EQa7i4= +github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2 h1:gihUoDbbvqKEe/AHK4PO54nO+OqlaCPQFAGlxEZ6R9U= +github.com/aws/aws-sdk-go-v2/service/timestreamquery v1.29.2/go.mod h1:4xoMzvjfpKy3mwR+9Vt1oNN914ZCbSNkzb66waQqRWU= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9 h1:9zoIQ/6NA9b70dDvhYvi4IA3jcLDEu2UEALXLsvmQkI= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.29.9/go.mod h1:otxD6AyG1ABYxxhFX6eua+C4vntFe45igc3ake0mkuE= +github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8 h1:nnwWCjn7Vchxd141wxESqgJ9KsbH49xerYjvcxll1Zs= +github.com/aws/aws-sdk-go-v2/service/transcribe v1.41.8/go.mod h1:AuJYTHEZbO7D4AgO4cMaElCp1AzTWv1o38YyY7bgNKY= +github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1 h1:bENkaFtA6rxHAwNPjYbgwYxUHGJbL7QocCt8nKZ7d10= +github.com/aws/aws-sdk-go-v2/service/transfer v1.55.1/go.mod h1:C7x9hpm90ZocJ9GbauHMkVMU0m7knEiKhOaa4um9tBU= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4 h1:eZXiw9DojYlhMjWBJdAXzynaY9yhXsGlGhMfQfERR2c= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.20.4/go.mod h1:1fZ7ZXPxSF2pAinSGZCLF0iYJZZyQSXwDRAqer5I0H8= +github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3 h1:lroNijmLbYdAogjg3PYYlDSY9yho+nczMeiYYOIsLNQ= +github.com/aws/aws-sdk-go-v2/service/vpclattice v1.13.3/go.mod h1:mA7e6cMF6CKPLwNqDIvRHy8IDhrlM3Kb9iqIq8bgPDE= +github.com/aws/aws-sdk-go-v2/service/waf v1.25.8 h1:21k+nb4lq/YNWOEeqs013i3fFoox9f2CUo4W736j8Us= +github.com/aws/aws-sdk-go-v2/service/waf v1.25.8/go.mod h1:gLE4P7MLLTe7s93GbDcXtaQ5Z9hz/rWvnSBmUlscnno= +github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8 h1:LG+3JxLZqa1wGrp9bCA0mP+jeqGokKEleLmk9cgnvUw= +github.com/aws/aws-sdk-go-v2/service/wafregional v1.25.8/go.mod h1:k5QM358GxnQJ19Y/XGCnY8a6pLrb2CfvC2S59UKq0ok= +github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7 h1:X+PWRlhNb8d3eEJKlcm6bq18j0RW8fEMfBHLMAXzXqQ= +github.com/aws/aws-sdk-go-v2/service/wafv2 v1.55.7/go.mod h1:ALNVjXMuy6y75JfvuShLxVl66dHPHmy/Fczv9xemXas= +github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8 h1:379L5vghrrijXaVB+CEEVRNHYZJtI4SPPRliCJfxoMw= +github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.34.8/go.mod h1:ZtiDdJzEpINAYHzpY6Cvow/Tys6EM/0UDlbCNcJ1DfA= github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2 h1:VN3Qydtdl3UlJRHVxQxSP1d8I5gtvT5zdaCCAfZST7Y= github.com/aws/aws-sdk-go-v2/service/worklink v1.23.2/go.mod h1:Z3RLpIq4q49syd921XdsKeD584kPu89iKTEjluh7908= -github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3 h1:gYpO2qaIaGoQp9TFjSl0ZENQpXIUEUNGT2AaByo4DKE= -github.com/aws/aws-sdk-go-v2/service/workspaces v1.50.3/go.mod h1:OX0I9k3wOSsRCrdqAUOVEDLHupani0n+UJ80TY0fIWc= -github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1 h1:PrMt4dBsy0rdfuMcFYlqOQNSgHmF+gCGbV0M/8MbYd8= -github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.1/go.mod h1:pwgFCLPLVoTNXQxG6LZdpXBGMr2wmVZBDci+yfuGZi8= -github.com/aws/aws-sdk-go-v2/service/xray v1.30.1 h1:BqsNRmYVd9CLJtcTwlJftM5oCsmuHcKm8ajJjYscP0Q= -github.com/aws/aws-sdk-go-v2/service/xray v1.30.1/go.mod h1:4XSKiCaqUPZUSQwLQCAzVVCEYJZKMzHF2s36fCTTirk= +github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0 h1:cqPwBQs00E6mzJWv98dOSzX8WtPtMgtqLVsLvF0iCo8= +github.com/aws/aws-sdk-go-v2/service/workspaces v1.51.0/go.mod h1:hre2JozPlHJVFfmWo5y8EBrjIFMx3xe1ZU8fnH8dRWU= +github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2 h1:ylaPCY2qs+w5e7dTSyYF+8kfG3Rh4ZGy1IF+wE1owtw= +github.com/aws/aws-sdk-go-v2/service/workspacesweb v1.25.2/go.mod h1:0hb1mJfmE+QtsHfNWspgPIwp4ltIP5ZaYQlLSYUVsiA= +github.com/aws/aws-sdk-go-v2/service/xray v1.30.3 h1:1YNWITeCg+dZRTFf2X+KRQDNCl/En2Zqhcs0zwrZ6r4= +github.com/aws/aws-sdk-go-v2/service/xray v1.30.3/go.mod h1:MIDlhv/eUulnYyGjNflyrKF4f77kcvfS9zTWTeUTAog= github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro= github.com/aws/smithy-go v1.22.1/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= @@ -2089,12 +2089,12 @@ github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1 github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0 h1:l16/Vrl0+x+HjHJWEjcKPwHYoxN9EC78gAFXKlH6m84= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.23.0/go.mod h1:HAmscHyzSOfB1Dr16KLc177KNbn83wscnZC+N7WyaM8= -github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59 h1:j5ZrYJbLfZLJ9X5Bnp43z+ygN7kf6rbLCGIBGCIWWEA= -github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.59/go.mod h1:jZEzCETkIzEinF749zPXsqpPmsA9P0fbMqRyoBh5UNo= -github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60 h1:WKatQsyE5ik+US0P3yCc5mDxg4HiMZcBUZBULLnXFqM= -github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.60/go.mod h1:8sryF6nAn0RYRHMH9Rp6DSLu5rdP8A1C+XB/YB/K1qo= -github.com/hashicorp/awspolicyequivalence v1.6.0 h1:7aadmkalbc5ewStC6g3rljx1iNvP4QyAhg2KsHx8bU8= -github.com/hashicorp/awspolicyequivalence v1.6.0/go.mod h1:9IOaIHx+a7C0NfUNk1A93M7kHd5rJ19aoUx37LZGC14= +github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60 h1:zh3v/n0DillXuE9iMXqFsZjfMicNCVNB1+leYCjZrQw= +github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.60/go.mod h1:npXAOu74D/9TTX1no1ooctXrq6hyWNRIwHrEu2zeVUo= +github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61 h1:elc7H3wq5LPGryM75+593SXaP3u3x/t3Ldn/u7R/PFs= +github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.61/go.mod h1:4cqoilb6SM5sQk5huMoxKpzcxLW+2pNmbMXPijvLs8Q= +github.com/hashicorp/awspolicyequivalence v1.7.0 h1:HxwPEw2/31BqQa73PinGciTfG2uJ/ATelvDG8X1gScU= +github.com/hashicorp/awspolicyequivalence v1.7.0/go.mod h1:+oCTxQEYt+GcRalqrqTCBcJf100SQYiWQ4aENNYxYe0= github.com/hashicorp/cli v1.1.6/go.mod h1:MPon5QYlgjjo0BSoAiN0ESeT5fRzDjVRp+uioJ0piz4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= @@ -2478,8 +2478,8 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= @@ -2609,20 +2609,22 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0 h1:G47XgH32CEM1I9kZ8xrVExSxivATGHNE0tdxuqlx9MQ= -go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.57.0/go.mod h1:aqXlYGrumc8b/n4z9eDHHoiLN4fq2DAO//wMnqdxPhg= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0 h1:g2rorZw2f1qnyfLOC7FP99argIWsN708Fjs2Zwz6SOk= +go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.58.0/go.mod h1:QzTypGPlQn4NselMPALVKGwm/p3XKLVCB/UG2Dq3PxQ= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= -go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= -go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= -go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= -go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= +go.opentelemetry.io/otel v1.33.0 h1:/FerN9bax5LoK51X/sI0SVYrjSE0/yUL7DpxW4K3FWw= +go.opentelemetry.io/otel v1.33.0/go.mod h1:SUUkR6csvUQl+yjReHu5uM3EtVV7MBm5FHKRlNx4I8I= +go.opentelemetry.io/otel/metric v1.33.0 h1:r+JOocAyeRVXD8lZpjdQjzMadVZp2M4WmQ+5WtEnklQ= +go.opentelemetry.io/otel/metric v1.33.0/go.mod h1:L9+Fyctbp6HFTddIxClbQkjtubW6O9QS3Ann/M82u6M= go.opentelemetry.io/otel/sdk v1.22.0 h1:6coWHw9xw7EfClIC/+O31R8IY3/+EiRFHevmHafB2Gw= go.opentelemetry.io/otel/sdk v1.22.0/go.mod h1:iu7luyVGYovrRpe2fmj3CVKouQNdTOkxtLzPvPz1DOc= -go.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM= -go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8= +go.opentelemetry.io/otel/trace v1.33.0 h1:cCJuF7LRjUFso9LPnEAHJDB2pqzp+hbO8eu1qqW2d/s= +go.opentelemetry.io/otel/trace v1.33.0/go.mod h1:uIcdVUZMpTAmz0tI1z04GoVSezK37CbGV4fr1f2nBck= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= go.opentelemetry.io/proto/otlp v0.19.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= @@ -2664,8 +2666,8 @@ golang.org/x/crypto v0.15.0/go.mod h1:4ChreQoLWfG3xLDer1WdlH5NdlQ3+mwnQq1YTKY+72 golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U= -golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= +golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc= +golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -2810,8 +2812,8 @@ golang.org/x/net v0.16.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= -golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= -golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= +golang.org/x/net v0.34.0 h1:Mb7Mrk043xzHgnRM88suvJFwzVrRfHEHJEl5/71CKw0= +golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -2980,8 +2982,8 @@ golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= -golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= +golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -3001,8 +3003,8 @@ golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= golang.org/x/term v0.14.0/go.mod h1:TySc+nGkYR6qt8km8wUhuFRTVSMIX3XPR58y2lC8vww= golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q= -golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= +golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg= +golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -3107,8 +3109,8 @@ golang.org/x/tools v0.9.1/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= golang.org/x/tools v0.10.0/go.mod h1:UJwyiVBsOA2uwvK/e5OY3GTpDUJriEd+/YlqAwLPmyM= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= -golang.org/x/tools v0.28.0 h1:WuB6qZ4RPCQo5aP3WdKZS7i595EdWqWR8vqJTlwTVK8= -golang.org/x/tools v0.28.0/go.mod h1:dcIOrVd3mfQKTgrDVQHqCPMWy6lnhfhtX3hLXYVLfRw= +golang.org/x/tools v0.29.0 h1:Xx0h3TtM9rzQpQuR4dKLrdglAmCEN5Oi+P74JdhdzXE= +golang.org/x/tools v0.29.0/go.mod h1:KMQVMRsVxU6nHCFXrBPhDB8XncLNLM0lIy/F14RP588= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/provider/resources.go b/provider/resources.go index 8bfa105e1dd..eb8a70ec5b3 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -6020,4 +6020,19 @@ func setupComputedIDs(prov *tfbridge.ProviderInfo) { ) (resource.ID, error) { return attr(state, "multiRegionClusterName"), nil } + + computeIDPartsByTfResourceID := map[string][]resource.PropertyKey{ + "aws_cloudwatch_log_index_policy": {"logGroupName"}, + "aws_cloudwatch_log_delivery_source": {"name"}, + "aws_cloudwatch_log_delivery_destination_policy": {"deliveryDestinationName"}, + "aws_cloudwatch_log_delivery_destination": {"name"}, + } + + for tfResourceID, computeIDParts := range computeIDPartsByTfResourceID { + prov.Resources[tfResourceID].ComputeID = func( + ctx context.Context, state resource.PropertyMap, + ) (resource.ID, error) { + return attr(state, computeIDParts...), nil + } + } } diff --git a/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.cs b/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.cs index 29e803759c6..37dc4cab089 100644 --- a/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.cs +++ b/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.cs @@ -12,6 +12,12 @@ namespace Pulumi.Aws.AppFlow.Inputs public sealed class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs : global::Pulumi.ResourceArgs { + /// + /// Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + /// + [Input("dataTransferApi")] + public Input? DataTransferApi { get; set; } + /// /// Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. /// diff --git a/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceGetArgs.cs b/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceGetArgs.cs index 12320268ed5..8d10ac2adfc 100644 --- a/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceGetArgs.cs +++ b/sdk/dotnet/AppFlow/Inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceGetArgs.cs @@ -12,6 +12,12 @@ namespace Pulumi.Aws.AppFlow.Inputs public sealed class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceGetArgs : global::Pulumi.ResourceArgs { + /// + /// Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + /// + [Input("dataTransferApi")] + public Input? DataTransferApi { get; set; } + /// /// Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. /// diff --git a/sdk/dotnet/AppFlow/Outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.cs b/sdk/dotnet/AppFlow/Outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.cs index 004dae930cf..922bfa78de9 100644 --- a/sdk/dotnet/AppFlow/Outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.cs +++ b/sdk/dotnet/AppFlow/Outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.cs @@ -13,6 +13,10 @@ namespace Pulumi.Aws.AppFlow.Outputs [OutputType] public sealed class FlowSourceFlowConfigSourceConnectorPropertiesSalesforce { + /// + /// Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + /// + public readonly string? DataTransferApi; /// /// Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. /// @@ -25,12 +29,15 @@ public sealed class FlowSourceFlowConfigSourceConnectorPropertiesSalesforce [OutputConstructor] private FlowSourceFlowConfigSourceConnectorPropertiesSalesforce( + string? dataTransferApi, + bool? enableDynamicFieldUpdate, bool? includeDeletedRecords, string @object) { + DataTransferApi = dataTransferApi; EnableDynamicFieldUpdate = enableDynamicFieldUpdate; IncludeDeletedRecords = includeDeletedRecords; Object = @object; diff --git a/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionArgs.cs b/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionArgs.cs index 6ae702b0f5d..f189695b7d9 100644 --- a/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionArgs.cs @@ -14,11 +14,13 @@ public sealed class JobQueueJobStateTimeLimitActionArgs : global::Pulumi.Resourc { /// /// The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - /// * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` /// [Input("action", required: true)] public Input Action { get; set; } = null!; + /// + /// The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + /// [Input("maxTimeSeconds", required: true)] public Input MaxTimeSeconds { get; set; } = null!; diff --git a/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionGetArgs.cs b/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionGetArgs.cs index d57d8306575..0b5203593fe 100644 --- a/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionGetArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobQueueJobStateTimeLimitActionGetArgs.cs @@ -14,11 +14,13 @@ public sealed class JobQueueJobStateTimeLimitActionGetArgs : global::Pulumi.Reso { /// /// The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - /// * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` /// [Input("action", required: true)] public Input Action { get; set; } = null!; + /// + /// The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + /// [Input("maxTimeSeconds", required: true)] public Input MaxTimeSeconds { get; set; } = null!; diff --git a/sdk/dotnet/Batch/Outputs/JobQueueJobStateTimeLimitAction.cs b/sdk/dotnet/Batch/Outputs/JobQueueJobStateTimeLimitAction.cs index 0e7a215d4a1..b89509cfed5 100644 --- a/sdk/dotnet/Batch/Outputs/JobQueueJobStateTimeLimitAction.cs +++ b/sdk/dotnet/Batch/Outputs/JobQueueJobStateTimeLimitAction.cs @@ -15,9 +15,11 @@ public sealed class JobQueueJobStateTimeLimitAction { /// /// The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - /// * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` /// public readonly string Action; + /// + /// The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + /// public readonly int MaxTimeSeconds; /// /// The reason to log for the action being taken. diff --git a/sdk/dotnet/Bedrock/AgentAgentCollaborator.cs b/sdk/dotnet/Bedrock/AgentAgentCollaborator.cs new file mode 100644 index 00000000000..b5b65420095 --- /dev/null +++ b/sdk/dotnet/Bedrock/AgentAgentCollaborator.cs @@ -0,0 +1,354 @@ +// *** 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.Bedrock +{ + /// + /// Resource for managing an AWS Bedrock Agents Agent Collaborator. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var current = Aws.GetCallerIdentity.Invoke(); + /// + /// var currentGetPartition = Aws.GetPartition.Invoke(); + /// + /// var currentGetRegion = Aws.GetRegion.Invoke(); + /// + /// var exampleAgentTrust = Aws.Iam.GetPolicyDocument.Invoke(new() + /// { + /// Statements = new[] + /// { + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs + /// { + /// Actions = new[] + /// { + /// "sts:AssumeRole", + /// }, + /// Principals = new[] + /// { + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs + /// { + /// Identifiers = new[] + /// { + /// "bedrock.amazonaws.com", + /// }, + /// Type = "Service", + /// }, + /// }, + /// Conditions = new[] + /// { + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs + /// { + /// Test = "StringEquals", + /// Values = new[] + /// { + /// current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId), + /// }, + /// Variable = "aws:SourceAccount", + /// }, + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs + /// { + /// Test = "ArnLike", + /// Values = new[] + /// { + /// $"arn:{currentGetPartition.Apply(getPartitionResult => getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}:{current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId)}:agent/*", + /// }, + /// Variable = "AWS:SourceArn", + /// }, + /// }, + /// }, + /// }, + /// }); + /// + /// var exampleAgentPermissions = Aws.Iam.GetPolicyDocument.Invoke(new() + /// { + /// Statements = new[] + /// { + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs + /// { + /// Actions = new[] + /// { + /// "bedrock:InvokeModel", + /// }, + /// Resources = new[] + /// { + /// $"arn:{currentGetPartition.Apply(getPartitionResult => getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0", + /// }, + /// }, + /// new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs + /// { + /// Actions = new[] + /// { + /// "bedrock:GetAgentAlias", + /// "bedrock:InvokeAgent", + /// }, + /// Resources = new[] + /// { + /// $"arn:{currentAgent.Partition}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}:{current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId)}:agent/*", + /// $"arn:{currentAgent.Partition}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}:{current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId)}:agent-alias/*", + /// }, + /// }, + /// }, + /// }); + /// + /// var example = new Aws.Iam.Role("example", new() + /// { + /// AssumeRolePolicy = exampleAgentTrust.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json), + /// NamePrefix = "AmazonBedrockExecutionRoleForAgents_", + /// }); + /// + /// var exampleRolePolicy = new Aws.Iam.RolePolicy("example", new() + /// { + /// Policy = exampleAgentPermissions.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json), + /// Role = example.Id, + /// }); + /// + /// var exampleCollaborator = new Aws.Bedrock.AgentAgent("example_collaborator", new() + /// { + /// AgentName = "my-agent-collaborator", + /// AgentResourceRoleArn = example.Arn, + /// IdleSessionTtlInSeconds = 500, + /// FoundationModel = "anthropic.claude-3-5-sonnet-20241022-v2:0", + /// Instruction = "do what the supervisor tells you to do", + /// }); + /// + /// var exampleSupervisor = new Aws.Bedrock.AgentAgent("example_supervisor", new() + /// { + /// AgentName = "my-agent-supervisor", + /// AgentResourceRoleArn = example.Arn, + /// AgentCollaboration = "SUPERVISOR", + /// IdleSessionTtlInSeconds = 500, + /// FoundationModel = "anthropic.claude-3-5-sonnet-20241022-v2:0", + /// Instruction = "tell the sub agent what to do", + /// PrepareAgent = false, + /// }); + /// + /// var exampleAgentAgentAlias = new Aws.Bedrock.AgentAgentAlias("example", new() + /// { + /// AgentAliasName = "my-agent-alias", + /// AgentId = exampleCollaborator.AgentId, + /// Description = "Test Alias", + /// }); + /// + /// var exampleAgentAgentCollaborator = new Aws.Bedrock.AgentAgentCollaborator("example", new() + /// { + /// AgentId = exampleSupervisor.AgentId, + /// CollaborationInstruction = "tell the other agent what to do", + /// CollaboratorName = "my-collab-example", + /// RelayConversationHistory = "TO_COLLABORATOR", + /// AgentDescriptor = new Aws.Bedrock.Inputs.AgentAgentCollaboratorAgentDescriptorArgs + /// { + /// AliasArn = exampleAgentAgentAlias.AgentAliasArn, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: + /// + /// ```sh + /// $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY + /// ``` + /// + [AwsResourceType("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator")] + public partial class AgentAgentCollaborator : global::Pulumi.CustomResource + { + [Output("agentDescriptor")] + public Output AgentDescriptor { get; private set; } = null!; + + /// + /// ID if the agent to associate the collaborator. + /// + [Output("agentId")] + public Output AgentId { get; private set; } = null!; + + [Output("agentVersion")] + public Output AgentVersion { get; private set; } = null!; + + /// + /// Instruction to give the collaborator. + /// + [Output("collaborationInstruction")] + public Output CollaborationInstruction { get; private set; } = null!; + + /// + /// ID of the Agent Collaborator. + /// + [Output("collaboratorId")] + public Output CollaboratorId { get; private set; } = null!; + + [Output("collaboratorName")] + public Output CollaboratorName { get; private set; } = null!; + + /// + /// Whether to prepare the agent after creation or modification. Defaults to `true`. + /// + [Output("prepareAgent")] + public Output PrepareAgent { get; private set; } = null!; + + /// + /// Configure relaying the history to the collaborator. + /// + [Output("relayConversationHistory")] + public Output RelayConversationHistory { get; private set; } = null!; + + [Output("timeouts")] + public Output Timeouts { get; private set; } = null!; + + + /// + /// Create a AgentAgentCollaborator 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 AgentAgentCollaborator(string name, AgentAgentCollaboratorArgs args, CustomResourceOptions? options = null) + : base("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", name, args ?? new AgentAgentCollaboratorArgs(), MakeResourceOptions(options, "")) + { + } + + private AgentAgentCollaborator(string name, Input id, AgentAgentCollaboratorState? state = null, CustomResourceOptions? options = null) + : base("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", 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 AgentAgentCollaborator 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 AgentAgentCollaborator Get(string name, Input id, AgentAgentCollaboratorState? state = null, CustomResourceOptions? options = null) + { + return new AgentAgentCollaborator(name, id, state, options); + } + } + + public sealed class AgentAgentCollaboratorArgs : global::Pulumi.ResourceArgs + { + [Input("agentDescriptor")] + public Input? AgentDescriptor { get; set; } + + /// + /// ID if the agent to associate the collaborator. + /// + [Input("agentId", required: true)] + public Input AgentId { get; set; } = null!; + + [Input("agentVersion")] + public Input? AgentVersion { get; set; } + + /// + /// Instruction to give the collaborator. + /// + [Input("collaborationInstruction", required: true)] + public Input CollaborationInstruction { get; set; } = null!; + + [Input("collaboratorName", required: true)] + public Input CollaboratorName { get; set; } = null!; + + /// + /// Whether to prepare the agent after creation or modification. Defaults to `true`. + /// + [Input("prepareAgent")] + public Input? PrepareAgent { get; set; } + + /// + /// Configure relaying the history to the collaborator. + /// + [Input("relayConversationHistory")] + public Input? RelayConversationHistory { get; set; } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public AgentAgentCollaboratorArgs() + { + } + public static new AgentAgentCollaboratorArgs Empty => new AgentAgentCollaboratorArgs(); + } + + public sealed class AgentAgentCollaboratorState : global::Pulumi.ResourceArgs + { + [Input("agentDescriptor")] + public Input? AgentDescriptor { get; set; } + + /// + /// ID if the agent to associate the collaborator. + /// + [Input("agentId")] + public Input? AgentId { get; set; } + + [Input("agentVersion")] + public Input? AgentVersion { get; set; } + + /// + /// Instruction to give the collaborator. + /// + [Input("collaborationInstruction")] + public Input? CollaborationInstruction { get; set; } + + /// + /// ID of the Agent Collaborator. + /// + [Input("collaboratorId")] + public Input? CollaboratorId { get; set; } + + [Input("collaboratorName")] + public Input? CollaboratorName { get; set; } + + /// + /// Whether to prepare the agent after creation or modification. Defaults to `true`. + /// + [Input("prepareAgent")] + public Input? PrepareAgent { get; set; } + + /// + /// Configure relaying the history to the collaborator. + /// + [Input("relayConversationHistory")] + public Input? RelayConversationHistory { get; set; } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public AgentAgentCollaboratorState() + { + } + public static new AgentAgentCollaboratorState Empty => new AgentAgentCollaboratorState(); + } +} diff --git a/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorArgs.cs new file mode 100644 index 00000000000..579571333e5 --- /dev/null +++ b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorArgs.cs @@ -0,0 +1,26 @@ +// *** 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.Bedrock.Inputs +{ + + public sealed class AgentAgentCollaboratorAgentDescriptorArgs : global::Pulumi.ResourceArgs + { + /// + /// ARN of the Alias of an Agent to use as the collaborator. + /// + [Input("aliasArn", required: true)] + public Input AliasArn { get; set; } = null!; + + public AgentAgentCollaboratorAgentDescriptorArgs() + { + } + public static new AgentAgentCollaboratorAgentDescriptorArgs Empty => new AgentAgentCollaboratorAgentDescriptorArgs(); + } +} diff --git a/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorGetArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorGetArgs.cs new file mode 100644 index 00000000000..4591d25a960 --- /dev/null +++ b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorAgentDescriptorGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.Bedrock.Inputs +{ + + public sealed class AgentAgentCollaboratorAgentDescriptorGetArgs : global::Pulumi.ResourceArgs + { + /// + /// ARN of the Alias of an Agent to use as the collaborator. + /// + [Input("aliasArn", required: true)] + public Input AliasArn { get; set; } = null!; + + public AgentAgentCollaboratorAgentDescriptorGetArgs() + { + } + public static new AgentAgentCollaboratorAgentDescriptorGetArgs Empty => new AgentAgentCollaboratorAgentDescriptorGetArgs(); + } +} diff --git a/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsArgs.cs new file mode 100644 index 00000000000..5becbbe2c36 --- /dev/null +++ b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsArgs.cs @@ -0,0 +1,38 @@ +// *** 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.Bedrock.Inputs +{ + + public sealed class AgentAgentCollaboratorTimeoutsArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public AgentAgentCollaboratorTimeoutsArgs() + { + } + public static new AgentAgentCollaboratorTimeoutsArgs Empty => new AgentAgentCollaboratorTimeoutsArgs(); + } +} diff --git a/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsGetArgs.cs b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsGetArgs.cs new file mode 100644 index 00000000000..fca8a8d6a47 --- /dev/null +++ b/sdk/dotnet/Bedrock/Inputs/AgentAgentCollaboratorTimeoutsGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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.Bedrock.Inputs +{ + + public sealed class AgentAgentCollaboratorTimeoutsGetArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public AgentAgentCollaboratorTimeoutsGetArgs() + { + } + public static new AgentAgentCollaboratorTimeoutsGetArgs Empty => new AgentAgentCollaboratorTimeoutsGetArgs(); + } +} diff --git a/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorAgentDescriptor.cs b/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorAgentDescriptor.cs new file mode 100644 index 00000000000..91075a376e1 --- /dev/null +++ b/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorAgentDescriptor.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.Bedrock.Outputs +{ + + [OutputType] + public sealed class AgentAgentCollaboratorAgentDescriptor + { + /// + /// ARN of the Alias of an Agent to use as the collaborator. + /// + public readonly string AliasArn; + + [OutputConstructor] + private AgentAgentCollaboratorAgentDescriptor(string aliasArn) + { + AliasArn = aliasArn; + } + } +} diff --git a/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorTimeouts.cs b/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorTimeouts.cs new file mode 100644 index 00000000000..8364cea6826 --- /dev/null +++ b/sdk/dotnet/Bedrock/Outputs/AgentAgentCollaboratorTimeouts.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.Bedrock.Outputs +{ + + [OutputType] + public sealed class AgentAgentCollaboratorTimeouts + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Create; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + public readonly string? Delete; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Update; + + [OutputConstructor] + private AgentAgentCollaboratorTimeouts( + string? create, + + string? delete, + + string? update) + { + Create = create; + Delete = delete; + Update = update; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationArgs.cs new file mode 100644 index 00000000000..262d411cb37 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("outputConfiguration")] + public Input? OutputConfiguration { get; set; } + + /// + /// The ARN of the IAM role which will be used to create the membership. + /// - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + /// - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + /// - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + /// + [Input("roleArn")] + public Input? RoleArn { get; set; } + + public MembershipDefaultResultConfigurationArgs() + { + } + public static new MembershipDefaultResultConfigurationArgs Empty => new MembershipDefaultResultConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationGetArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationGetArgs.cs new file mode 100644 index 00000000000..356aabec048 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationGetArgs : global::Pulumi.ResourceArgs + { + [Input("outputConfiguration")] + public Input? OutputConfiguration { get; set; } + + /// + /// The ARN of the IAM role which will be used to create the membership. + /// - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + /// - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + /// - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + /// + [Input("roleArn")] + public Input? RoleArn { get; set; } + + public MembershipDefaultResultConfigurationGetArgs() + { + } + public static new MembershipDefaultResultConfigurationGetArgs Empty => new MembershipDefaultResultConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.cs new file mode 100644 index 00000000000..e7fd7150799 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.cs @@ -0,0 +1,23 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationOutputConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("s3")] + public Input? S3 { get; set; } + + public MembershipDefaultResultConfigurationOutputConfigurationArgs() + { + } + public static new MembershipDefaultResultConfigurationOutputConfigurationArgs Empty => new MembershipDefaultResultConfigurationOutputConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationGetArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationGetArgs.cs new file mode 100644 index 00000000000..687e52b047b --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationGetArgs.cs @@ -0,0 +1,23 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationOutputConfigurationGetArgs : global::Pulumi.ResourceArgs + { + [Input("s3")] + public Input? S3 { get; set; } + + public MembershipDefaultResultConfigurationOutputConfigurationGetArgs() + { + } + public static new MembershipDefaultResultConfigurationOutputConfigurationGetArgs Empty => new MembershipDefaultResultConfigurationOutputConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.cs new file mode 100644 index 00000000000..71436bc19e4 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationOutputConfigurationS3Args : global::Pulumi.ResourceArgs + { + [Input("bucket", required: true)] + public Input Bucket { get; set; } = null!; + + [Input("keyPrefix")] + public Input? KeyPrefix { get; set; } + + [Input("resultFormat", required: true)] + public Input ResultFormat { get; set; } = null!; + + public MembershipDefaultResultConfigurationOutputConfigurationS3Args() + { + } + public static new MembershipDefaultResultConfigurationOutputConfigurationS3Args Empty => new MembershipDefaultResultConfigurationOutputConfigurationS3Args(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs.cs new file mode 100644 index 00000000000..dc9ca3f8fd7 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs.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.CleanRooms.Inputs +{ + + public sealed class MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs : global::Pulumi.ResourceArgs + { + [Input("bucket", required: true)] + public Input Bucket { get; set; } = null!; + + [Input("keyPrefix")] + public Input? KeyPrefix { get; set; } + + [Input("resultFormat", required: true)] + public Input ResultFormat { get; set; } = null!; + + public MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs() + { + } + public static new MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs Empty => new MembershipDefaultResultConfigurationOutputConfigurationS3GetArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs new file mode 100644 index 00000000000..051ee5777d3 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs @@ -0,0 +1,23 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipPaymentConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("queryCompute")] + public Input? QueryCompute { get; set; } + + public MembershipPaymentConfigurationArgs() + { + } + public static new MembershipPaymentConfigurationArgs Empty => new MembershipPaymentConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationGetArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationGetArgs.cs new file mode 100644 index 00000000000..628a9755c87 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationGetArgs.cs @@ -0,0 +1,23 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipPaymentConfigurationGetArgs : global::Pulumi.ResourceArgs + { + [Input("queryCompute")] + public Input? QueryCompute { get; set; } + + public MembershipPaymentConfigurationGetArgs() + { + } + public static new MembershipPaymentConfigurationGetArgs Empty => new MembershipPaymentConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeArgs.cs new file mode 100644 index 00000000000..162cda7b1e9 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipPaymentConfigurationQueryComputeArgs : global::Pulumi.ResourceArgs + { + /// + /// Indicates whether the collaboration member has accepted to pay for query compute costs. + /// + [Input("isResponsible", required: true)] + public Input IsResponsible { get; set; } = null!; + + public MembershipPaymentConfigurationQueryComputeArgs() + { + } + public static new MembershipPaymentConfigurationQueryComputeArgs Empty => new MembershipPaymentConfigurationQueryComputeArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeGetArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeGetArgs.cs new file mode 100644 index 00000000000..d3a9215d415 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationQueryComputeGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CleanRooms.Inputs +{ + + public sealed class MembershipPaymentConfigurationQueryComputeGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Indicates whether the collaboration member has accepted to pay for query compute costs. + /// + [Input("isResponsible", required: true)] + public Input IsResponsible { get; set; } = null!; + + public MembershipPaymentConfigurationQueryComputeGetArgs() + { + } + public static new MembershipPaymentConfigurationQueryComputeGetArgs Empty => new MembershipPaymentConfigurationQueryComputeGetArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Membership.cs b/sdk/dotnet/CleanRooms/Membership.cs new file mode 100644 index 00000000000..4bf5843b82c --- /dev/null +++ b/sdk/dotnet/CleanRooms/Membership.cs @@ -0,0 +1,342 @@ +// *** 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.CleanRooms +{ + /// + /// Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. + /// + /// ## Example Usage + /// + /// ### Membership with tags + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var testMembership = new Aws.CleanRooms.Membership("test_membership", new() + /// { + /// CollaborationId = "1234abcd-12ab-34cd-56ef-1234567890ab", + /// QueryLogStatus = "DISABLED", + /// DefaultResultConfiguration = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationArgs + /// { + /// RoleArn = "arn:aws:iam::123456789012:role/role-name", + /// OutputConfiguration = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationOutputConfigurationArgs + /// { + /// S3 = new Aws.CleanRooms.Inputs.MembershipDefaultResultConfigurationOutputConfigurationS3Args + /// { + /// Bucket = "test-bucket", + /// ResultFormat = "PARQUET", + /// KeyPrefix = "test-prefix", + /// }, + /// }, + /// }, + /// Tags = + /// { + /// { "Project", "Terraform" }, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: + /// + /// ```sh + /// $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab + /// ``` + /// + [AwsResourceType("aws:cleanrooms/membership:Membership")] + public partial class Membership : global::Pulumi.CustomResource + { + /// + /// The ARN of the membership. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The ARN of the joined collaboration. + /// + [Output("collaborationArn")] + public Output CollaborationArn { get; private set; } = null!; + + /// + /// The account ID of the collaboration's creator. + /// + [Output("collaborationCreatorAccountId")] + public Output CollaborationCreatorAccountId { get; private set; } = null!; + + /// + /// The display name of the collaboration's creator. + /// + [Output("collaborationCreatorDisplayName")] + public Output CollaborationCreatorDisplayName { get; private set; } = null!; + + /// + /// The ID of the collaboration to which the member was invited. + /// + [Output("collaborationId")] + public Output CollaborationId { get; private set; } = null!; + + /// + /// The name of the joined collaboration. + /// + [Output("collaborationName")] + public Output CollaborationName { get; private set; } = null!; + + /// + /// The date and time the membership was created. + /// + [Output("createTime")] + public Output CreateTime { get; private set; } = null!; + + /// + /// The default configuration for a query result. + /// + [Output("defaultResultConfiguration")] + public Output DefaultResultConfiguration { get; private set; } = null!; + + /// + /// The list of abilities for the invited member. + /// + [Output("memberAbilities")] + public Output> MemberAbilities { get; private set; } = null!; + + [Output("paymentConfiguration")] + public Output PaymentConfiguration { get; private set; } = null!; + + /// + /// An indicator as to whether query logging has been enabled or disabled for the membership. + /// + [Output("queryLogStatus")] + public Output QueryLogStatus { get; private set; } = null!; + + /// + /// The status of the membership. + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// Key value pairs which tag the membership. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + + [Output("tagsAll")] + public Output> TagsAll { get; private set; } = null!; + + /// + /// The date and time the membership was last updated. + /// + [Output("updateTime")] + public Output UpdateTime { get; private set; } = null!; + + + /// + /// Create a Membership 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 Membership(string name, MembershipArgs args, CustomResourceOptions? options = null) + : base("aws:cleanrooms/membership:Membership", name, args ?? new MembershipArgs(), MakeResourceOptions(options, "")) + { + } + + private Membership(string name, Input id, MembershipState? state = null, CustomResourceOptions? options = null) + : base("aws:cleanrooms/membership:Membership", 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 Membership 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 Membership Get(string name, Input id, MembershipState? state = null, CustomResourceOptions? options = null) + { + return new Membership(name, id, state, options); + } + } + + public sealed class MembershipArgs : global::Pulumi.ResourceArgs + { + /// + /// The ID of the collaboration to which the member was invited. + /// + [Input("collaborationId", required: true)] + public Input CollaborationId { get; set; } = null!; + + /// + /// The default configuration for a query result. + /// + [Input("defaultResultConfiguration")] + public Input? DefaultResultConfiguration { get; set; } + + [Input("paymentConfiguration")] + public Input? PaymentConfiguration { get; set; } + + /// + /// An indicator as to whether query logging has been enabled or disabled for the membership. + /// + [Input("queryLogStatus", required: true)] + public Input QueryLogStatus { get; set; } = null!; + + [Input("tags")] + private InputMap? _tags; + + /// + /// Key value pairs which tag the membership. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public MembershipArgs() + { + } + public static new MembershipArgs Empty => new MembershipArgs(); + } + + public sealed class MembershipState : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the membership. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// The ARN of the joined collaboration. + /// + [Input("collaborationArn")] + public Input? CollaborationArn { get; set; } + + /// + /// The account ID of the collaboration's creator. + /// + [Input("collaborationCreatorAccountId")] + public Input? CollaborationCreatorAccountId { get; set; } + + /// + /// The display name of the collaboration's creator. + /// + [Input("collaborationCreatorDisplayName")] + public Input? CollaborationCreatorDisplayName { get; set; } + + /// + /// The ID of the collaboration to which the member was invited. + /// + [Input("collaborationId")] + public Input? CollaborationId { get; set; } + + /// + /// The name of the joined collaboration. + /// + [Input("collaborationName")] + public Input? CollaborationName { get; set; } + + /// + /// The date and time the membership was created. + /// + [Input("createTime")] + public Input? CreateTime { get; set; } + + /// + /// The default configuration for a query result. + /// + [Input("defaultResultConfiguration")] + public Input? DefaultResultConfiguration { get; set; } + + [Input("memberAbilities")] + private InputList? _memberAbilities; + + /// + /// The list of abilities for the invited member. + /// + public InputList MemberAbilities + { + get => _memberAbilities ?? (_memberAbilities = new InputList()); + set => _memberAbilities = value; + } + + [Input("paymentConfiguration")] + public Input? PaymentConfiguration { get; set; } + + /// + /// An indicator as to whether query logging has been enabled or disabled for the membership. + /// + [Input("queryLogStatus")] + public Input? QueryLogStatus { get; set; } + + /// + /// The status of the membership. + /// + [Input("status")] + public Input? Status { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// Key value pairs which tag the membership. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("tagsAll")] + private InputMap? _tagsAll; + [Obsolete(@"Please use `tags` instead.")] + public InputMap TagsAll + { + get => _tagsAll ?? (_tagsAll = new InputMap()); + set => _tagsAll = value; + } + + /// + /// The date and time the membership was last updated. + /// + [Input("updateTime")] + public Input? UpdateTime { get; set; } + + public MembershipState() + { + } + public static new MembershipState Empty => new MembershipState(); + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfiguration.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfiguration.cs new file mode 100644 index 00000000000..c2d15debc19 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfiguration.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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class MembershipDefaultResultConfiguration + { + public readonly Outputs.MembershipDefaultResultConfigurationOutputConfiguration? OutputConfiguration; + /// + /// The ARN of the IAM role which will be used to create the membership. + /// - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + /// - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + /// - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + /// + public readonly string? RoleArn; + + [OutputConstructor] + private MembershipDefaultResultConfiguration( + Outputs.MembershipDefaultResultConfigurationOutputConfiguration? outputConfiguration, + + string? roleArn) + { + OutputConfiguration = outputConfiguration; + RoleArn = roleArn; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfiguration.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfiguration.cs new file mode 100644 index 00000000000..12bd6a35865 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfiguration.cs @@ -0,0 +1,24 @@ +// *** 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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class MembershipDefaultResultConfigurationOutputConfiguration + { + public readonly Outputs.MembershipDefaultResultConfigurationOutputConfigurationS3? S3; + + [OutputConstructor] + private MembershipDefaultResultConfigurationOutputConfiguration(Outputs.MembershipDefaultResultConfigurationOutputConfigurationS3? s3) + { + S3 = s3; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.cs new file mode 100644 index 00000000000..2e40560d116 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.cs @@ -0,0 +1,33 @@ +// *** 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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class MembershipDefaultResultConfigurationOutputConfigurationS3 + { + public readonly string Bucket; + public readonly string? KeyPrefix; + public readonly string ResultFormat; + + [OutputConstructor] + private MembershipDefaultResultConfigurationOutputConfigurationS3( + string bucket, + + string? keyPrefix, + + string resultFormat) + { + Bucket = bucket; + KeyPrefix = keyPrefix; + ResultFormat = resultFormat; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs new file mode 100644 index 00000000000..6ad5c8441e4 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs @@ -0,0 +1,24 @@ +// *** 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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class MembershipPaymentConfiguration + { + public readonly Outputs.MembershipPaymentConfigurationQueryCompute? QueryCompute; + + [OutputConstructor] + private MembershipPaymentConfiguration(Outputs.MembershipPaymentConfigurationQueryCompute? queryCompute) + { + QueryCompute = queryCompute; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfigurationQueryCompute.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfigurationQueryCompute.cs new file mode 100644 index 00000000000..8807fcae37c --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfigurationQueryCompute.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.CleanRooms.Outputs +{ + + [OutputType] + public sealed class MembershipPaymentConfigurationQueryCompute + { + /// + /// Indicates whether the collaboration member has accepted to pay for query compute costs. + /// + public readonly bool IsResponsible; + + [OutputConstructor] + private MembershipPaymentConfigurationQueryCompute(bool isResponsible) + { + IsResponsible = isResponsible; + } + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs index 3392a04cb7a..4ab1a7303fe 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorArgs.cs @@ -49,7 +49,7 @@ public InputList CachedMethods public Input? Compress { get; set; } /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// [Input("defaultTtl")] public Input? DefaultTtl { get; set; } @@ -78,6 +78,12 @@ public InputList set => _functionAssociations = value; } + /// + /// A config block that sets the grpc config. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; @@ -91,13 +97,13 @@ public InputList - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// [Input("maxTtl")] public Input? MaxTtl { get; set; } /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// [Input("minTtl")] public Input? MinTtl { get; set; } diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGetArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGetArgs.cs index 71a1af6faa5..5d8fc1aa248 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGetArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGetArgs.cs @@ -49,7 +49,7 @@ public InputList CachedMethods public Input? Compress { get; set; } /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// [Input("defaultTtl")] public Input? DefaultTtl { get; set; } @@ -78,6 +78,12 @@ public InputList _functionAssociations = value; } + /// + /// A config block that sets the grpc config. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; @@ -91,13 +97,13 @@ public InputList - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// [Input("maxTtl")] public Input? MaxTtl { get; set; } /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// [Input("minTtl")] public Input? MinTtl { get; set; } diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.cs new file mode 100644 index 00000000000..a20661843d8 --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudFront.Inputs +{ + + public sealed class DistributionDefaultCacheBehaviorGrpcConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public DistributionDefaultCacheBehaviorGrpcConfigArgs() + { + } + public static new DistributionDefaultCacheBehaviorGrpcConfigArgs Empty => new DistributionDefaultCacheBehaviorGrpcConfigArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigGetArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigGetArgs.cs new file mode 100644 index 00000000000..e52bf596957 --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/DistributionDefaultCacheBehaviorGrpcConfigGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudFront.Inputs +{ + + public sealed class DistributionDefaultCacheBehaviorGrpcConfigGetArgs : global::Pulumi.ResourceArgs + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public DistributionDefaultCacheBehaviorGrpcConfigGetArgs() + { + } + public static new DistributionDefaultCacheBehaviorGrpcConfigGetArgs Empty => new DistributionDefaultCacheBehaviorGrpcConfigGetArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigArgs.cs index d6aecce7bc1..23e875d9922 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.CloudFront.Inputs public sealed class DistributionLoggingConfigArgs : global::Pulumi.ResourceArgs { /// - /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. /// [Input("bucket", required: true)] public Input Bucket { get; set; } = null!; diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigGetArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigGetArgs.cs index 5a7740dfb26..20f5cae28bd 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigGetArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionLoggingConfigGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.CloudFront.Inputs public sealed class DistributionLoggingConfigGetArgs : global::Pulumi.ResourceArgs { /// - /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. /// [Input("bucket", required: true)] public Input Bucket { get; set; } = null!; diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorArgs.cs index cfd14597367..1fab7d15dc7 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorArgs.cs @@ -49,7 +49,7 @@ public InputList CachedMethods public Input? Compress { get; set; } /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// [Input("defaultTtl")] public Input? DefaultTtl { get; set; } @@ -78,6 +78,12 @@ public InputList set => _functionAssociations = value; } + /// + /// A config block that sets the grpc config. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; @@ -91,13 +97,13 @@ public InputList - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// [Input("maxTtl")] public Input? MaxTtl { get; set; } /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// [Input("minTtl")] public Input? MinTtl { get; set; } diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGetArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGetArgs.cs index 0d11ea1a53d..47db523691d 100644 --- a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGetArgs.cs +++ b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGetArgs.cs @@ -49,7 +49,7 @@ public InputList CachedMethods public Input? Compress { get; set; } /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// [Input("defaultTtl")] public Input? DefaultTtl { get; set; } @@ -78,6 +78,12 @@ public InputList _functionAssociations = value; } + /// + /// A config block that sets the grpc config. + /// + [Input("grpcConfig")] + public Input? GrpcConfig { get; set; } + [Input("lambdaFunctionAssociations")] private InputList? _lambdaFunctionAssociations; @@ -91,13 +97,13 @@ public InputList - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// [Input("maxTtl")] public Input? MaxTtl { get; set; } /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// [Input("minTtl")] public Input? MinTtl { get; set; } diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.cs new file mode 100644 index 00000000000..36b44e57630 --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudFront.Inputs +{ + + public sealed class DistributionOrderedCacheBehaviorGrpcConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public DistributionOrderedCacheBehaviorGrpcConfigArgs() + { + } + public static new DistributionOrderedCacheBehaviorGrpcConfigArgs Empty => new DistributionOrderedCacheBehaviorGrpcConfigArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigGetArgs.cs b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigGetArgs.cs new file mode 100644 index 00000000000..54a86a5112b --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/DistributionOrderedCacheBehaviorGrpcConfigGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudFront.Inputs +{ + + public sealed class DistributionOrderedCacheBehaviorGrpcConfigGetArgs : global::Pulumi.ResourceArgs + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public DistributionOrderedCacheBehaviorGrpcConfigGetArgs() + { + } + public static new DistributionOrderedCacheBehaviorGrpcConfigGetArgs Empty => new DistributionOrderedCacheBehaviorGrpcConfigGetArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs index abaaf746411..dc2e0b3a663 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehavior.cs @@ -30,7 +30,7 @@ public sealed class DistributionDefaultCacheBehavior /// public readonly bool? Compress; /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? DefaultTtl; /// @@ -46,15 +46,19 @@ public sealed class DistributionDefaultCacheBehavior /// public readonly ImmutableArray FunctionAssociations; /// + /// A config block that sets the grpc config. + /// + public readonly Outputs.DistributionDefaultCacheBehaviorGrpcConfig? GrpcConfig; + /// /// A config block that triggers a lambda function with specific actions (maximum 4). /// public readonly ImmutableArray LambdaFunctionAssociations; /// - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? MaxTtl; /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? MinTtl; /// @@ -108,6 +112,8 @@ private DistributionDefaultCacheBehavior( ImmutableArray functionAssociations, + Outputs.DistributionDefaultCacheBehaviorGrpcConfig? grpcConfig, + ImmutableArray lambdaFunctionAssociations, int? maxTtl, @@ -138,6 +144,7 @@ private DistributionDefaultCacheBehavior( FieldLevelEncryptionId = fieldLevelEncryptionId; ForwardedValues = forwardedValues; FunctionAssociations = functionAssociations; + GrpcConfig = grpcConfig; LambdaFunctionAssociations = lambdaFunctionAssociations; MaxTtl = maxTtl; MinTtl = minTtl; diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehaviorGrpcConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehaviorGrpcConfig.cs new file mode 100644 index 00000000000..ead9e237801 --- /dev/null +++ b/sdk/dotnet/CloudFront/Outputs/DistributionDefaultCacheBehaviorGrpcConfig.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.CloudFront.Outputs +{ + + [OutputType] + public sealed class DistributionDefaultCacheBehaviorGrpcConfig + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + public readonly bool? Enabled; + + [OutputConstructor] + private DistributionDefaultCacheBehaviorGrpcConfig(bool? enabled) + { + Enabled = enabled; + } + } +} diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionLoggingConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionLoggingConfig.cs index e3742a66384..1fc53928f47 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionLoggingConfig.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionLoggingConfig.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.CloudFront.Outputs public sealed class DistributionLoggingConfig { /// - /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + /// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. /// public readonly string Bucket; /// diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehavior.cs b/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehavior.cs index f8e3d6d0794..1c051c1f23c 100644 --- a/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehavior.cs +++ b/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehavior.cs @@ -30,7 +30,7 @@ public sealed class DistributionOrderedCacheBehavior /// public readonly bool? Compress; /// - /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + /// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? DefaultTtl; /// @@ -46,15 +46,19 @@ public sealed class DistributionOrderedCacheBehavior /// public readonly ImmutableArray FunctionAssociations; /// + /// A config block that sets the grpc config. + /// + public readonly Outputs.DistributionOrderedCacheBehaviorGrpcConfig? GrpcConfig; + /// /// A config block that triggers a lambda function with specific actions (maximum 4). /// public readonly ImmutableArray LambdaFunctionAssociations; /// - /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + /// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? MaxTtl; /// - /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + /// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. /// public readonly int? MinTtl; /// @@ -112,6 +116,8 @@ private DistributionOrderedCacheBehavior( ImmutableArray functionAssociations, + Outputs.DistributionOrderedCacheBehaviorGrpcConfig? grpcConfig, + ImmutableArray lambdaFunctionAssociations, int? maxTtl, @@ -144,6 +150,7 @@ private DistributionOrderedCacheBehavior( FieldLevelEncryptionId = fieldLevelEncryptionId; ForwardedValues = forwardedValues; FunctionAssociations = functionAssociations; + GrpcConfig = grpcConfig; LambdaFunctionAssociations = lambdaFunctionAssociations; MaxTtl = maxTtl; MinTtl = minTtl; diff --git a/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehaviorGrpcConfig.cs b/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehaviorGrpcConfig.cs new file mode 100644 index 00000000000..b797c291689 --- /dev/null +++ b/sdk/dotnet/CloudFront/Outputs/DistributionOrderedCacheBehaviorGrpcConfig.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.CloudFront.Outputs +{ + + [OutputType] + public sealed class DistributionOrderedCacheBehaviorGrpcConfig + { + /// + /// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + /// + public readonly bool? Enabled; + + [OutputConstructor] + private DistributionOrderedCacheBehaviorGrpcConfig(bool? enabled) + { + Enabled = enabled; + } + } +} diff --git a/sdk/dotnet/CloudFront/VpcOrigin.cs b/sdk/dotnet/CloudFront/VpcOrigin.cs index 36f04b588e4..274035141d2 100644 --- a/sdk/dotnet/CloudFront/VpcOrigin.cs +++ b/sdk/dotnet/CloudFront/VpcOrigin.cs @@ -60,7 +60,7 @@ namespace Pulumi.Aws.CloudFront /// /// to = aws_cloudfront_vpc_origin.origin /// - /// id = vo_JQEa410sssUFoY6wMkx69j + /// id = "vo_JQEa410sssUFoY6wMkx69j" /// /// } /// diff --git a/sdk/dotnet/CloudWatch/GetEventBuses.cs b/sdk/dotnet/CloudWatch/GetEventBuses.cs new file mode 100644 index 00000000000..69b3fd6d95f --- /dev/null +++ b/sdk/dotnet/CloudWatch/GetEventBuses.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.CloudWatch +{ + public static class GetEventBuses + { + /// + /// Data source for managing an AWS EventBridge Event Buses. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.CloudWatch.GetEventBuses.Invoke(new() + /// { + /// NamePrefix = "test", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetEventBusesArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws:cloudwatch/getEventBuses:getEventBuses", args ?? new GetEventBusesArgs(), options.WithDefaults()); + + /// + /// Data source for managing an AWS EventBridge Event Buses. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.CloudWatch.GetEventBuses.Invoke(new() + /// { + /// NamePrefix = "test", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetEventBusesInvokeArgs? args = null, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws:cloudwatch/getEventBuses:getEventBuses", args ?? new GetEventBusesInvokeArgs(), options.WithDefaults()); + + /// + /// Data source for managing an AWS EventBridge Event Buses. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.CloudWatch.GetEventBuses.Invoke(new() + /// { + /// NamePrefix = "test", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetEventBusesInvokeArgs args, InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws:cloudwatch/getEventBuses:getEventBuses", args ?? new GetEventBusesInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetEventBusesArgs : global::Pulumi.InvokeArgs + { + /// + /// Specifying this limits the results to only those event buses with names that start with the specified prefix. + /// + [Input("namePrefix")] + public string? NamePrefix { get; set; } + + public GetEventBusesArgs() + { + } + public static new GetEventBusesArgs Empty => new GetEventBusesArgs(); + } + + public sealed class GetEventBusesInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Specifying this limits the results to only those event buses with names that start with the specified prefix. + /// + [Input("namePrefix")] + public Input? NamePrefix { get; set; } + + public GetEventBusesInvokeArgs() + { + } + public static new GetEventBusesInvokeArgs Empty => new GetEventBusesInvokeArgs(); + } + + + [OutputType] + public sealed class GetEventBusesResult + { + /// + /// This list of event buses. + /// + public readonly ImmutableArray EventBuses; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + public readonly string? NamePrefix; + + [OutputConstructor] + private GetEventBusesResult( + ImmutableArray eventBuses, + + string id, + + string? namePrefix) + { + EventBuses = eventBuses; + Id = id; + NamePrefix = namePrefix; + } + } +} diff --git a/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.cs b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.cs new file mode 100644 index 00000000000..26675b4c84c --- /dev/null +++ b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudWatch.Inputs +{ + + public sealed class LogDeliveryDestinationDeliveryDestinationConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the AWS destination that this delivery destination represents. + /// + [Input("destinationResourceArn", required: true)] + public Input DestinationResourceArn { get; set; } = null!; + + public LogDeliveryDestinationDeliveryDestinationConfigurationArgs() + { + } + public static new LogDeliveryDestinationDeliveryDestinationConfigurationArgs Empty => new LogDeliveryDestinationDeliveryDestinationConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs.cs b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs.cs new file mode 100644 index 00000000000..710fefe3ec3 --- /dev/null +++ b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.CloudWatch.Inputs +{ + + public sealed class LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the AWS destination that this delivery destination represents. + /// + [Input("destinationResourceArn", required: true)] + public Input DestinationResourceArn { get; set; } = null!; + + public LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs() + { + } + public static new LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs Empty => new LogDeliveryDestinationDeliveryDestinationConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationArgs.cs b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationArgs.cs new file mode 100644 index 00000000000..5f177d905e6 --- /dev/null +++ b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** 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.CloudWatch.Inputs +{ + + public sealed class LogDeliveryS3DeliveryConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + /// + [Input("enableHiveCompatiblePath", required: true)] + public Input EnableHiveCompatiblePath { get; set; } = null!; + + /// + /// This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + /// + [Input("suffixPath", required: true)] + public Input SuffixPath { get; set; } = null!; + + public LogDeliveryS3DeliveryConfigurationArgs() + { + } + public static new LogDeliveryS3DeliveryConfigurationArgs Empty => new LogDeliveryS3DeliveryConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationGetArgs.cs b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationGetArgs.cs new file mode 100644 index 00000000000..476bd75b576 --- /dev/null +++ b/sdk/dotnet/CloudWatch/Inputs/LogDeliveryS3DeliveryConfigurationGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.CloudWatch.Inputs +{ + + public sealed class LogDeliveryS3DeliveryConfigurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + /// + [Input("enableHiveCompatiblePath", required: true)] + public Input EnableHiveCompatiblePath { get; set; } = null!; + + /// + /// This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + /// + [Input("suffixPath", required: true)] + public Input SuffixPath { get; set; } = null!; + + public LogDeliveryS3DeliveryConfigurationGetArgs() + { + } + public static new LogDeliveryS3DeliveryConfigurationGetArgs Empty => new LogDeliveryS3DeliveryConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CloudWatch/LogDelivery.cs b/sdk/dotnet/CloudWatch/LogDelivery.cs new file mode 100644 index 00000000000..13e7847d189 --- /dev/null +++ b/sdk/dotnet/CloudWatch/LogDelivery.cs @@ -0,0 +1,287 @@ +// *** 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.CloudWatch +{ + /// + /// Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `aws.cloudwatch.LogDeliverySource` and an `aws.cloudwatch.LogDeliveryDestination`. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.CloudWatch.LogDelivery("example", new() + /// { + /// DeliverySourceName = exampleAwsCloudwatchLogDeliverySource.Name, + /// DeliveryDestinationArn = exampleAwsCloudwatchLogDeliveryDestination.Arn, + /// FieldDelimiter = ",", + /// RecordFields = new[] + /// { + /// "event_timestamp", + /// "event", + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: + /// + /// ```sh + /// $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n + /// ``` + /// + [AwsResourceType("aws:cloudwatch/logDelivery:LogDelivery")] + public partial class LogDelivery : global::Pulumi.CustomResource + { + /// + /// The Amazon Resource Name (ARN) of the delivery. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The ARN of the delivery destination to use for this delivery. + /// + [Output("deliveryDestinationArn")] + public Output DeliveryDestinationArn { get; private set; } = null!; + + /// + /// The name of the delivery source to use for this delivery. + /// + [Output("deliverySourceName")] + public Output DeliverySourceName { get; private set; } = null!; + + /// + /// The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + /// + [Output("fieldDelimiter")] + public Output FieldDelimiter { get; private set; } = null!; + + /// + /// The list of record fields to be delivered to the destination, in order. + /// + [Output("recordFields")] + public Output> RecordFields { get; private set; } = null!; + + /// + /// Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + /// + [Output("s3DeliveryConfigurations")] + public Output> S3DeliveryConfigurations { get; private set; } = null!; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Output("tagsAll")] + public Output> TagsAll { get; private set; } = null!; + + + /// + /// Create a LogDelivery 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 LogDelivery(string name, LogDeliveryArgs args, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDelivery:LogDelivery", name, args ?? new LogDeliveryArgs(), MakeResourceOptions(options, "")) + { + } + + private LogDelivery(string name, Input id, LogDeliveryState? state = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDelivery:LogDelivery", 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 LogDelivery 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 LogDelivery Get(string name, Input id, LogDeliveryState? state = null, CustomResourceOptions? options = null) + { + return new LogDelivery(name, id, state, options); + } + } + + public sealed class LogDeliveryArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the delivery destination to use for this delivery. + /// + [Input("deliveryDestinationArn", required: true)] + public Input DeliveryDestinationArn { get; set; } = null!; + + /// + /// The name of the delivery source to use for this delivery. + /// + [Input("deliverySourceName", required: true)] + public Input DeliverySourceName { get; set; } = null!; + + /// + /// The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + /// + [Input("fieldDelimiter")] + public Input? FieldDelimiter { get; set; } + + [Input("recordFields")] + private InputList? _recordFields; + + /// + /// The list of record fields to be delivered to the destination, in order. + /// + public InputList RecordFields + { + get => _recordFields ?? (_recordFields = new InputList()); + set => _recordFields = value; + } + + [Input("s3DeliveryConfigurations")] + private InputList? _s3DeliveryConfigurations; + + /// + /// Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + /// + public InputList S3DeliveryConfigurations + { + get => _s3DeliveryConfigurations ?? (_s3DeliveryConfigurations = new InputList()); + set => _s3DeliveryConfigurations = value; + } + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public LogDeliveryArgs() + { + } + public static new LogDeliveryArgs Empty => new LogDeliveryArgs(); + } + + public sealed class LogDeliveryState : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the delivery. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// The ARN of the delivery destination to use for this delivery. + /// + [Input("deliveryDestinationArn")] + public Input? DeliveryDestinationArn { get; set; } + + /// + /// The name of the delivery source to use for this delivery. + /// + [Input("deliverySourceName")] + public Input? DeliverySourceName { get; set; } + + /// + /// The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + /// + [Input("fieldDelimiter")] + public Input? FieldDelimiter { get; set; } + + [Input("recordFields")] + private InputList? _recordFields; + + /// + /// The list of record fields to be delivered to the destination, in order. + /// + public InputList RecordFields + { + get => _recordFields ?? (_recordFields = new InputList()); + set => _recordFields = value; + } + + [Input("s3DeliveryConfigurations")] + private InputList? _s3DeliveryConfigurations; + + /// + /// Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + /// + public InputList S3DeliveryConfigurations + { + get => _s3DeliveryConfigurations ?? (_s3DeliveryConfigurations = new InputList()); + set => _s3DeliveryConfigurations = value; + } + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("tagsAll")] + private InputMap? _tagsAll; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Obsolete(@"Please use `tags` instead.")] + public InputMap TagsAll + { + get => _tagsAll ?? (_tagsAll = new InputMap()); + set => _tagsAll = value; + } + + public LogDeliveryState() + { + } + public static new LogDeliveryState Empty => new LogDeliveryState(); + } +} diff --git a/sdk/dotnet/CloudWatch/LogDeliveryDestination.cs b/sdk/dotnet/CloudWatch/LogDeliveryDestination.cs new file mode 100644 index 00000000000..8c986c1b2c2 --- /dev/null +++ b/sdk/dotnet/CloudWatch/LogDeliveryDestination.cs @@ -0,0 +1,236 @@ +// *** 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.CloudWatch +{ + /// + /// Resource for managing an AWS CloudWatch Logs Delivery Destination. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.CloudWatch.LogDeliveryDestination("example", new() + /// { + /// Name = "example", + /// DeliveryDestinationConfiguration = new Aws.CloudWatch.Inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs + /// { + /// DestinationResourceArn = exampleAwsCloudwatchLogGroup.Arn, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: + /// + /// ```sh + /// $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example + /// ``` + /// + [AwsResourceType("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination")] + public partial class LogDeliveryDestination : global::Pulumi.CustomResource + { + /// + /// The Amazon Resource Name (ARN) of the delivery destination. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The AWS resource that will receive the logs. + /// + [Output("deliveryDestinationConfiguration")] + public Output DeliveryDestinationConfiguration { get; private set; } = null!; + + /// + /// Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + /// + [Output("deliveryDestinationType")] + public Output DeliveryDestinationType { get; private set; } = null!; + + /// + /// The name for this delivery destination. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + /// + [Output("outputFormat")] + public Output OutputFormat { get; private set; } = null!; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Output("tagsAll")] + public Output> TagsAll { get; private set; } = null!; + + + /// + /// Create a LogDeliveryDestination 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 LogDeliveryDestination(string name, LogDeliveryDestinationArgs? args = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", name, args ?? new LogDeliveryDestinationArgs(), MakeResourceOptions(options, "")) + { + } + + private LogDeliveryDestination(string name, Input id, LogDeliveryDestinationState? state = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", 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 LogDeliveryDestination 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 LogDeliveryDestination Get(string name, Input id, LogDeliveryDestinationState? state = null, CustomResourceOptions? options = null) + { + return new LogDeliveryDestination(name, id, state, options); + } + } + + public sealed class LogDeliveryDestinationArgs : global::Pulumi.ResourceArgs + { + /// + /// The AWS resource that will receive the logs. + /// + [Input("deliveryDestinationConfiguration")] + public Input? DeliveryDestinationConfiguration { get; set; } + + /// + /// The name for this delivery destination. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + /// + [Input("outputFormat")] + public Input? OutputFormat { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public LogDeliveryDestinationArgs() + { + } + public static new LogDeliveryDestinationArgs Empty => new LogDeliveryDestinationArgs(); + } + + public sealed class LogDeliveryDestinationState : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the delivery destination. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// The AWS resource that will receive the logs. + /// + [Input("deliveryDestinationConfiguration")] + public Input? DeliveryDestinationConfiguration { get; set; } + + /// + /// Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + /// + [Input("deliveryDestinationType")] + public Input? DeliveryDestinationType { get; set; } + + /// + /// The name for this delivery destination. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + /// + [Input("outputFormat")] + public Input? OutputFormat { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("tagsAll")] + private InputMap? _tagsAll; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Obsolete(@"Please use `tags` instead.")] + public InputMap TagsAll + { + get => _tagsAll ?? (_tagsAll = new InputMap()); + set => _tagsAll = value; + } + + public LogDeliveryDestinationState() + { + } + public static new LogDeliveryDestinationState Empty => new LogDeliveryDestinationState(); + } +} diff --git a/sdk/dotnet/CloudWatch/LogDeliveryDestinationPolicy.cs b/sdk/dotnet/CloudWatch/LogDeliveryDestinationPolicy.cs new file mode 100644 index 00000000000..a1cec567dbf --- /dev/null +++ b/sdk/dotnet/CloudWatch/LogDeliveryDestinationPolicy.cs @@ -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! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.Aws.CloudWatch +{ + /// + /// Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.CloudWatch.LogDeliveryDestinationPolicy("example", new() + /// { + /// DeliveryDestinationName = exampleAwsCloudwatchLogDeliveryDestination.Name, + /// DeliveryDestinationPolicy = exampleAwsIamPolicyDocument.Json, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: + /// + /// ```sh + /// $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example + /// ``` + /// + [AwsResourceType("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy")] + public partial class LogDeliveryDestinationPolicy : global::Pulumi.CustomResource + { + /// + /// The name of the delivery destination to assign this policy to. + /// + [Output("deliveryDestinationName")] + public Output DeliveryDestinationName { get; private set; } = null!; + + /// + /// The contents of the policy. + /// + [Output("deliveryDestinationPolicy")] + public Output DeliveryDestinationPolicy { get; private set; } = null!; + + + /// + /// Create a LogDeliveryDestinationPolicy 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 LogDeliveryDestinationPolicy(string name, LogDeliveryDestinationPolicyArgs args, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", name, args ?? new LogDeliveryDestinationPolicyArgs(), MakeResourceOptions(options, "")) + { + } + + private LogDeliveryDestinationPolicy(string name, Input id, LogDeliveryDestinationPolicyState? state = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", 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 LogDeliveryDestinationPolicy 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 LogDeliveryDestinationPolicy Get(string name, Input id, LogDeliveryDestinationPolicyState? state = null, CustomResourceOptions? options = null) + { + return new LogDeliveryDestinationPolicy(name, id, state, options); + } + } + + public sealed class LogDeliveryDestinationPolicyArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the delivery destination to assign this policy to. + /// + [Input("deliveryDestinationName", required: true)] + public Input DeliveryDestinationName { get; set; } = null!; + + /// + /// The contents of the policy. + /// + [Input("deliveryDestinationPolicy", required: true)] + public Input DeliveryDestinationPolicy { get; set; } = null!; + + public LogDeliveryDestinationPolicyArgs() + { + } + public static new LogDeliveryDestinationPolicyArgs Empty => new LogDeliveryDestinationPolicyArgs(); + } + + public sealed class LogDeliveryDestinationPolicyState : global::Pulumi.ResourceArgs + { + /// + /// The name of the delivery destination to assign this policy to. + /// + [Input("deliveryDestinationName")] + public Input? DeliveryDestinationName { get; set; } + + /// + /// The contents of the policy. + /// + [Input("deliveryDestinationPolicy")] + public Input? DeliveryDestinationPolicy { get; set; } + + public LogDeliveryDestinationPolicyState() + { + } + public static new LogDeliveryDestinationPolicyState Empty => new LogDeliveryDestinationPolicyState(); + } +} diff --git a/sdk/dotnet/CloudWatch/LogDeliverySource.cs b/sdk/dotnet/CloudWatch/LogDeliverySource.cs new file mode 100644 index 00000000000..d934b360f17 --- /dev/null +++ b/sdk/dotnet/CloudWatch/LogDeliverySource.cs @@ -0,0 +1,234 @@ +// *** 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.CloudWatch +{ + /// + /// Resource for managing an AWS CloudWatch Logs Delivery Source. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.CloudWatch.LogDeliverySource("example", new() + /// { + /// Name = "example", + /// LogType = "APPLICATION_LOGS", + /// ResourceArn = exampleAwsBedrockagentKnowledgeBase.Arn, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: + /// + /// ```sh + /// $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example + /// ``` + /// + [AwsResourceType("aws:cloudwatch/logDeliverySource:LogDeliverySource")] + public partial class LogDeliverySource : global::Pulumi.CustomResource + { + /// + /// The Amazon Resource Name (ARN) of the delivery source. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + /// + [Output("logType")] + public Output LogType { get; private set; } = null!; + + /// + /// The name for this delivery source. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The ARN of the AWS resource that is generating and sending logs. + /// + [Output("resourceArn")] + public Output ResourceArn { get; private set; } = null!; + + /// + /// The AWS service that is sending logs. + /// + [Output("service")] + public Output Service { get; private set; } = null!; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Output("tagsAll")] + public Output> TagsAll { get; private set; } = null!; + + + /// + /// Create a LogDeliverySource 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 LogDeliverySource(string name, LogDeliverySourceArgs args, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliverySource:LogDeliverySource", name, args ?? new LogDeliverySourceArgs(), MakeResourceOptions(options, "")) + { + } + + private LogDeliverySource(string name, Input id, LogDeliverySourceState? state = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logDeliverySource:LogDeliverySource", 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 LogDeliverySource 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 LogDeliverySource Get(string name, Input id, LogDeliverySourceState? state = null, CustomResourceOptions? options = null) + { + return new LogDeliverySource(name, id, state, options); + } + } + + public sealed class LogDeliverySourceArgs : global::Pulumi.ResourceArgs + { + /// + /// The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + /// + [Input("logType", required: true)] + public Input LogType { get; set; } = null!; + + /// + /// The name for this delivery source. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The ARN of the AWS resource that is generating and sending logs. + /// + [Input("resourceArn", required: true)] + public Input ResourceArn { get; set; } = null!; + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public LogDeliverySourceArgs() + { + } + public static new LogDeliverySourceArgs Empty => new LogDeliverySourceArgs(); + } + + public sealed class LogDeliverySourceState : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the delivery source. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + /// + [Input("logType")] + public Input? LogType { get; set; } + + /// + /// The name for this delivery source. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The ARN of the AWS resource that is generating and sending logs. + /// + [Input("resourceArn")] + public Input? ResourceArn { get; set; } + + /// + /// The AWS service that is sending logs. + /// + [Input("service")] + public Input? Service { get; set; } + + [Input("tags")] + private InputMap? _tags; + + /// + /// A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("tagsAll")] + private InputMap? _tagsAll; + + /// + /// A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Obsolete(@"Please use `tags` instead.")] + public InputMap TagsAll + { + get => _tagsAll ?? (_tagsAll = new InputMap()); + set => _tagsAll = value; + } + + public LogDeliverySourceState() + { + } + public static new LogDeliverySourceState Empty => new LogDeliverySourceState(); + } +} diff --git a/sdk/dotnet/CloudWatch/LogIndexPolicy.cs b/sdk/dotnet/CloudWatch/LogIndexPolicy.cs new file mode 100644 index 00000000000..421ae9e4b3e --- /dev/null +++ b/sdk/dotnet/CloudWatch/LogIndexPolicy.cs @@ -0,0 +1,154 @@ +// *** 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.CloudWatch +{ + /// + /// Resource for managing an AWS CloudWatch Logs Index Policy. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using System.Text.Json; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.CloudWatch.LogGroup("example", new() + /// { + /// Name = "example", + /// }); + /// + /// var exampleLogIndexPolicy = new Aws.CloudWatch.LogIndexPolicy("example", new() + /// { + /// LogGroupName = example.Name, + /// PolicyDocument = JsonSerializer.Serialize(new Dictionary<string, object?> + /// { + /// ["Fields"] = new[] + /// { + /// "eventName", + /// }, + /// }), + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: + /// + /// ```sh + /// $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name + /// ``` + /// + [AwsResourceType("aws:cloudwatch/logIndexPolicy:LogIndexPolicy")] + public partial class LogIndexPolicy : global::Pulumi.CustomResource + { + /// + /// Log group name to set the policy for. + /// + [Output("logGroupName")] + public Output LogGroupName { get; private set; } = null!; + + /// + /// JSON policy document. This is a JSON formatted string. + /// + [Output("policyDocument")] + public Output PolicyDocument { get; private set; } = null!; + + + /// + /// Create a LogIndexPolicy 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 LogIndexPolicy(string name, LogIndexPolicyArgs args, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", name, args ?? new LogIndexPolicyArgs(), MakeResourceOptions(options, "")) + { + } + + private LogIndexPolicy(string name, Input id, LogIndexPolicyState? state = null, CustomResourceOptions? options = null) + : base("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", 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 LogIndexPolicy 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 LogIndexPolicy Get(string name, Input id, LogIndexPolicyState? state = null, CustomResourceOptions? options = null) + { + return new LogIndexPolicy(name, id, state, options); + } + } + + public sealed class LogIndexPolicyArgs : global::Pulumi.ResourceArgs + { + /// + /// Log group name to set the policy for. + /// + [Input("logGroupName", required: true)] + public Input LogGroupName { get; set; } = null!; + + /// + /// JSON policy document. This is a JSON formatted string. + /// + [Input("policyDocument", required: true)] + public Input PolicyDocument { get; set; } = null!; + + public LogIndexPolicyArgs() + { + } + public static new LogIndexPolicyArgs Empty => new LogIndexPolicyArgs(); + } + + public sealed class LogIndexPolicyState : global::Pulumi.ResourceArgs + { + /// + /// Log group name to set the policy for. + /// + [Input("logGroupName")] + public Input? LogGroupName { get; set; } + + /// + /// JSON policy document. This is a JSON formatted string. + /// + [Input("policyDocument")] + public Input? PolicyDocument { get; set; } + + public LogIndexPolicyState() + { + } + public static new LogIndexPolicyState Empty => new LogIndexPolicyState(); + } +} diff --git a/sdk/dotnet/CloudWatch/Outputs/GetEventBusesEventBusResult.cs b/sdk/dotnet/CloudWatch/Outputs/GetEventBusesEventBusResult.cs new file mode 100644 index 00000000000..f435f3c2ca5 --- /dev/null +++ b/sdk/dotnet/CloudWatch/Outputs/GetEventBusesEventBusResult.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.CloudWatch.Outputs +{ + + [OutputType] + public sealed class GetEventBusesEventBusResult + { + /// + /// The ARN of the event bus. + /// + public readonly string Arn; + /// + /// The time the event bus was created. + /// + public readonly string CreationTime; + /// + /// The event bus description. + /// + public readonly string Description; + /// + /// The time the event bus was last modified. + /// + public readonly string LastModifiedTime; + /// + /// The name of the event bus. + /// + public readonly string Name; + /// + /// The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + /// + public readonly string Policy; + + [OutputConstructor] + private GetEventBusesEventBusResult( + string arn, + + string creationTime, + + string description, + + string lastModifiedTime, + + string name, + + string policy) + { + Arn = arn; + CreationTime = creationTime; + Description = description; + LastModifiedTime = lastModifiedTime; + Name = name; + Policy = policy; + } + } +} diff --git a/sdk/dotnet/CloudWatch/Outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.cs b/sdk/dotnet/CloudWatch/Outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.cs new file mode 100644 index 00000000000..313561b1509 --- /dev/null +++ b/sdk/dotnet/CloudWatch/Outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.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.CloudWatch.Outputs +{ + + [OutputType] + public sealed class LogDeliveryDestinationDeliveryDestinationConfiguration + { + /// + /// The ARN of the AWS destination that this delivery destination represents. + /// + public readonly string DestinationResourceArn; + + [OutputConstructor] + private LogDeliveryDestinationDeliveryDestinationConfiguration(string destinationResourceArn) + { + DestinationResourceArn = destinationResourceArn; + } + } +} diff --git a/sdk/dotnet/CloudWatch/Outputs/LogDeliveryS3DeliveryConfiguration.cs b/sdk/dotnet/CloudWatch/Outputs/LogDeliveryS3DeliveryConfiguration.cs new file mode 100644 index 00000000000..7c99bbd721e --- /dev/null +++ b/sdk/dotnet/CloudWatch/Outputs/LogDeliveryS3DeliveryConfiguration.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.CloudWatch.Outputs +{ + + [OutputType] + public sealed class LogDeliveryS3DeliveryConfiguration + { + /// + /// This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + /// + public readonly bool EnableHiveCompatiblePath; + /// + /// This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + /// + public readonly string SuffixPath; + + [OutputConstructor] + private LogDeliveryS3DeliveryConfiguration( + bool enableHiveCompatiblePath, + + string suffixPath) + { + EnableHiveCompatiblePath = enableHiveCompatiblePath; + SuffixPath = suffixPath; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Fleet.cs b/sdk/dotnet/CodeBuild/Fleet.cs index 43fe8f39fc7..1d282f348bf 100644 --- a/sdk/dotnet/CodeBuild/Fleet.cs +++ b/sdk/dotnet/CodeBuild/Fleet.cs @@ -88,6 +88,12 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("baseCapacity")] public Output BaseCapacity { get; private set; } = null!; + /// + /// The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + /// + [Output("computeConfiguration")] + public Output ComputeConfiguration { get; private set; } = null!; + /// /// Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. /// @@ -139,7 +145,7 @@ public partial class Fleet : global::Pulumi.CustomResource public Output OverflowBehavior { get; private set; } = null!; /// - /// Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + /// Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. /// [Output("scalingConfiguration")] public Output ScalingConfiguration { get; private set; } = null!; @@ -160,7 +166,7 @@ public partial class Fleet : global::Pulumi.CustomResource public Output> TagsAll { get; private set; } = null!; /// - /// Configuration block. Detailed below. + /// Configuration block. See `vpc_config` below. /// [Output("vpcConfigs")] public Output> VpcConfigs { get; private set; } = null!; @@ -217,6 +223,12 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("baseCapacity", required: true)] public Input BaseCapacity { get; set; } = null!; + /// + /// The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + /// + [Input("computeConfiguration")] + public Input? ComputeConfiguration { get; set; } + /// /// Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. /// @@ -256,7 +268,7 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs public Input? OverflowBehavior { get; set; } /// - /// Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + /// Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. /// [Input("scalingConfiguration")] public Input? ScalingConfiguration { get; set; } @@ -277,7 +289,7 @@ public InputMap Tags private InputList? _vpcConfigs; /// - /// Configuration block. Detailed below. + /// Configuration block. See `vpc_config` below. /// public InputList VpcConfigs { @@ -305,6 +317,12 @@ public sealed class FleetState : global::Pulumi.ResourceArgs [Input("baseCapacity")] public Input? BaseCapacity { get; set; } + /// + /// The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + /// + [Input("computeConfiguration")] + public Input? ComputeConfiguration { get; set; } + /// /// Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. /// @@ -356,7 +374,7 @@ public sealed class FleetState : global::Pulumi.ResourceArgs public Input? OverflowBehavior { get; set; } /// - /// Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + /// Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. /// [Input("scalingConfiguration")] public Input? ScalingConfiguration { get; set; } @@ -398,7 +416,7 @@ public InputMap TagsAll private InputList? _vpcConfigs; /// - /// Configuration block. Detailed below. + /// Configuration block. See `vpc_config` below. /// public InputList VpcConfigs { diff --git a/sdk/dotnet/CodeBuild/GetFleet.cs b/sdk/dotnet/CodeBuild/GetFleet.cs index 4ec87a4e1a0..578cdb94ba2 100644 --- a/sdk/dotnet/CodeBuild/GetFleet.cs +++ b/sdk/dotnet/CodeBuild/GetFleet.cs @@ -270,6 +270,10 @@ public sealed class GetFleetResult /// public readonly int BaseCapacity; /// + /// Compute configuration of the compute fleet. + /// + public readonly ImmutableArray ComputeConfigurations; + /// /// Compute resources the compute fleet uses. /// public readonly string ComputeType; @@ -325,6 +329,8 @@ private GetFleetResult( int baseCapacity, + ImmutableArray computeConfigurations, + string computeType, string created, @@ -353,6 +359,7 @@ private GetFleetResult( { Arn = arn; BaseCapacity = baseCapacity; + ComputeConfigurations = computeConfigurations; ComputeType = computeType; Created = created; EnvironmentType = environmentType; diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs new file mode 100644 index 00000000000..6ef635dc02a --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs @@ -0,0 +1,44 @@ +// *** 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.CodeBuild.Inputs +{ + + public sealed class FleetComputeConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Amount of disk space of the instance type included in the fleet. + /// + [Input("disk")] + public Input? Disk { get; set; } + + /// + /// Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + /// + [Input("machineType")] + public Input? MachineType { get; set; } + + /// + /// Amount of memory of the instance type included in the fleet. + /// + [Input("memory")] + public Input? Memory { get; set; } + + /// + /// Number of vCPUs of the instance type included in the fleet. + /// + [Input("vcpu")] + public Input? Vcpu { get; set; } + + public FleetComputeConfigurationArgs() + { + } + public static new FleetComputeConfigurationArgs Empty => new FleetComputeConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationGetArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationGetArgs.cs new file mode 100644 index 00000000000..f5f6eb653be --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationGetArgs.cs @@ -0,0 +1,44 @@ +// *** 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.CodeBuild.Inputs +{ + + public sealed class FleetComputeConfigurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Amount of disk space of the instance type included in the fleet. + /// + [Input("disk")] + public Input? Disk { get; set; } + + /// + /// Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + /// + [Input("machineType")] + public Input? MachineType { get; set; } + + /// + /// Amount of memory of the instance type included in the fleet. + /// + [Input("memory")] + public Input? Memory { get; set; } + + /// + /// Number of vCPUs of the instance type included in the fleet. + /// + [Input("vcpu")] + public Input? Vcpu { get; set; } + + public FleetComputeConfigurationGetArgs() + { + } + public static new FleetComputeConfigurationGetArgs Empty => new FleetComputeConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs b/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs new file mode 100644 index 00000000000..89a417f82e1 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs @@ -0,0 +1,49 @@ +// *** 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.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetComputeConfiguration + { + /// + /// Amount of disk space of the instance type included in the fleet. + /// + public readonly int? Disk; + /// + /// Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + /// + public readonly string? MachineType; + /// + /// Amount of memory of the instance type included in the fleet. + /// + public readonly int? Memory; + /// + /// Number of vCPUs of the instance type included in the fleet. + /// + public readonly int? Vcpu; + + [OutputConstructor] + private FleetComputeConfiguration( + int? disk, + + string? machineType, + + int? memory, + + int? vcpu) + { + Disk = disk; + MachineType = machineType; + Memory = memory; + Vcpu = vcpu; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/GetFleetComputeConfigurationResult.cs b/sdk/dotnet/CodeBuild/Outputs/GetFleetComputeConfigurationResult.cs new file mode 100644 index 00000000000..bde3509f578 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/GetFleetComputeConfigurationResult.cs @@ -0,0 +1,49 @@ +// *** 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.CodeBuild.Outputs +{ + + [OutputType] + public sealed class GetFleetComputeConfigurationResult + { + /// + /// Amount of disk space of the instance type included in the fleet. + /// + public readonly int Disk; + /// + /// Machine type of the instance type included in the fleet. + /// + public readonly string MachineType; + /// + /// Amount of memory of the instance type included in the fleet. + /// + public readonly int Memory; + /// + /// Number of vCPUs of the instance type included in the fleet. + /// + public readonly int Vcpu; + + [OutputConstructor] + private GetFleetComputeConfigurationResult( + int disk, + + string machineType, + + int memory, + + int vcpu) + { + Disk = disk; + MachineType = machineType; + Memory = memory; + Vcpu = vcpu; + } + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationArgs.cs new file mode 100644 index 00000000000..f7122aba796 --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolEmailMfaConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + /// + [Input("message")] + public Input? Message { get; set; } + + /// + /// The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + /// + [Input("subject")] + public Input? Subject { get; set; } + + public UserPoolEmailMfaConfigurationArgs() + { + } + public static new UserPoolEmailMfaConfigurationArgs Empty => new UserPoolEmailMfaConfigurationArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationGetArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationGetArgs.cs new file mode 100644 index 00000000000..4a7e951b265 --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolEmailMfaConfigurationGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolEmailMfaConfigurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + /// + [Input("message")] + public Input? Message { get; set; } + + /// + /// The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + /// + [Input("subject")] + public Input? Subject { get; set; } + + public UserPoolEmailMfaConfigurationGetArgs() + { + } + public static new UserPoolEmailMfaConfigurationGetArgs Empty => new UserPoolEmailMfaConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyArgs.cs new file mode 100644 index 00000000000..5eccb4164a6 --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolSignInPolicyArgs : global::Pulumi.ResourceArgs + { + [Input("allowedFirstAuthFactors")] + private InputList? _allowedFirstAuthFactors; + + /// + /// The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + /// + public InputList AllowedFirstAuthFactors + { + get => _allowedFirstAuthFactors ?? (_allowedFirstAuthFactors = new InputList()); + set => _allowedFirstAuthFactors = value; + } + + public UserPoolSignInPolicyArgs() + { + } + public static new UserPoolSignInPolicyArgs Empty => new UserPoolSignInPolicyArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyGetArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyGetArgs.cs new file mode 100644 index 00000000000..c97dfe5a506 --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolSignInPolicyGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolSignInPolicyGetArgs : global::Pulumi.ResourceArgs + { + [Input("allowedFirstAuthFactors")] + private InputList? _allowedFirstAuthFactors; + + /// + /// The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + /// + public InputList AllowedFirstAuthFactors + { + get => _allowedFirstAuthFactors ?? (_allowedFirstAuthFactors = new InputList()); + set => _allowedFirstAuthFactors = value; + } + + public UserPoolSignInPolicyGetArgs() + { + } + public static new UserPoolSignInPolicyGetArgs Empty => new UserPoolSignInPolicyGetArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationArgs.cs new file mode 100644 index 00000000000..fd0516a4331 --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolWebAuthnConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// The authentication domain that passkeys providers use as a relying party. + /// + [Input("relyingPartyId")] + public Input? RelyingPartyId { get; set; } + + /// + /// If your user pool should require a passkey. Must be one of `required` or `preferred`. + /// + [Input("userVerification")] + public Input? UserVerification { get; set; } + + public UserPoolWebAuthnConfigurationArgs() + { + } + public static new UserPoolWebAuthnConfigurationArgs Empty => new UserPoolWebAuthnConfigurationArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationGetArgs.cs b/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationGetArgs.cs new file mode 100644 index 00000000000..96c50f2b7dc --- /dev/null +++ b/sdk/dotnet/Cognito/Inputs/UserPoolWebAuthnConfigurationGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.Cognito.Inputs +{ + + public sealed class UserPoolWebAuthnConfigurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The authentication domain that passkeys providers use as a relying party. + /// + [Input("relyingPartyId")] + public Input? RelyingPartyId { get; set; } + + /// + /// If your user pool should require a passkey. Must be one of `required` or `preferred`. + /// + [Input("userVerification")] + public Input? UserVerification { get; set; } + + public UserPoolWebAuthnConfigurationGetArgs() + { + } + public static new UserPoolWebAuthnConfigurationGetArgs Empty => new UserPoolWebAuthnConfigurationGetArgs(); + } +} diff --git a/sdk/dotnet/Cognito/Outputs/UserPoolEmailMfaConfiguration.cs b/sdk/dotnet/Cognito/Outputs/UserPoolEmailMfaConfiguration.cs new file mode 100644 index 00000000000..defb771d7e3 --- /dev/null +++ b/sdk/dotnet/Cognito/Outputs/UserPoolEmailMfaConfiguration.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.Cognito.Outputs +{ + + [OutputType] + public sealed class UserPoolEmailMfaConfiguration + { + /// + /// The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + /// + public readonly string? Message; + /// + /// The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + /// + public readonly string? Subject; + + [OutputConstructor] + private UserPoolEmailMfaConfiguration( + string? message, + + string? subject) + { + Message = message; + Subject = subject; + } + } +} diff --git a/sdk/dotnet/Cognito/Outputs/UserPoolSignInPolicy.cs b/sdk/dotnet/Cognito/Outputs/UserPoolSignInPolicy.cs new file mode 100644 index 00000000000..9ca83ef22f5 --- /dev/null +++ b/sdk/dotnet/Cognito/Outputs/UserPoolSignInPolicy.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.Cognito.Outputs +{ + + [OutputType] + public sealed class UserPoolSignInPolicy + { + /// + /// The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + /// + public readonly ImmutableArray AllowedFirstAuthFactors; + + [OutputConstructor] + private UserPoolSignInPolicy(ImmutableArray allowedFirstAuthFactors) + { + AllowedFirstAuthFactors = allowedFirstAuthFactors; + } + } +} diff --git a/sdk/dotnet/Cognito/Outputs/UserPoolWebAuthnConfiguration.cs b/sdk/dotnet/Cognito/Outputs/UserPoolWebAuthnConfiguration.cs new file mode 100644 index 00000000000..8de63bbf023 --- /dev/null +++ b/sdk/dotnet/Cognito/Outputs/UserPoolWebAuthnConfiguration.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.Cognito.Outputs +{ + + [OutputType] + public sealed class UserPoolWebAuthnConfiguration + { + /// + /// The authentication domain that passkeys providers use as a relying party. + /// + public readonly string? RelyingPartyId; + /// + /// If your user pool should require a passkey. Must be one of `required` or `preferred`. + /// + public readonly string? UserVerification; + + [OutputConstructor] + private UserPoolWebAuthnConfiguration( + string? relyingPartyId, + + string? userVerification) + { + RelyingPartyId = relyingPartyId; + UserVerification = userVerification; + } + } +} diff --git a/sdk/dotnet/Cognito/UserPool.cs b/sdk/dotnet/Cognito/UserPool.cs index d571a1ce049..354a510dcbe 100644 --- a/sdk/dotnet/Cognito/UserPool.cs +++ b/sdk/dotnet/Cognito/UserPool.cs @@ -172,6 +172,12 @@ public partial class UserPool : global::Pulumi.CustomResource [Output("emailConfiguration")] public Output EmailConfiguration { get; private set; } = null!; + /// + /// Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + /// + [Output("emailMfaConfiguration")] + public Output EmailMfaConfiguration { get; private set; } = null!; + /// /// String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. /// @@ -234,6 +240,12 @@ public partial class UserPool : global::Pulumi.CustomResource [Output("schemas")] public Output> Schemas { get; private set; } = null!; + /// + /// Configuration block for information about the user pool sign in policy. Detailed below. + /// + [Output("signInPolicy")] + public Output SignInPolicy { get; private set; } = null!; + /// /// String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. /// @@ -282,6 +294,12 @@ public partial class UserPool : global::Pulumi.CustomResource [Output("userPoolAddOns")] public Output UserPoolAddOns { get; private set; } = null!; + /// + /// The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + /// + [Output("userPoolTier")] + public Output UserPoolTier { get; private set; } = null!; + /// /// Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. /// @@ -300,6 +318,12 @@ public partial class UserPool : global::Pulumi.CustomResource [Output("verificationMessageTemplate")] public Output VerificationMessageTemplate { get; private set; } = null!; + /// + /// Configuration block for web authn configuration. Detailed below. + /// + [Output("webAuthnConfiguration")] + public Output WebAuthnConfiguration { get; private set; } = null!; + /// /// Create a UserPool resource with the given unique name, arguments, and options. @@ -400,6 +424,12 @@ public InputList AutoVerifiedAttributes [Input("emailConfiguration")] public Input? EmailConfiguration { get; set; } + /// + /// Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + /// + [Input("emailMfaConfiguration")] + public Input? EmailMfaConfiguration { get; set; } + /// /// String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. /// @@ -450,6 +480,12 @@ public InputList Schemas set => _schemas = value; } + /// + /// Configuration block for information about the user pool sign in policy. Detailed below. + /// + [Input("signInPolicy")] + public Input? SignInPolicy { get; set; } + /// /// String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. /// @@ -498,6 +534,12 @@ public InputMap Tags [Input("userPoolAddOns")] public Input? UserPoolAddOns { get; set; } + /// + /// The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + /// + [Input("userPoolTier")] + public Input? UserPoolTier { get; set; } + [Input("usernameAttributes")] private InputList? _usernameAttributes; @@ -522,6 +564,12 @@ public InputList UsernameAttributes [Input("verificationMessageTemplate")] public Input? VerificationMessageTemplate { get; set; } + /// + /// Configuration block for web authn configuration. Detailed below. + /// + [Input("webAuthnConfiguration")] + public Input? WebAuthnConfiguration { get; set; } + public UserPoolArgs() { } @@ -608,6 +656,12 @@ public InputList AutoVerifiedAttributes [Input("emailConfiguration")] public Input? EmailConfiguration { get; set; } + /// + /// Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + /// + [Input("emailMfaConfiguration")] + public Input? EmailMfaConfiguration { get; set; } + /// /// String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. /// @@ -676,6 +730,12 @@ public InputList Schemas set => _schemas = value; } + /// + /// Configuration block for information about the user pool sign in policy. Detailed below. + /// + [Input("signInPolicy")] + public Input? SignInPolicy { get; set; } + /// /// String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. /// @@ -737,6 +797,12 @@ public InputMap TagsAll [Input("userPoolAddOns")] public Input? UserPoolAddOns { get; set; } + /// + /// The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + /// + [Input("userPoolTier")] + public Input? UserPoolTier { get; set; } + [Input("usernameAttributes")] private InputList? _usernameAttributes; @@ -761,6 +827,12 @@ public InputList UsernameAttributes [Input("verificationMessageTemplate")] public Input? VerificationMessageTemplate { get; set; } + /// + /// Configuration block for web authn configuration. Detailed below. + /// + [Input("webAuthnConfiguration")] + public Input? WebAuthnConfiguration { get; set; } + public UserPoolState() { } diff --git a/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsArgs.cs b/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsArgs.cs index 6a3f7ee99b5..e0067b94336 100644 --- a/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsArgs.cs +++ b/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsArgs.cs @@ -72,6 +72,12 @@ public sealed class EndpointKafkaSettingsArgs : global::Pulumi.ResourceArgs [Input("partitionIncludeSchemaTable")] public Input? PartitionIncludeSchemaTable { get; set; } + /// + /// For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + /// + [Input("saslMechanism")] + public Input? SaslMechanism { get; set; } + [Input("saslPassword")] private Input? _saslPassword; diff --git a/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsGetArgs.cs b/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsGetArgs.cs index 8adc50329b0..925ff9a604c 100644 --- a/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsGetArgs.cs +++ b/sdk/dotnet/Dms/Inputs/EndpointKafkaSettingsGetArgs.cs @@ -72,6 +72,12 @@ public sealed class EndpointKafkaSettingsGetArgs : global::Pulumi.ResourceArgs [Input("partitionIncludeSchemaTable")] public Input? PartitionIncludeSchemaTable { get; set; } + /// + /// For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + /// + [Input("saslMechanism")] + public Input? SaslMechanism { get; set; } + [Input("saslPassword")] private Input? _saslPassword; diff --git a/sdk/dotnet/Dms/Outputs/EndpointKafkaSettings.cs b/sdk/dotnet/Dms/Outputs/EndpointKafkaSettings.cs index 630ccbe772a..377ffcc4371 100644 --- a/sdk/dotnet/Dms/Outputs/EndpointKafkaSettings.cs +++ b/sdk/dotnet/Dms/Outputs/EndpointKafkaSettings.cs @@ -54,6 +54,10 @@ public sealed class EndpointKafkaSettings /// public readonly bool? PartitionIncludeSchemaTable; /// + /// For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + /// + public readonly string? SaslMechanism; + /// /// Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. /// public readonly string? SaslPassword; @@ -108,6 +112,8 @@ private EndpointKafkaSettings( bool? partitionIncludeSchemaTable, + string? saslMechanism, + string? saslPassword, string? saslUsername, @@ -134,6 +140,7 @@ private EndpointKafkaSettings( MessageMaxBytes = messageMaxBytes; NoHexPrefix = noHexPrefix; PartitionIncludeSchemaTable = partitionIncludeSchemaTable; + SaslMechanism = saslMechanism; SaslPassword = saslPassword; SaslUsername = saslUsername; SecurityProtocol = securityProtocol; diff --git a/sdk/dotnet/Dms/Outputs/GetEndpointKafkaSettingResult.cs b/sdk/dotnet/Dms/Outputs/GetEndpointKafkaSettingResult.cs index b0cdd47d42a..ddcdf7e11d4 100644 --- a/sdk/dotnet/Dms/Outputs/GetEndpointKafkaSettingResult.cs +++ b/sdk/dotnet/Dms/Outputs/GetEndpointKafkaSettingResult.cs @@ -23,6 +23,7 @@ public sealed class GetEndpointKafkaSettingResult public readonly int MessageMaxBytes; public readonly bool NoHexPrefix; public readonly bool PartitionIncludeSchemaTable; + public readonly string SaslMechanism; public readonly string SaslPassword; public readonly string SaslUsername; public readonly string SecurityProtocol; @@ -54,6 +55,8 @@ private GetEndpointKafkaSettingResult( bool partitionIncludeSchemaTable, + string saslMechanism, + string saslPassword, string saslUsername, @@ -80,6 +83,7 @@ private GetEndpointKafkaSettingResult( MessageMaxBytes = messageMaxBytes; NoHexPrefix = noHexPrefix; PartitionIncludeSchemaTable = partitionIncludeSchemaTable; + SaslMechanism = saslMechanism; SaslPassword = saslPassword; SaslUsername = saslUsername; SecurityProtocol = securityProtocol; diff --git a/sdk/dotnet/Ec2/EipAssociation.cs b/sdk/dotnet/Ec2/EipAssociation.cs index bc87a5774a2..d49b6180ec8 100644 --- a/sdk/dotnet/Ec2/EipAssociation.cs +++ b/sdk/dotnet/Ec2/EipAssociation.cs @@ -10,13 +10,11 @@ namespace Pulumi.Aws.Ec2 { /// - /// Provides an AWS EIP Association as a top level resource, to associate and - /// disassociate Elastic IPs from AWS Instances and Network Interfaces. + /// Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. /// /// > **NOTE:** Do not use this resource to associate an EIP to `aws.lb.LoadBalancer` or `aws.ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. /// - /// > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either - /// pre-existing or distributed to customers or users and therefore cannot be changed. + /// > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. /// /// ## Example Usage /// @@ -65,46 +63,44 @@ namespace Pulumi.Aws.Ec2 public partial class EipAssociation : global::Pulumi.CustomResource { /// - /// The allocation ID. This is required for EC2-VPC. + /// ID of the associated Elastic IP. + /// This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. /// [Output("allocationId")] public Output AllocationId { get; private set; } = null!; /// - /// Whether to allow an Elastic IP to - /// be re-associated. Defaults to `true` in VPC. + /// Whether to allow an Elastic IP address to be re-associated. + /// Defaults to `true`. /// [Output("allowReassociation")] public Output AllowReassociation { get; private set; } = null!; /// - /// The ID of the instance. This is required for - /// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - /// network interface ID, but not both. The operation fails if you specify an - /// instance ID unless exactly one network interface is attached. + /// ID of the instance. + /// The instance must have exactly one attached network interface. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Output("instanceId")] public Output InstanceId { get; private set; } = null!; /// - /// The ID of the network interface. If the - /// instance has more than one network interface, you must specify a network - /// interface ID. + /// ID of the network interface. + /// If the instance has more than one network interface, you must specify a network interface ID. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Output("networkInterfaceId")] public Output NetworkInterfaceId { get; private set; } = null!; /// - /// The primary or secondary private IP address - /// to associate with the Elastic IP address. If no private IP address is - /// specified, the Elastic IP address is associated with the primary private IP - /// address. + /// Primary or secondary private IP address to associate with the Elastic IP address. + /// If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. /// [Output("privateIpAddress")] public Output PrivateIpAddress { get; private set; } = null!; /// - /// The Elastic IP address. This is required for EC2-Classic. + /// ) Address of the associated Elastic IP. /// [Output("publicIp")] public Output PublicIp { get; private set; } = null!; @@ -156,46 +152,44 @@ public static EipAssociation Get(string name, Input id, EipAssociationSt public sealed class EipAssociationArgs : global::Pulumi.ResourceArgs { /// - /// The allocation ID. This is required for EC2-VPC. + /// ID of the associated Elastic IP. + /// This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. /// [Input("allocationId")] public Input? AllocationId { get; set; } /// - /// Whether to allow an Elastic IP to - /// be re-associated. Defaults to `true` in VPC. + /// Whether to allow an Elastic IP address to be re-associated. + /// Defaults to `true`. /// [Input("allowReassociation")] public Input? AllowReassociation { get; set; } /// - /// The ID of the instance. This is required for - /// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - /// network interface ID, but not both. The operation fails if you specify an - /// instance ID unless exactly one network interface is attached. + /// ID of the instance. + /// The instance must have exactly one attached network interface. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Input("instanceId")] public Input? InstanceId { get; set; } /// - /// The ID of the network interface. If the - /// instance has more than one network interface, you must specify a network - /// interface ID. + /// ID of the network interface. + /// If the instance has more than one network interface, you must specify a network interface ID. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Input("networkInterfaceId")] public Input? NetworkInterfaceId { get; set; } /// - /// The primary or secondary private IP address - /// to associate with the Elastic IP address. If no private IP address is - /// specified, the Elastic IP address is associated with the primary private IP - /// address. + /// Primary or secondary private IP address to associate with the Elastic IP address. + /// If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. /// [Input("privateIpAddress")] public Input? PrivateIpAddress { get; set; } /// - /// The Elastic IP address. This is required for EC2-Classic. + /// ) Address of the associated Elastic IP. /// [Input("publicIp")] public Input? PublicIp { get; set; } @@ -209,46 +203,44 @@ public EipAssociationArgs() public sealed class EipAssociationState : global::Pulumi.ResourceArgs { /// - /// The allocation ID. This is required for EC2-VPC. + /// ID of the associated Elastic IP. + /// This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. /// [Input("allocationId")] public Input? AllocationId { get; set; } /// - /// Whether to allow an Elastic IP to - /// be re-associated. Defaults to `true` in VPC. + /// Whether to allow an Elastic IP address to be re-associated. + /// Defaults to `true`. /// [Input("allowReassociation")] public Input? AllowReassociation { get; set; } /// - /// The ID of the instance. This is required for - /// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - /// network interface ID, but not both. The operation fails if you specify an - /// instance ID unless exactly one network interface is attached. + /// ID of the instance. + /// The instance must have exactly one attached network interface. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Input("instanceId")] public Input? InstanceId { get; set; } /// - /// The ID of the network interface. If the - /// instance has more than one network interface, you must specify a network - /// interface ID. + /// ID of the network interface. + /// If the instance has more than one network interface, you must specify a network interface ID. + /// You can specify either the instance ID or the network interface ID, but not both. /// [Input("networkInterfaceId")] public Input? NetworkInterfaceId { get; set; } /// - /// The primary or secondary private IP address - /// to associate with the Elastic IP address. If no private IP address is - /// specified, the Elastic IP address is associated with the primary private IP - /// address. + /// Primary or secondary private IP address to associate with the Elastic IP address. + /// If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. /// [Input("privateIpAddress")] public Input? PrivateIpAddress { get; set; } /// - /// The Elastic IP address. This is required for EC2-Classic. + /// ) Address of the associated Elastic IP. /// [Input("publicIp")] public Input? PublicIp { get; set; } diff --git a/sdk/dotnet/Ec2/GetVpcEndpointService.cs b/sdk/dotnet/Ec2/GetVpcEndpointService.cs index b23f3950d24..dc948d45d77 100644 --- a/sdk/dotnet/Ec2/GetVpcEndpointService.cs +++ b/sdk/dotnet/Ec2/GetVpcEndpointService.cs @@ -303,6 +303,18 @@ public List Filters [Input("serviceName")] public string? ServiceName { get; set; } + [Input("serviceRegions")] + private List? _serviceRegions; + + /// + /// AWS regions in which to look for services. + /// + public List ServiceRegions + { + get => _serviceRegions ?? (_serviceRegions = new List()); + set => _serviceRegions = value; + } + /// /// Service type, `Gateway` or `Interface`. /// @@ -355,6 +367,18 @@ public InputList Filters [Input("serviceName")] public Input? ServiceName { get; set; } + [Input("serviceRegions")] + private InputList? _serviceRegions; + + /// + /// AWS regions in which to look for services. + /// + public InputList ServiceRegions + { + get => _serviceRegions ?? (_serviceRegions = new InputList()); + set => _serviceRegions = value; + } + /// /// Service type, `Gateway` or `Interface`. /// @@ -394,7 +418,7 @@ public sealed class GetVpcEndpointServiceResult /// public readonly string Arn; /// - /// Availability Zones in which the service is available. + /// Availability Zones in which the service is available. Not available for endpoint services in other regions. /// public readonly ImmutableArray AvailabilityZones; /// @@ -422,12 +446,17 @@ public sealed class GetVpcEndpointServiceResult /// Private DNS names assigned to the VPC endpoint service. /// public readonly ImmutableArray PrivateDnsNames; + /// + /// Region of the endpoint service. + /// + public readonly string Region; public readonly string? Service; /// /// ID of the endpoint service. /// public readonly string ServiceId; public readonly string ServiceName; + public readonly ImmutableArray ServiceRegions; public readonly string ServiceType; /// /// The supported IP address types. @@ -464,12 +493,16 @@ private GetVpcEndpointServiceResult( ImmutableArray privateDnsNames, + string region, + string? service, string serviceId, string serviceName, + ImmutableArray serviceRegions, + string serviceType, ImmutableArray supportedIpAddressTypes, @@ -488,9 +521,11 @@ private GetVpcEndpointServiceResult( Owner = owner; PrivateDnsName = privateDnsName; PrivateDnsNames = privateDnsNames; + Region = region; Service = service; ServiceId = serviceId; ServiceName = serviceName; + ServiceRegions = serviceRegions; ServiceType = serviceType; SupportedIpAddressTypes = supportedIpAddressTypes; Tags = tags; diff --git a/sdk/dotnet/Ec2/PeeringConnectionOptions.cs b/sdk/dotnet/Ec2/PeeringConnectionOptions.cs index 949cae1f1ba..9754079af58 100644 --- a/sdk/dotnet/Ec2/PeeringConnectionOptions.cs +++ b/sdk/dotnet/Ec2/PeeringConnectionOptions.cs @@ -145,13 +145,13 @@ namespace Pulumi.Aws.Ec2 public partial class PeeringConnectionOptions : global::Pulumi.CustomResource { /// - /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). /// [Output("accepter")] public Output Accepter { get; private set; } = null!; /// - /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). /// [Output("requester")] public Output Requester { get; private set; } = null!; @@ -209,13 +209,13 @@ public static PeeringConnectionOptions Get(string name, Input id, Peerin public sealed class PeeringConnectionOptionsArgs : global::Pulumi.ResourceArgs { /// - /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). /// [Input("accepter")] public Input? Accepter { get; set; } /// - /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). /// [Input("requester")] public Input? Requester { get; set; } @@ -235,13 +235,13 @@ public PeeringConnectionOptionsArgs() public sealed class PeeringConnectionOptionsState : global::Pulumi.ResourceArgs { /// - /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + /// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). /// [Input("accepter")] public Input? Accepter { get; set; } /// - /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + /// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). /// [Input("requester")] public Input? Requester { get; set; } diff --git a/sdk/dotnet/Ecr/AccountSetting.cs b/sdk/dotnet/Ecr/AccountSetting.cs index 7eaf22a50a2..57bff10e400 100644 --- a/sdk/dotnet/Ecr/AccountSetting.cs +++ b/sdk/dotnet/Ecr/AccountSetting.cs @@ -14,6 +14,8 @@ namespace Pulumi.Aws.Ecr /// /// ## Example Usage /// + /// ### Configuring Basic Scanning + /// /// ```csharp /// using System.Collections.Generic; /// using System.Linq; @@ -22,10 +24,29 @@ namespace Pulumi.Aws.Ecr /// /// return await Deployment.RunAsync(() => /// { - /// var foo = new Aws.Ecr.AccountSetting("foo", new() + /// var basicScanTypeVersion = new Aws.Ecr.AccountSetting("basic_scan_type_version", new() /// { /// Name = "BASIC_SCAN_TYPE_VERSION", - /// Value = "CLAIR", + /// Value = "AWS_NATIVE", + /// }); + /// + /// }); + /// ``` + /// + /// ### Configuring Registry Policy Scope + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var registryPolicyScope = new Aws.Ecr.AccountSetting("registry_policy_scope", new() + /// { + /// Name = "REGISTRY_POLICY_SCOPE", + /// Value = "V2", /// }); /// /// }); @@ -33,7 +54,7 @@ namespace Pulumi.Aws.Ecr /// /// ## Import /// - /// Using `pulumi import`, import EMR Security Configurations using the `name`. For example: + /// Using `pulumi import`, import EMR Security Configurations using the account setting name. For example: /// /// ```sh /// $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION @@ -43,13 +64,15 @@ namespace Pulumi.Aws.Ecr public partial class AccountSetting : global::Pulumi.CustomResource { /// - /// The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + /// Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. /// [Output("name")] public Output Name { get; private set; } = null!; /// - /// The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + /// Setting value that is specified. Valid values are: + /// * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + /// * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. /// [Output("value")] public Output Value { get; private set; } = null!; @@ -101,13 +124,15 @@ public static AccountSetting Get(string name, Input id, AccountSettingSt public sealed class AccountSettingArgs : global::Pulumi.ResourceArgs { /// - /// The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + /// Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. /// [Input("name")] public Input? Name { get; set; } /// - /// The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + /// Setting value that is specified. Valid values are: + /// * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + /// * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. /// [Input("value", required: true)] public Input Value { get; set; } = null!; @@ -121,13 +146,15 @@ public AccountSettingArgs() public sealed class AccountSettingState : global::Pulumi.ResourceArgs { /// - /// The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + /// Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. /// [Input("name")] public Input? Name { get; set; } /// - /// The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + /// Setting value that is specified. Valid values are: + /// * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + /// * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. /// [Input("value")] public Input? Value { get; set; } diff --git a/sdk/dotnet/Ecs/GetClusters.cs b/sdk/dotnet/Ecs/GetClusters.cs new file mode 100644 index 00000000000..67f4addc647 --- /dev/null +++ b/sdk/dotnet/Ecs/GetClusters.cs @@ -0,0 +1,107 @@ +// *** 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.Ecs +{ + public static class GetClusters + { + /// + /// Data source for managing an AWS ECS (Elastic Container) Clusters. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.Ecs.GetClusters.Invoke(); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws:ecs/getClusters:getClusters", InvokeArgs.Empty, options.WithDefaults()); + + /// + /// Data source for managing an AWS ECS (Elastic Container) Clusters. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.Ecs.GetClusters.Invoke(); + /// + /// }); + /// ``` + /// + public static Output Invoke(InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws:ecs/getClusters:getClusters", InvokeArgs.Empty, options.WithDefaults()); + + /// + /// Data source for managing an AWS ECS (Elastic Container) Clusters. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = Aws.Ecs.GetClusters.Invoke(); + /// + /// }); + /// ``` + /// + public static Output Invoke(InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws:ecs/getClusters:getClusters", InvokeArgs.Empty, options.WithDefaults()); + } + + + [OutputType] + public sealed class GetClustersResult + { + /// + /// List of ECS cluster ARNs associated with the account. + /// + public readonly ImmutableArray ClusterArns; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + + [OutputConstructor] + private GetClustersResult( + ImmutableArray clusterArns, + + string id) + { + ClusterArns = clusterArns; + Id = id; + } + } +} diff --git a/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigArgs.cs b/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigArgs.cs new file mode 100644 index 00000000000..fdc694bc0fb --- /dev/null +++ b/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigArgs.cs @@ -0,0 +1,26 @@ +// *** 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.Eks.Inputs +{ + + public sealed class NodeGroupNodeRepairConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public NodeGroupNodeRepairConfigArgs() + { + } + public static new NodeGroupNodeRepairConfigArgs Empty => new NodeGroupNodeRepairConfigArgs(); + } +} diff --git a/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigGetArgs.cs b/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigGetArgs.cs new file mode 100644 index 00000000000..14611342fb4 --- /dev/null +++ b/sdk/dotnet/Eks/Inputs/NodeGroupNodeRepairConfigGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.Eks.Inputs +{ + + public sealed class NodeGroupNodeRepairConfigGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + public NodeGroupNodeRepairConfigGetArgs() + { + } + public static new NodeGroupNodeRepairConfigGetArgs Empty => new NodeGroupNodeRepairConfigGetArgs(); + } +} diff --git a/sdk/dotnet/Eks/NodeGroup.cs b/sdk/dotnet/Eks/NodeGroup.cs index ca9b0d63283..1a9bc6b14d6 100644 --- a/sdk/dotnet/Eks/NodeGroup.cs +++ b/sdk/dotnet/Eks/NodeGroup.cs @@ -239,6 +239,12 @@ public partial class NodeGroup : global::Pulumi.CustomResource [Output("nodeGroupNamePrefix")] public Output NodeGroupNamePrefix { get; private set; } = null!; + /// + /// The node auto repair configuration for the node group. See `node_repair_config` below for details. + /// + [Output("nodeRepairConfig")] + public Output NodeRepairConfig { get; private set; } = null!; + /// /// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. /// @@ -431,6 +437,12 @@ public InputMap Labels [Input("nodeGroupNamePrefix")] public Input? NodeGroupNamePrefix { get; set; } + /// + /// The node auto repair configuration for the node group. See `node_repair_config` below for details. + /// + [Input("nodeRepairConfig")] + public Input? NodeRepairConfig { get; set; } + /// /// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. /// @@ -591,6 +603,12 @@ public InputMap Labels [Input("nodeGroupNamePrefix")] public Input? NodeGroupNamePrefix { get; set; } + /// + /// The node auto repair configuration for the node group. See `node_repair_config` below for details. + /// + [Input("nodeRepairConfig")] + public Input? NodeRepairConfig { get; set; } + /// /// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. /// diff --git a/sdk/dotnet/Eks/Outputs/NodeGroupNodeRepairConfig.cs b/sdk/dotnet/Eks/Outputs/NodeGroupNodeRepairConfig.cs new file mode 100644 index 00000000000..2ebd5f46144 --- /dev/null +++ b/sdk/dotnet/Eks/Outputs/NodeGroupNodeRepairConfig.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.Eks.Outputs +{ + + [OutputType] + public sealed class NodeGroupNodeRepairConfig + { + /// + /// Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + /// + public readonly bool? Enabled; + + [OutputConstructor] + private NodeGroupNodeRepairConfig(bool? enabled) + { + Enabled = enabled; + } + } +} diff --git a/sdk/dotnet/ElastiCache/User.cs b/sdk/dotnet/ElastiCache/User.cs index ced736a1cf7..24cce502eca 100644 --- a/sdk/dotnet/ElastiCache/User.cs +++ b/sdk/dotnet/ElastiCache/User.cs @@ -119,7 +119,7 @@ public partial class User : global::Pulumi.CustomResource public Output AuthenticationMode { get; private set; } = null!; /// - /// The current supported value is `REDIS`. + /// The current supported values are `REDIS`, `VALKEY`. /// [Output("engine")] public Output Engine { get; private set; } = null!; @@ -222,7 +222,7 @@ public sealed class UserArgs : global::Pulumi.ResourceArgs public Input? AuthenticationMode { get; set; } /// - /// The current supported value is `REDIS`. + /// The current supported values are `REDIS`, `VALKEY`. /// [Input("engine", required: true)] public Input Engine { get; set; } = null!; @@ -302,7 +302,7 @@ public sealed class UserState : global::Pulumi.ResourceArgs public Input? AuthenticationMode { get; set; } /// - /// The current supported value is `REDIS`. + /// The current supported values are `REDIS`, `VALKEY`. /// [Input("engine")] public Input? Engine { get; set; } diff --git a/sdk/dotnet/ElastiCache/UserGroup.cs b/sdk/dotnet/ElastiCache/UserGroup.cs index aba0dfb22c9..6aae23cae11 100644 --- a/sdk/dotnet/ElastiCache/UserGroup.cs +++ b/sdk/dotnet/ElastiCache/UserGroup.cs @@ -65,7 +65,7 @@ public partial class UserGroup : global::Pulumi.CustomResource public Output Arn { get; private set; } = null!; /// - /// The current supported value is `REDIS`. + /// The current supported value are `REDIS`, `VALKEY`. /// [Output("engine")] public Output Engine { get; private set; } = null!; @@ -143,7 +143,7 @@ public static UserGroup Get(string name, Input id, UserGroupState? state public sealed class UserGroupArgs : global::Pulumi.ResourceArgs { /// - /// The current supported value is `REDIS`. + /// The current supported value are `REDIS`, `VALKEY`. /// [Input("engine", required: true)] public Input Engine { get; set; } = null!; @@ -195,7 +195,7 @@ public sealed class UserGroupState : global::Pulumi.ResourceArgs public Input? Arn { get; set; } /// - /// The current supported value is `REDIS`. + /// The current supported value are `REDIS`, `VALKEY`. /// [Input("engine")] public Input? Engine { get; set; } diff --git a/sdk/dotnet/Emr/Studio.cs b/sdk/dotnet/Emr/Studio.cs index 5189f4e49e2..45d1d9963fd 100644 --- a/sdk/dotnet/Emr/Studio.cs +++ b/sdk/dotnet/Emr/Studio.cs @@ -76,6 +76,12 @@ public partial class Studio : global::Pulumi.CustomResource [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + /// + [Output("encryptionKeyArn")] + public Output EncryptionKeyArn { get; private set; } = null!; + /// /// The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. /// @@ -211,6 +217,12 @@ public sealed class StudioArgs : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } + /// + /// The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + /// + [Input("encryptionKeyArn")] + public Input? EncryptionKeyArn { get; set; } + /// /// The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. /// @@ -317,6 +329,12 @@ public sealed class StudioState : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } + /// + /// The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + /// + [Input("encryptionKeyArn")] + public Input? EncryptionKeyArn { get; set; } + /// /// The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. /// diff --git a/sdk/dotnet/Fsx/WindowsFileSystem.cs b/sdk/dotnet/Fsx/WindowsFileSystem.cs index 33f6a924859..6e730a4d111 100644 --- a/sdk/dotnet/Fsx/WindowsFileSystem.cs +++ b/sdk/dotnet/Fsx/WindowsFileSystem.cs @@ -32,12 +32,12 @@ namespace Pulumi.Aws.Fsx /// { /// ActiveDirectoryId = exampleAwsDirectoryServiceDirectory.Id, /// KmsKeyId = exampleAwsKmsKey.Arn, - /// StorageCapacity = 300, + /// StorageCapacity = 32, /// SubnetIds = new[] /// { /// exampleAwsSubnet.Id, /// }, - /// ThroughputCapacity = 1024, + /// ThroughputCapacity = 32, /// }); /// /// }); @@ -58,12 +58,12 @@ namespace Pulumi.Aws.Fsx /// var example = new Aws.Fsx.WindowsFileSystem("example", new() /// { /// KmsKeyId = exampleAwsKmsKey.Arn, - /// StorageCapacity = 300, + /// StorageCapacity = 32, /// SubnetIds = new[] /// { /// exampleAwsSubnet.Id, /// }, - /// ThroughputCapacity = 1024, + /// ThroughputCapacity = 32, /// SelfManagedActiveDirectory = new Aws.Fsx.Inputs.WindowsFileSystemSelfManagedActiveDirectoryArgs /// { /// DnsIps = new[] diff --git a/sdk/dotnet/GuardDuty/OrganizationConfiguration.cs b/sdk/dotnet/GuardDuty/OrganizationConfiguration.cs index 8db02f19afe..c5e246faf44 100644 --- a/sdk/dotnet/GuardDuty/OrganizationConfiguration.cs +++ b/sdk/dotnet/GuardDuty/OrganizationConfiguration.cs @@ -86,7 +86,7 @@ public partial class OrganizationConfiguration : global::Pulumi.CustomResource public Output AutoEnableOrganizationMembers { get; private set; } = null!; /// - /// Configuration for the collected datasources. + /// Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. /// [Output("datasources")] public Output Datasources { get; private set; } = null!; @@ -156,7 +156,7 @@ public sealed class OrganizationConfigurationArgs : global::Pulumi.ResourceArgs public Input? AutoEnableOrganizationMembers { get; set; } /// - /// Configuration for the collected datasources. + /// Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. /// [Input("datasources")] public Input? Datasources { get; set; } @@ -188,7 +188,7 @@ public sealed class OrganizationConfigurationState : global::Pulumi.ResourceArgs public Input? AutoEnableOrganizationMembers { get; set; } /// - /// Configuration for the collected datasources. + /// Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. /// [Input("datasources")] public Input? Datasources { get; set; } diff --git a/sdk/dotnet/LB/TrustStore.cs b/sdk/dotnet/LB/TrustStore.cs index 04428fdbc59..3b47af2b97c 100644 --- a/sdk/dotnet/LB/TrustStore.cs +++ b/sdk/dotnet/LB/TrustStore.cs @@ -14,6 +14,44 @@ namespace Pulumi.Aws.LB /// /// ## Example Usage /// + /// ### Trust Store Load Balancer Listener + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var test = new Aws.LB.TrustStore("test", new() + /// { + /// Name = "tf-example-lb-ts", + /// CaCertificatesBundleS3Bucket = "...", + /// CaCertificatesBundleS3Key = "...", + /// }); + /// + /// var example = new Aws.LB.Listener("example", new() + /// { + /// LoadBalancerArn = exampleAwsLb.Id, + /// DefaultActions = new[] + /// { + /// new Aws.LB.Inputs.ListenerDefaultActionArgs + /// { + /// TargetGroupArn = exampleAwsLbTargetGroup.Id, + /// Type = "forward", + /// }, + /// }, + /// MutualAuthentication = new Aws.LB.Inputs.ListenerMutualAuthenticationArgs + /// { + /// Mode = "verify", + /// TrustStoreArn = test.Arn, + /// }, + /// }); + /// + /// }); + /// ``` + /// /// ## Import /// /// Using `pulumi import`, import Target Groups using their ARN. For example: diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationArgs.cs index c4cfe4e6b67..daef21a6869 100644 --- a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationArgs.cs +++ b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationArgs.cs @@ -36,6 +36,9 @@ public sealed class ReplicatorReplicationInfoListTopicReplicationArgs : global:: [Input("startingPosition")] public Input? StartingPosition { get; set; } + /// + /// Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + /// [Input("topicNameConfiguration")] public Input? TopicNameConfiguration { get; set; } diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationGetArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationGetArgs.cs index 9b0a941162a..58c05de821d 100644 --- a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationGetArgs.cs +++ b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationGetArgs.cs @@ -36,6 +36,9 @@ public sealed class ReplicatorReplicationInfoListTopicReplicationGetArgs : globa [Input("startingPosition")] public Input? StartingPosition { get; set; } + /// + /// Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + /// [Input("topicNameConfiguration")] public Input? TopicNameConfiguration { get; set; } diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.cs index d6f7376c867..023bdbc8838 100644 --- a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.cs +++ b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.Aws.Msk.Inputs public sealed class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs : global::Pulumi.ResourceArgs { + /// + /// The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationGetArgs.cs b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationGetArgs.cs index 334ebfd958a..94f69bdde5d 100644 --- a/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationGetArgs.cs +++ b/sdk/dotnet/Msk/Inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationGetArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.Aws.Msk.Inputs public sealed class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + /// [Input("type")] public Input? Type { get; set; } diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplication.cs b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplication.cs index e356874dc08..bab7257a766 100644 --- a/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplication.cs +++ b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplication.cs @@ -29,6 +29,9 @@ public sealed class ReplicatorReplicationInfoListTopicReplication /// Configuration for specifying the position in the topics to start replicating from. /// public readonly Outputs.ReplicatorReplicationInfoListTopicReplicationStartingPosition? StartingPosition; + /// + /// Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + /// public readonly Outputs.ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration? TopicNameConfiguration; /// /// List of regular expression patterns indicating the topics that should not be replica. diff --git a/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.cs b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.cs index cb76435e3e8..2189dc8ad09 100644 --- a/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.cs +++ b/sdk/dotnet/Msk/Outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.cs @@ -13,6 +13,9 @@ namespace Pulumi.Aws.Msk.Outputs [OutputType] public sealed class ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration { + /// + /// The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + /// public readonly string? Type; [OutputConstructor] diff --git a/sdk/dotnet/Msk/Replicator.cs b/sdk/dotnet/Msk/Replicator.cs index 50e7a00ca02..82fcfcd97cc 100644 --- a/sdk/dotnet/Msk/Replicator.cs +++ b/sdk/dotnet/Msk/Replicator.cs @@ -14,6 +14,93 @@ namespace Pulumi.Aws.Msk /// /// ## Example Usage /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var test = new Aws.Msk.Replicator("test", new() + /// { + /// ReplicatorName = "test-name", + /// Description = "test-description", + /// ServiceExecutionRoleArn = sourceAwsIamRole.Arn, + /// KafkaClusters = new[] + /// { + /// new Aws.Msk.Inputs.ReplicatorKafkaClusterArgs + /// { + /// AmazonMskCluster = new Aws.Msk.Inputs.ReplicatorKafkaClusterAmazonMskClusterArgs + /// { + /// MskClusterArn = source.Arn, + /// }, + /// VpcConfig = new Aws.Msk.Inputs.ReplicatorKafkaClusterVpcConfigArgs + /// { + /// SubnetIds = sourceAwsSubnet.Select(__item => __item.Id).ToList(), + /// SecurityGroupsIds = new[] + /// { + /// sourceAwsSecurityGroup.Id, + /// }, + /// }, + /// }, + /// new Aws.Msk.Inputs.ReplicatorKafkaClusterArgs + /// { + /// AmazonMskCluster = new Aws.Msk.Inputs.ReplicatorKafkaClusterAmazonMskClusterArgs + /// { + /// MskClusterArn = target.Arn, + /// }, + /// VpcConfig = new Aws.Msk.Inputs.ReplicatorKafkaClusterVpcConfigArgs + /// { + /// SubnetIds = targetAwsSubnet.Select(__item => __item.Id).ToList(), + /// SecurityGroupsIds = new[] + /// { + /// targetAwsSecurityGroup.Id, + /// }, + /// }, + /// }, + /// }, + /// ReplicationInfoList = new Aws.Msk.Inputs.ReplicatorReplicationInfoListArgs + /// { + /// SourceKafkaClusterArn = source.Arn, + /// TargetKafkaClusterArn = target.Arn, + /// TargetCompressionType = "NONE", + /// TopicReplications = new[] + /// { + /// new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationArgs + /// { + /// TopicNameConfiguration = new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs + /// { + /// Type = "PREFIXED_WITH_SOURCE_CLUSTER_ALIAS", + /// }, + /// TopicsToReplicates = new[] + /// { + /// ".*", + /// }, + /// StartingPosition = new Aws.Msk.Inputs.ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs + /// { + /// Type = "LATEST", + /// }, + /// }, + /// }, + /// ConsumerGroupReplications = new[] + /// { + /// new Aws.Msk.Inputs.ReplicatorReplicationInfoListConsumerGroupReplicationArgs + /// { + /// ConsumerGroupsToReplicates = new[] + /// { + /// ".*", + /// }, + /// }, + /// }, + /// }, + /// }); + /// + /// }); + /// ``` + /// /// ## Import /// /// Using `pulumi import`, import MSK replicators using the replicator ARN. For example: diff --git a/sdk/dotnet/Quicksight/User.cs b/sdk/dotnet/Quicksight/User.cs index e1f83feaf25..98dc603cbd1 100644 --- a/sdk/dotnet/Quicksight/User.cs +++ b/sdk/dotnet/Quicksight/User.cs @@ -14,6 +14,8 @@ namespace Pulumi.Aws.Quicksight /// /// ## Example Usage /// + /// ### Create User With IAM Identity Type Using an IAM Role + /// /// ```csharp /// using System.Collections.Generic; /// using System.Linq; @@ -24,12 +26,54 @@ namespace Pulumi.Aws.Quicksight /// { /// var example = new Aws.Quicksight.User("example", new() /// { - /// SessionName = "an-author", - /// Email = "author@example.com", - /// Namespace = "foo", + /// Email = "author1@example.com", /// IdentityType = "IAM", - /// IamArn = "arn:aws:iam::123456789012:user/Example", /// UserRole = "AUTHOR", + /// IamArn = "arn:aws:iam::123456789012:role/AuthorRole", + /// SessionName = "author1", + /// }); + /// + /// }); + /// ``` + /// + /// ### Create User With IAM Identity Type Using an IAM User + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.Quicksight.User("example", new() + /// { + /// Email = "authorpro1@example.com", + /// IdentityType = "IAM", + /// UserRole = "AUTHOR_PRO", + /// IamArn = "arn:aws:iam::123456789012:user/authorpro1", + /// }); + /// + /// }); + /// ``` + /// + /// ### Create User With QuickSight Identity Type in Non-Default Namespace + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.Quicksight.User("example", new() + /// { + /// Email = "reader1@example.com", + /// IdentityType = "QUICKSIGHT", + /// UserRole = "READER", + /// Namespace = "example", + /// UserName = "reader1", /// }); /// /// }); @@ -43,31 +87,31 @@ namespace Pulumi.Aws.Quicksight public partial class User : global::Pulumi.CustomResource { /// - /// Amazon Resource Name (ARN) of the user + /// Amazon Resource Name (ARN) for the user. /// [Output("arn")] public Output Arn { get; private set; } = null!; /// - /// The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + /// ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. /// [Output("awsAccountId")] public Output AwsAccountId { get; private set; } = null!; /// - /// The email address of the user that you want to register. + /// Email address of the user that you want to register. /// [Output("email")] public Output Email { get; private set; } = null!; /// - /// The ARN of the IAM user or role that you are registering with Amazon QuickSight. + /// ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. /// [Output("iamArn")] public Output IamArn { get; private set; } = null!; /// - /// Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + /// Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. /// [Output("identityType")] public Output IdentityType { get; private set; } = null!; @@ -79,19 +123,27 @@ public partial class User : global::Pulumi.CustomResource public Output Namespace { get; private set; } = null!; /// - /// The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + /// Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. /// [Output("sessionName")] public Output SessionName { get; private set; } = null!; /// - /// The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + /// URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + /// + [Output("userInvitationUrl")] + public Output UserInvitationUrl { get; private set; } = null!; + + /// + /// Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. /// [Output("userName")] public Output UserName { get; private set; } = null!; /// - /// The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + /// Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + /// + /// The following arguments are optional: /// [Output("userRole")] public Output UserRole { get; private set; } = null!; @@ -143,25 +195,25 @@ public static User Get(string name, Input id, UserState? state = null, C public sealed class UserArgs : global::Pulumi.ResourceArgs { /// - /// The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + /// ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. /// [Input("awsAccountId")] public Input? AwsAccountId { get; set; } /// - /// The email address of the user that you want to register. + /// Email address of the user that you want to register. /// [Input("email", required: true)] public Input Email { get; set; } = null!; /// - /// The ARN of the IAM user or role that you are registering with Amazon QuickSight. + /// ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. /// [Input("iamArn")] public Input? IamArn { get; set; } /// - /// Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + /// Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. /// [Input("identityType", required: true)] public Input IdentityType { get; set; } = null!; @@ -173,19 +225,21 @@ public sealed class UserArgs : global::Pulumi.ResourceArgs public Input? Namespace { get; set; } /// - /// The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + /// Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. /// [Input("sessionName")] public Input? SessionName { get; set; } /// - /// The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + /// Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. /// [Input("userName")] public Input? UserName { get; set; } /// - /// The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + /// Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + /// + /// The following arguments are optional: /// [Input("userRole", required: true)] public Input UserRole { get; set; } = null!; @@ -199,31 +253,31 @@ public UserArgs() public sealed class UserState : global::Pulumi.ResourceArgs { /// - /// Amazon Resource Name (ARN) of the user + /// Amazon Resource Name (ARN) for the user. /// [Input("arn")] public Input? Arn { get; set; } /// - /// The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + /// ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. /// [Input("awsAccountId")] public Input? AwsAccountId { get; set; } /// - /// The email address of the user that you want to register. + /// Email address of the user that you want to register. /// [Input("email")] public Input? Email { get; set; } /// - /// The ARN of the IAM user or role that you are registering with Amazon QuickSight. + /// ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. /// [Input("iamArn")] public Input? IamArn { get; set; } /// - /// Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + /// Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. /// [Input("identityType")] public Input? IdentityType { get; set; } @@ -235,19 +289,27 @@ public sealed class UserState : global::Pulumi.ResourceArgs public Input? Namespace { get; set; } /// - /// The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + /// Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. /// [Input("sessionName")] public Input? SessionName { get; set; } /// - /// The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + /// URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + /// + [Input("userInvitationUrl")] + public Input? UserInvitationUrl { get; set; } + + /// + /// Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. /// [Input("userName")] public Input? UserName { get; set; } /// - /// The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + /// Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + /// + /// The following arguments are optional: /// [Input("userRole")] public Input? UserRole { get; set; } diff --git a/sdk/dotnet/Rds/Cluster.cs b/sdk/dotnet/Rds/Cluster.cs index 33e57325846..dcad52b897b 100644 --- a/sdk/dotnet/Rds/Cluster.cs +++ b/sdk/dotnet/Rds/Cluster.cs @@ -588,7 +588,7 @@ public partial class Cluster : global::Pulumi.CustomResource public Output NetworkType { get; private set; } = null!; /// - /// Enables Performance Insights for the RDS Cluster + /// Enables Performance Insights. /// [Output("performanceInsightsEnabled")] public Output PerformanceInsightsEnabled { get; private set; } = null!; @@ -1036,7 +1036,7 @@ public Input? MasterPassword public Input? NetworkType { get; set; } /// - /// Enables Performance Insights for the RDS Cluster + /// Enables Performance Insights. /// [Input("performanceInsightsEnabled")] public Input? PerformanceInsightsEnabled { get; set; } @@ -1489,7 +1489,7 @@ public InputList MasterUserSecrets public Input? NetworkType { get; set; } /// - /// Enables Performance Insights for the RDS Cluster + /// Enables Performance Insights. /// [Input("performanceInsightsEnabled")] public Input? PerformanceInsightsEnabled { get; set; } diff --git a/sdk/dotnet/Rds/ClusterInstance.cs b/sdk/dotnet/Rds/ClusterInstance.cs index ca32b5de5c4..1ec6ccb998f 100644 --- a/sdk/dotnet/Rds/ClusterInstance.cs +++ b/sdk/dotnet/Rds/ClusterInstance.cs @@ -218,7 +218,7 @@ public partial class ClusterInstance : global::Pulumi.CustomResource public Output NetworkType { get; private set; } = null!; /// - /// Specifies whether Performance Insights is enabled or not. + /// Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. /// [Output("performanceInsightsEnabled")] public Output PerformanceInsightsEnabled { get; private set; } = null!; @@ -439,7 +439,7 @@ public sealed class ClusterInstanceArgs : global::Pulumi.ResourceArgs public Input? MonitoringRoleArn { get; set; } /// - /// Specifies whether Performance Insights is enabled or not. + /// Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. /// [Input("performanceInsightsEnabled")] public Input? PerformanceInsightsEnabled { get; set; } @@ -640,7 +640,7 @@ public sealed class ClusterInstanceState : global::Pulumi.ResourceArgs public Input? NetworkType { get; set; } /// - /// Specifies whether Performance Insights is enabled or not. + /// Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. /// [Input("performanceInsightsEnabled")] public Input? PerformanceInsightsEnabled { get; set; } diff --git a/sdk/dotnet/Rds/GetCertificate.cs b/sdk/dotnet/Rds/GetCertificate.cs index aadafb41603..3444ddcb685 100644 --- a/sdk/dotnet/Rds/GetCertificate.cs +++ b/sdk/dotnet/Rds/GetCertificate.cs @@ -87,6 +87,12 @@ public static Output Invoke(GetCertificateInvokeArgs args, public sealed class GetCertificateArgs : global::Pulumi.InvokeArgs { + /// + /// When enabled, returns the default certificate for new RDS instances. + /// + [Input("defaultForNewLaunches")] + public bool? DefaultForNewLaunches { get; set; } + /// /// Certificate identifier. For example, `rds-ca-2019`. /// @@ -107,6 +113,12 @@ public GetCertificateArgs() public sealed class GetCertificateInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// When enabled, returns the default certificate for new RDS instances. + /// + [Input("defaultForNewLaunches")] + public Input? DefaultForNewLaunches { get; set; } + /// /// Certificate identifier. For example, `rds-ca-2019`. /// @@ -145,6 +157,7 @@ public sealed class GetCertificateResult /// If there is an override for the default certificate identifier, when the override expires. /// public readonly string CustomerOverrideValidTill; + public readonly bool? DefaultForNewLaunches; public readonly string Id; public readonly bool? LatestValidTill; /// @@ -170,6 +183,8 @@ private GetCertificateResult( string customerOverrideValidTill, + bool? defaultForNewLaunches, + string id, bool? latestValidTill, @@ -184,6 +199,7 @@ private GetCertificateResult( CertificateType = certificateType; CustomerOverride = customerOverride; CustomerOverrideValidTill = customerOverrideValidTill; + DefaultForNewLaunches = defaultForNewLaunches; Id = id; LatestValidTill = latestValidTill; Thumbprint = thumbprint; diff --git a/sdk/dotnet/Rds/GetEngineVersion.cs b/sdk/dotnet/Rds/GetEngineVersion.cs index b87b3ce05d9..22221b9ff0b 100644 --- a/sdk/dotnet/Rds/GetEngineVersion.cs +++ b/sdk/dotnet/Rds/GetEngineVersion.cs @@ -457,14 +457,26 @@ public sealed class GetEngineVersionResult /// public readonly ImmutableArray SupportedTimezones; /// + /// Whether the certificates can be rotated without restarting the Aurora instance. + /// + public readonly bool SupportsCertificateRotationWithoutRestart; + /// /// Whether you can use Aurora global databases with the engine version. /// public readonly bool SupportsGlobalDatabases; /// + /// Whether the engine version supports integrations with other AWS services. + /// + public readonly bool SupportsIntegrations; + /// /// Whether the engine version supports Aurora Limitless Database. /// public readonly bool SupportsLimitlessDatabase; /// + /// Whether the engine version supports local write forwarding or not. + /// + public readonly bool SupportsLocalWriteForwarding; + /// /// Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. /// public readonly bool SupportsLogExportsToCloudwatch; @@ -540,10 +552,16 @@ private GetEngineVersionResult( ImmutableArray supportedTimezones, + bool supportsCertificateRotationWithoutRestart, + bool supportsGlobalDatabases, + bool supportsIntegrations, + bool supportsLimitlessDatabase, + bool supportsLocalWriteForwarding, + bool supportsLogExportsToCloudwatch, bool supportsParallelQuery, @@ -582,8 +600,11 @@ private GetEngineVersionResult( SupportedFeatureNames = supportedFeatureNames; SupportedModes = supportedModes; SupportedTimezones = supportedTimezones; + SupportsCertificateRotationWithoutRestart = supportsCertificateRotationWithoutRestart; SupportsGlobalDatabases = supportsGlobalDatabases; + SupportsIntegrations = supportsIntegrations; SupportsLimitlessDatabase = supportsLimitlessDatabase; + SupportsLocalWriteForwarding = supportsLocalWriteForwarding; SupportsLogExportsToCloudwatch = supportsLogExportsToCloudwatch; SupportsParallelQuery = supportsParallelQuery; SupportsReadReplica = supportsReadReplica; diff --git a/sdk/dotnet/Rds/Inputs/ProxyAuthArgs.cs b/sdk/dotnet/Rds/Inputs/ProxyAuthArgs.cs index 85b87570cd7..a1013e16b20 100644 --- a/sdk/dotnet/Rds/Inputs/ProxyAuthArgs.cs +++ b/sdk/dotnet/Rds/Inputs/ProxyAuthArgs.cs @@ -19,7 +19,7 @@ public sealed class ProxyAuthArgs : global::Pulumi.ResourceArgs public Input? AuthScheme { get; set; } /// - /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. /// [Input("clientPasswordAuthType")] public Input? ClientPasswordAuthType { get; set; } diff --git a/sdk/dotnet/Rds/Inputs/ProxyAuthGetArgs.cs b/sdk/dotnet/Rds/Inputs/ProxyAuthGetArgs.cs index da27cbe22e3..8783d03f668 100644 --- a/sdk/dotnet/Rds/Inputs/ProxyAuthGetArgs.cs +++ b/sdk/dotnet/Rds/Inputs/ProxyAuthGetArgs.cs @@ -19,7 +19,7 @@ public sealed class ProxyAuthGetArgs : global::Pulumi.ResourceArgs public Input? AuthScheme { get; set; } /// - /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. /// [Input("clientPasswordAuthType")] public Input? ClientPasswordAuthType { get; set; } diff --git a/sdk/dotnet/Rds/Integration.cs b/sdk/dotnet/Rds/Integration.cs index a95e05d0154..fba24109f21 100644 --- a/sdk/dotnet/Rds/Integration.cs +++ b/sdk/dotnet/Rds/Integration.cs @@ -157,7 +157,9 @@ namespace Pulumi.Aws.Rds public partial class Integration : global::Pulumi.CustomResource { /// - /// Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + /// Set of non-secret key–value pairs that contains additional contextual information about the data. + /// For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + /// You can only include this parameter if you specify the `kms_key_id` parameter. /// [Output("additionalEncryptionContext")] public Output?> AdditionalEncryptionContext { get; private set; } = null!; @@ -168,6 +170,16 @@ public partial class Integration : global::Pulumi.CustomResource [Output("arn")] public Output Arn { get; private set; } = null!; + /// + /// Data filters for the integration. + /// These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + /// The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + /// Multiple expressions are separated by a comma. + /// See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + /// + [Output("dataFilter")] + public Output DataFilter { get; private set; } = null!; + /// /// Name of the integration. /// @@ -175,7 +187,9 @@ public partial class Integration : global::Pulumi.CustomResource public Output IntegrationName { get; private set; } = null!; /// - /// KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + /// KMS key identifier for the key to use to encrypt the integration. + /// If you don't specify an encryption key, RDS uses a default AWS owned key. + /// If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. /// [Output("kmsKeyId")] public Output KmsKeyId { get; private set; } = null!; @@ -259,7 +273,9 @@ public sealed class IntegrationArgs : global::Pulumi.ResourceArgs private InputMap? _additionalEncryptionContext; /// - /// Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + /// Set of non-secret key–value pairs that contains additional contextual information about the data. + /// For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + /// You can only include this parameter if you specify the `kms_key_id` parameter. /// public InputMap AdditionalEncryptionContext { @@ -267,6 +283,16 @@ public InputMap AdditionalEncryptionContext set => _additionalEncryptionContext = value; } + /// + /// Data filters for the integration. + /// These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + /// The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + /// Multiple expressions are separated by a comma. + /// See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + /// + [Input("dataFilter")] + public Input? DataFilter { get; set; } + /// /// Name of the integration. /// @@ -274,7 +300,9 @@ public InputMap AdditionalEncryptionContext public Input IntegrationName { get; set; } = null!; /// - /// KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + /// KMS key identifier for the key to use to encrypt the integration. + /// If you don't specify an encryption key, RDS uses a default AWS owned key. + /// If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. /// [Input("kmsKeyId")] public Input? KmsKeyId { get; set; } @@ -320,7 +348,9 @@ public sealed class IntegrationState : global::Pulumi.ResourceArgs private InputMap? _additionalEncryptionContext; /// - /// Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + /// Set of non-secret key–value pairs that contains additional contextual information about the data. + /// For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + /// You can only include this parameter if you specify the `kms_key_id` parameter. /// public InputMap AdditionalEncryptionContext { @@ -334,6 +364,16 @@ public InputMap AdditionalEncryptionContext [Input("arn")] public Input? Arn { get; set; } + /// + /// Data filters for the integration. + /// These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + /// The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + /// Multiple expressions are separated by a comma. + /// See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + /// + [Input("dataFilter")] + public Input? DataFilter { get; set; } + /// /// Name of the integration. /// @@ -341,7 +381,9 @@ public InputMap AdditionalEncryptionContext public Input? IntegrationName { get; set; } /// - /// KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + /// KMS key identifier for the key to use to encrypt the integration. + /// If you don't specify an encryption key, RDS uses a default AWS owned key. + /// If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. /// [Input("kmsKeyId")] public Input? KmsKeyId { get; set; } diff --git a/sdk/dotnet/Rds/Outputs/ProxyAuth.cs b/sdk/dotnet/Rds/Outputs/ProxyAuth.cs index 9d1b297d429..0eb4ce154eb 100644 --- a/sdk/dotnet/Rds/Outputs/ProxyAuth.cs +++ b/sdk/dotnet/Rds/Outputs/ProxyAuth.cs @@ -18,7 +18,7 @@ public sealed class ProxyAuth /// public readonly string? AuthScheme; /// - /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + /// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. /// public readonly string? ClientPasswordAuthType; /// diff --git a/sdk/dotnet/Route53/GetRecords.cs b/sdk/dotnet/Route53/GetRecords.cs new file mode 100644 index 00000000000..c10cd163dee --- /dev/null +++ b/sdk/dotnet/Route53/GetRecords.cs @@ -0,0 +1,270 @@ +// *** 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 GetRecords + { + /// + /// Use this data source to get the details of resource records in a Route 53 hosted zone. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// Return all records in the zone. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// }); + /// + /// }); + /// ``` + /// + /// ### Basic Usage with filter + /// + /// Return the records that starts with `www`. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// NameRegex = "^www", + /// }); + /// + /// }); + /// ``` + /// + public static Task InvokeAsync(GetRecordsArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws:route53/getRecords:getRecords", args ?? new GetRecordsArgs(), options.WithDefaults()); + + /// + /// Use this data source to get the details of resource records in a Route 53 hosted zone. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// Return all records in the zone. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// }); + /// + /// }); + /// ``` + /// + /// ### Basic Usage with filter + /// + /// Return the records that starts with `www`. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// NameRegex = "^www", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetRecordsInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws:route53/getRecords:getRecords", args ?? new GetRecordsInvokeArgs(), options.WithDefaults()); + + /// + /// Use this data source to get the details of resource records in a Route 53 hosted zone. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// Return all records in the zone. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// }); + /// + /// }); + /// ``` + /// + /// ### Basic Usage with filter + /// + /// Return the records that starts with `www`. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var selected = Aws.Route53.GetZone.Invoke(new() + /// { + /// Name = "test.com.", + /// PrivateZone = true, + /// }); + /// + /// var example = Aws.Route53.GetRecords.Invoke(new() + /// { + /// ZoneId = selected.Apply(getZoneResult => getZoneResult.ZoneId), + /// NameRegex = "^www", + /// }); + /// + /// }); + /// ``` + /// + public static Output Invoke(GetRecordsInvokeArgs args, InvokeOutputOptions options) + => global::Pulumi.Deployment.Instance.Invoke("aws:route53/getRecords:getRecords", args ?? new GetRecordsInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetRecordsArgs : global::Pulumi.InvokeArgs + { + /// + /// Regex string to apply to the resource record names returned by AWS. + /// + [Input("nameRegex")] + public string? NameRegex { get; set; } + + /// + /// The ID of the hosted zone that contains the resource record sets that you want to list. + /// + [Input("zoneId", required: true)] + public string ZoneId { get; set; } = null!; + + public GetRecordsArgs() + { + } + public static new GetRecordsArgs Empty => new GetRecordsArgs(); + } + + public sealed class GetRecordsInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Regex string to apply to the resource record names returned by AWS. + /// + [Input("nameRegex")] + public Input? NameRegex { get; set; } + + /// + /// The ID of the hosted zone that contains the resource record sets that you want to list. + /// + [Input("zoneId", required: true)] + public Input ZoneId { get; set; } = null!; + + public GetRecordsInvokeArgs() + { + } + public static new GetRecordsInvokeArgs Empty => new GetRecordsInvokeArgs(); + } + + + [OutputType] + public sealed class GetRecordsResult + { + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + public readonly string? NameRegex; + /// + /// The resource records sets. + /// + public readonly ImmutableArray ResourceRecordSets; + public readonly string ZoneId; + + [OutputConstructor] + private GetRecordsResult( + string id, + + string? nameRegex, + + ImmutableArray resourceRecordSets, + + string zoneId) + { + Id = id; + NameRegex = nameRegex; + ResourceRecordSets = resourceRecordSets; + ZoneId = zoneId; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetAliasTargetResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetAliasTargetResult.cs new file mode 100644 index 00000000000..1a3c70d65ed --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetAliasTargetResult.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.Route53.Outputs +{ + + [OutputType] + public sealed class GetRecordsResourceRecordSetAliasTargetResult + { + /// + /// Target DNS name. + /// + public readonly string DnsName; + /// + /// Whether an alias resource record set inherits the health of the referenced AWS resource. + /// + public readonly bool EvaluateTargetHealth; + /// + /// Target hosted zone ID. + /// + public readonly string HostedZoneId; + + [OutputConstructor] + private GetRecordsResourceRecordSetAliasTargetResult( + string dnsName, + + bool evaluateTargetHealth, + + string hostedZoneId) + { + DnsName = dnsName; + EvaluateTargetHealth = evaluateTargetHealth; + HostedZoneId = hostedZoneId; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetCidrRoutingConfigResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetCidrRoutingConfigResult.cs new file mode 100644 index 00000000000..890897717f9 --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetCidrRoutingConfigResult.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.Route53.Outputs +{ + + [OutputType] + public sealed class GetRecordsResourceRecordSetCidrRoutingConfigResult + { + /// + /// The CIDR collection ID. + /// + public readonly string CollectionId; + /// + /// The CIDR collection location name. + /// + public readonly string LocationName; + + [OutputConstructor] + private GetRecordsResourceRecordSetCidrRoutingConfigResult( + string collectionId, + + string locationName) + { + CollectionId = collectionId; + LocationName = locationName; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeolocationResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeolocationResult.cs new file mode 100644 index 00000000000..39202882ba9 --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeolocationResult.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.Route53.Outputs +{ + + [OutputType] + public sealed class GetRecordsResourceRecordSetGeolocationResult + { + /// + /// The two-letter code for the continent. + /// + public readonly string ContinentCode; + /// + /// The two-letter code for a country. + /// + public readonly string CountryCode; + /// + /// The two-letter code for a state of the United States. + /// + public readonly string SubdivisionCode; + + [OutputConstructor] + private GetRecordsResourceRecordSetGeolocationResult( + string continentCode, + + string countryCode, + + string subdivisionCode) + { + ContinentCode = continentCode; + CountryCode = countryCode; + SubdivisionCode = subdivisionCode; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult.cs new file mode 100644 index 00000000000..e9abd5a6951 --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult.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.Route53.Outputs +{ + + [OutputType] + public sealed class GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult + { + /// + /// Latitude. + /// + public readonly string Latitude; + /// + /// Longitude. + /// + public readonly string Longitude; + + [OutputConstructor] + private GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult( + string latitude, + + string longitude) + { + Latitude = latitude; + Longitude = longitude; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationResult.cs new file mode 100644 index 00000000000..9ddebc09619 --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetGeoproximityLocationResult.cs @@ -0,0 +1,49 @@ +// *** 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 GetRecordsResourceRecordSetGeoproximityLocationResult + { + /// + /// The AWS Region the resource you are directing DNS traffic to, is in. + /// + public readonly string AwsRegion; + /// + /// The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + /// + public readonly int Bias; + /// + /// Contains the longitude and latitude for a geographic region. + /// + public readonly Outputs.GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult Coordinates; + /// + /// An AWS Local Zone Group. + /// + public readonly string LocalZoneGroup; + + [OutputConstructor] + private GetRecordsResourceRecordSetGeoproximityLocationResult( + string awsRegion, + + int bias, + + Outputs.GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult coordinates, + + string localZoneGroup) + { + AwsRegion = awsRegion; + Bias = bias; + Coordinates = coordinates; + LocalZoneGroup = localZoneGroup; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResourceRecordResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResourceRecordResult.cs new file mode 100644 index 00000000000..60d246c0dde --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResourceRecordResult.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.Route53.Outputs +{ + + [OutputType] + public sealed class GetRecordsResourceRecordSetResourceRecordResult + { + /// + /// The DNS record value. + /// + public readonly string Value; + + [OutputConstructor] + private GetRecordsResourceRecordSetResourceRecordResult(string value) + { + Value = value; + } + } +} diff --git a/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResult.cs b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResult.cs new file mode 100644 index 00000000000..f63517ffd8e --- /dev/null +++ b/sdk/dotnet/Route53/Outputs/GetRecordsResourceRecordSetResult.cs @@ -0,0 +1,126 @@ +// *** 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 GetRecordsResourceRecordSetResult + { + /// + /// Information about the AWS resource traffic is routed to. + /// + public readonly Outputs.GetRecordsResourceRecordSetAliasTargetResult AliasTarget; + /// + /// Information about the CIDR location traffic is routed to. + /// + public readonly Outputs.GetRecordsResourceRecordSetCidrRoutingConfigResult CidrRoutingConfig; + /// + /// `PRIMARY` or `SECONDARY`. + /// + public readonly string Failover; + /// + /// Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + /// + public readonly Outputs.GetRecordsResourceRecordSetGeolocationResult Geolocation; + /// + /// Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + /// + public readonly Outputs.GetRecordsResourceRecordSetGeoproximityLocationResult GeoproximityLocation; + /// + /// ID of any applicable health check. + /// + public readonly string HealthCheckId; + /// + /// Traffic is routed approximately randomly to multiple resources. + /// + public readonly bool MultiValueAnswer; + /// + /// The name of the record. + /// + public readonly string Name; + /// + /// The Amazon EC2 Region of the resource that this resource record set refers to. + /// + public readonly string Region; + /// + /// The resource records. + /// + public readonly ImmutableArray ResourceRecords; + /// + /// An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + /// + public readonly string SetIdentifier; + /// + /// The ID of any traffic policy instance that Route 53 created this resource record set for. + /// + public readonly string TrafficPolicyInstanceId; + /// + /// The resource record cache time to live (TTL), in seconds. + /// + public readonly int Ttl; + /// + /// The DNS record type. + /// + public readonly string Type; + /// + /// Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + /// + public readonly int Weight; + + [OutputConstructor] + private GetRecordsResourceRecordSetResult( + Outputs.GetRecordsResourceRecordSetAliasTargetResult aliasTarget, + + Outputs.GetRecordsResourceRecordSetCidrRoutingConfigResult cidrRoutingConfig, + + string failover, + + Outputs.GetRecordsResourceRecordSetGeolocationResult geolocation, + + Outputs.GetRecordsResourceRecordSetGeoproximityLocationResult geoproximityLocation, + + string healthCheckId, + + bool multiValueAnswer, + + string name, + + string region, + + ImmutableArray resourceRecords, + + string setIdentifier, + + string trafficPolicyInstanceId, + + int ttl, + + string type, + + int weight) + { + AliasTarget = aliasTarget; + CidrRoutingConfig = cidrRoutingConfig; + Failover = failover; + Geolocation = geolocation; + GeoproximityLocation = geoproximityLocation; + HealthCheckId = healthCheckId; + MultiValueAnswer = multiValueAnswer; + Name = name; + Region = region; + ResourceRecords = resourceRecords; + SetIdentifier = setIdentifier; + TrafficPolicyInstanceId = trafficPolicyInstanceId; + Ttl = ttl; + Type = type; + Weight = weight; + } + } +} diff --git a/sdk/dotnet/Route53/Record.cs b/sdk/dotnet/Route53/Record.cs index d2237cc5f38..d4ec839e7ff 100644 --- a/sdk/dotnet/Route53/Record.cs +++ b/sdk/dotnet/Route53/Record.cs @@ -232,12 +232,12 @@ namespace Pulumi.Aws.Route53 /// Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): /// /// ```sh - /// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS + /// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS /// ``` /// If the record also contains a set identifier, append it: /// /// ```sh - /// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev + /// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev /// ``` /// [AwsResourceType("aws:route53/record:Record")] diff --git a/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderArgs.cs b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderArgs.cs new file mode 100644 index 00000000000..f10fed15015 --- /dev/null +++ b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderArgs.cs @@ -0,0 +1,26 @@ +// *** 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.S3.Inputs +{ + + public sealed class ObjectCopyOverrideProviderArgs : global::Pulumi.ResourceArgs + { + /// + /// Override the provider `default_tags` configuration block. + /// + [Input("defaultTags")] + public Input? DefaultTags { get; set; } + + public ObjectCopyOverrideProviderArgs() + { + } + public static new ObjectCopyOverrideProviderArgs Empty => new ObjectCopyOverrideProviderArgs(); + } +} diff --git a/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsArgs.cs b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsArgs.cs new file mode 100644 index 00000000000..d65ce0a5ed3 --- /dev/null +++ b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsArgs.cs @@ -0,0 +1,32 @@ +// *** 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.S3.Inputs +{ + + public sealed class ObjectCopyOverrideProviderDefaultTagsArgs : global::Pulumi.ResourceArgs + { + [Input("tags")] + private InputMap? _tags; + + /// + /// Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public ObjectCopyOverrideProviderDefaultTagsArgs() + { + } + public static new ObjectCopyOverrideProviderDefaultTagsArgs Empty => new ObjectCopyOverrideProviderDefaultTagsArgs(); + } +} diff --git a/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsGetArgs.cs b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsGetArgs.cs new file mode 100644 index 00000000000..826ecfac0de --- /dev/null +++ b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderDefaultTagsGetArgs.cs @@ -0,0 +1,32 @@ +// *** 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.S3.Inputs +{ + + public sealed class ObjectCopyOverrideProviderDefaultTagsGetArgs : global::Pulumi.ResourceArgs + { + [Input("tags")] + private InputMap? _tags; + + /// + /// Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + public ObjectCopyOverrideProviderDefaultTagsGetArgs() + { + } + public static new ObjectCopyOverrideProviderDefaultTagsGetArgs Empty => new ObjectCopyOverrideProviderDefaultTagsGetArgs(); + } +} diff --git a/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderGetArgs.cs b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderGetArgs.cs new file mode 100644 index 00000000000..0ba4929f763 --- /dev/null +++ b/sdk/dotnet/S3/Inputs/ObjectCopyOverrideProviderGetArgs.cs @@ -0,0 +1,26 @@ +// *** 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.S3.Inputs +{ + + public sealed class ObjectCopyOverrideProviderGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Override the provider `default_tags` configuration block. + /// + [Input("defaultTags")] + public Input? DefaultTags { get; set; } + + public ObjectCopyOverrideProviderGetArgs() + { + } + public static new ObjectCopyOverrideProviderGetArgs Empty => new ObjectCopyOverrideProviderGetArgs(); + } +} diff --git a/sdk/dotnet/S3/ObjectCopy.cs b/sdk/dotnet/S3/ObjectCopy.cs index 870746f772e..b2737237279 100644 --- a/sdk/dotnet/S3/ObjectCopy.cs +++ b/sdk/dotnet/S3/ObjectCopy.cs @@ -43,6 +43,36 @@ namespace Pulumi.Aws.S3 /// /// }); /// ``` + /// + /// ### Ignoring Provider `default_tags` + /// + /// S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). + /// If the resource's own `tags` and the provider-level `default_tags` would together lead to more than 10 tags on an S3 object copy, use the `override_provider` configuration block to suppress any provider-level `default_tags`. + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var test = new Aws.S3.ObjectCopy("test", new() + /// { + /// Bucket = "destination_bucket", + /// Key = "destination_key", + /// Source = "source_bucket/source_key", + /// OverrideProvider = new Aws.S3.Inputs.ObjectCopyOverrideProviderArgs + /// { + /// DefaultTags = new Aws.S3.Inputs.ObjectCopyOverrideProviderDefaultTagsArgs + /// { + /// Tags = null, + /// }, + /// }, + /// }); + /// + /// }); + /// ``` /// [AwsResourceType("aws:s3/objectCopy:ObjectCopy")] public partial class ObjectCopy : global::Pulumi.CustomResource @@ -266,6 +296,9 @@ public partial class ObjectCopy : global::Pulumi.CustomResource [Output("objectLockRetainUntilDate")] public Output ObjectLockRetainUntilDate { get; private set; } = null!; + [Output("overrideProvider")] + public Output OverrideProvider { get; private set; } = null!; + /// /// If present, indicates that the requester was successfully charged for the request. /// @@ -618,6 +651,9 @@ public InputMap Metadata [Input("objectLockRetainUntilDate")] public Input? ObjectLockRetainUntilDate { get; set; } + [Input("overrideProvider")] + public Input? OverrideProvider { get; set; } + /// /// Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. /// @@ -965,6 +1001,9 @@ public InputMap Metadata [Input("objectLockRetainUntilDate")] public Input? ObjectLockRetainUntilDate { get; set; } + [Input("overrideProvider")] + public Input? OverrideProvider { get; set; } + /// /// If present, indicates that the requester was successfully charged for the request. /// diff --git a/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProvider.cs b/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProvider.cs new file mode 100644 index 00000000000..609d167ce39 --- /dev/null +++ b/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProvider.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.S3.Outputs +{ + + [OutputType] + public sealed class ObjectCopyOverrideProvider + { + /// + /// Override the provider `default_tags` configuration block. + /// + public readonly Outputs.ObjectCopyOverrideProviderDefaultTags? DefaultTags; + + [OutputConstructor] + private ObjectCopyOverrideProvider(Outputs.ObjectCopyOverrideProviderDefaultTags? defaultTags) + { + DefaultTags = defaultTags; + } + } +} diff --git a/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProviderDefaultTags.cs b/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProviderDefaultTags.cs new file mode 100644 index 00000000000..0c2ff3d2fd8 --- /dev/null +++ b/sdk/dotnet/S3/Outputs/ObjectCopyOverrideProviderDefaultTags.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.S3.Outputs +{ + + [OutputType] + public sealed class ObjectCopyOverrideProviderDefaultTags + { + /// + /// Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public readonly ImmutableDictionary? Tags; + + [OutputConstructor] + private ObjectCopyOverrideProviderDefaultTags(ImmutableDictionary? tags) + { + Tags = tags; + } + } +} diff --git a/sdk/dotnet/S3Tables/Table.cs b/sdk/dotnet/S3Tables/Table.cs index 9f12074d2dc..d17b30363c7 100644 --- a/sdk/dotnet/S3Tables/Table.cs +++ b/sdk/dotnet/S3Tables/Table.cs @@ -38,7 +38,7 @@ namespace Pulumi.Aws.S3Tables /// var example = new Aws.S3Tables.Table("example", new() /// { /// Name = "example-table", - /// Namespace = exampleNamespace, + /// Namespace = exampleNamespace.NameSpace, /// TableBucketArn = exampleNamespace.TableBucketArn, /// Format = "ICEBERG", /// }); diff --git a/sdk/dotnet/SsmIncidents/GetReplicationSet.cs b/sdk/dotnet/SsmIncidents/GetReplicationSet.cs index 88e2783016c..2fd0fafdae5 100644 --- a/sdk/dotnet/SsmIncidents/GetReplicationSet.cs +++ b/sdk/dotnet/SsmIncidents/GetReplicationSet.cs @@ -133,7 +133,7 @@ public GetReplicationSetInvokeArgs() public sealed class GetReplicationSetResult { /// - /// The Amazon Resouce Name (ARN) of the replication set. + /// The Amazon Resource Name (ARN) of the replication set. /// public readonly string Arn; /// diff --git a/sdk/dotnet/SsoAdmin/ManagedPolicyAttachment.cs b/sdk/dotnet/SsoAdmin/ManagedPolicyAttachment.cs index 3ef7c27024e..ff0c9238ee6 100644 --- a/sdk/dotnet/SsoAdmin/ManagedPolicyAttachment.cs +++ b/sdk/dotnet/SsoAdmin/ManagedPolicyAttachment.cs @@ -71,7 +71,7 @@ namespace Pulumi.Aws.SsoAdmin /// Description = "Admin Group", /// }); /// - /// var accountAssignment = new Aws.SsoAdmin.AccountAssignment("account_assignment", new() + /// var exampleAccountAssignment = new Aws.SsoAdmin.AccountAssignment("example", new() /// { /// InstanceArn = example.Apply(getInstancesResult => getInstancesResult.Arns[0]), /// PermissionSetArn = examplePermissionSet.Arn, @@ -90,7 +90,7 @@ namespace Pulumi.Aws.SsoAdmin /// { /// DependsOn = /// { - /// exampleAwsSsoadminAccountAssignment, + /// exampleAccountAssignment, /// }, /// }); /// diff --git a/sdk/dotnet/Transfer/Outputs/GetConnectorSftpConfigResult.cs b/sdk/dotnet/Transfer/Outputs/GetConnectorSftpConfigResult.cs index abefd0f210a..3f40dfe11ca 100644 --- a/sdk/dotnet/Transfer/Outputs/GetConnectorSftpConfigResult.cs +++ b/sdk/dotnet/Transfer/Outputs/GetConnectorSftpConfigResult.cs @@ -18,7 +18,7 @@ public sealed class GetConnectorSftpConfigResult /// public readonly ImmutableArray TrustedHostKeys; /// - /// Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + /// Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. /// public readonly string UserSecretId; diff --git a/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsArgs.cs new file mode 100644 index 00000000000..04d1319a830 --- /dev/null +++ b/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsArgs.cs @@ -0,0 +1,38 @@ +// *** 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.VpcLattice.Inputs +{ + + public sealed class ResourceGatewayTimeoutsArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public ResourceGatewayTimeoutsArgs() + { + } + public static new ResourceGatewayTimeoutsArgs Empty => new ResourceGatewayTimeoutsArgs(); + } +} diff --git a/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsGetArgs.cs b/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsGetArgs.cs new file mode 100644 index 00000000000..07ddc8b7992 --- /dev/null +++ b/sdk/dotnet/VpcLattice/Inputs/ResourceGatewayTimeoutsGetArgs.cs @@ -0,0 +1,38 @@ +// *** 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.VpcLattice.Inputs +{ + + public sealed class ResourceGatewayTimeoutsGetArgs : global::Pulumi.ResourceArgs + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("create")] + public Input? Create { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + [Input("delete")] + public Input? Delete { get; set; } + + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + [Input("update")] + public Input? Update { get; set; } + + public ResourceGatewayTimeoutsGetArgs() + { + } + public static new ResourceGatewayTimeoutsGetArgs Empty => new ResourceGatewayTimeoutsGetArgs(); + } +} diff --git a/sdk/dotnet/VpcLattice/Outputs/ResourceGatewayTimeouts.cs b/sdk/dotnet/VpcLattice/Outputs/ResourceGatewayTimeouts.cs new file mode 100644 index 00000000000..3169d015f23 --- /dev/null +++ b/sdk/dotnet/VpcLattice/Outputs/ResourceGatewayTimeouts.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.VpcLattice.Outputs +{ + + [OutputType] + public sealed class ResourceGatewayTimeouts + { + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Create; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + /// + public readonly string? Delete; + /// + /// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + /// + public readonly string? Update; + + [OutputConstructor] + private ResourceGatewayTimeouts( + string? create, + + string? delete, + + string? update) + { + Create = create; + Delete = delete; + Update = update; + } + } +} diff --git a/sdk/dotnet/VpcLattice/ResourceGateway.cs b/sdk/dotnet/VpcLattice/ResourceGateway.cs new file mode 100644 index 00000000000..fb254bc107d --- /dev/null +++ b/sdk/dotnet/VpcLattice/ResourceGateway.cs @@ -0,0 +1,371 @@ +// *** 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.VpcLattice +{ + /// + /// Resource for managing an AWS VPC Lattice Resource Gateway. + /// + /// ## Example Usage + /// + /// ### Basic Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.VpcLattice.ResourceGateway("example", new() + /// { + /// Name = "Example", + /// VpcId = exampleAwsVpc.Id, + /// SubnetIds = new[] + /// { + /// exampleAwsSubnet.Id, + /// }, + /// Tags = + /// { + /// { "Environment", "Example" }, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ### Specifying IP address type + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.VpcLattice.ResourceGateway("example", new() + /// { + /// Name = "Example", + /// VpcId = exampleAwsVpc.Id, + /// SubnetIds = new[] + /// { + /// exampleAwsSubnet.Id, + /// }, + /// IpAddressType = "DUALSTACK", + /// Tags = + /// { + /// { "Environment", "Example" }, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ### With security groups + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.VpcLattice.ResourceGateway("example", new() + /// { + /// Name = "Example", + /// VpcId = exampleAwsVpc.Id, + /// SecurityGroupIds = new[] + /// { + /// test.Id, + /// }, + /// SubnetIds = new[] + /// { + /// exampleAwsSubnet.Id, + /// }, + /// }); + /// + /// }); + /// ``` + /// + /// ## Import + /// + /// Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: + /// + /// ```sh + /// $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f + /// ``` + /// + [AwsResourceType("aws:vpclattice/resourceGateway:ResourceGateway")] + public partial class ResourceGateway : global::Pulumi.CustomResource + { + /// + /// ARN of the resource gateway. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + /// + [Output("ipAddressType")] + public Output IpAddressType { get; private set; } = null!; + + /// + /// Name of the resource gateway. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + /// + [Output("securityGroupIds")] + public Output> SecurityGroupIds { get; private set; } = null!; + + /// + /// Status of the resource gateway. + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// IDs of the VPC subnets in which to create the resource gateway. + /// + [Output("subnetIds")] + public Output> SubnetIds { get; private set; } = null!; + + /// + /// Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + [Output("tags")] + public Output?> Tags { get; private set; } = null!; + + /// + /// Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Output("tagsAll")] + public Output> TagsAll { get; private set; } = null!; + + [Output("timeouts")] + public Output Timeouts { get; private set; } = null!; + + /// + /// ID of the VPC for the resource gateway. + /// + /// The following arguments are optional: + /// + [Output("vpcId")] + public Output VpcId { get; private set; } = null!; + + + /// + /// Create a ResourceGateway 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 ResourceGateway(string name, ResourceGatewayArgs args, CustomResourceOptions? options = null) + : base("aws:vpclattice/resourceGateway:ResourceGateway", name, args ?? new ResourceGatewayArgs(), MakeResourceOptions(options, "")) + { + } + + private ResourceGateway(string name, Input id, ResourceGatewayState? state = null, CustomResourceOptions? options = null) + : base("aws:vpclattice/resourceGateway:ResourceGateway", 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 ResourceGateway 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 ResourceGateway Get(string name, Input id, ResourceGatewayState? state = null, CustomResourceOptions? options = null) + { + return new ResourceGateway(name, id, state, options); + } + } + + public sealed class ResourceGatewayArgs : global::Pulumi.ResourceArgs + { + /// + /// IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + /// + [Input("ipAddressType")] + public Input? IpAddressType { get; set; } + + /// + /// Name of the resource gateway. + /// + [Input("name")] + public Input? Name { get; set; } + + [Input("securityGroupIds")] + private InputList? _securityGroupIds; + + /// + /// Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + /// + public InputList SecurityGroupIds + { + get => _securityGroupIds ?? (_securityGroupIds = new InputList()); + set => _securityGroupIds = value; + } + + [Input("subnetIds", required: true)] + private InputList? _subnetIds; + + /// + /// IDs of the VPC subnets in which to create the resource gateway. + /// + public InputList SubnetIds + { + get => _subnetIds ?? (_subnetIds = new InputList()); + set => _subnetIds = value; + } + + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + /// + /// ID of the VPC for the resource gateway. + /// + /// The following arguments are optional: + /// + [Input("vpcId", required: true)] + public Input VpcId { get; set; } = null!; + + public ResourceGatewayArgs() + { + } + public static new ResourceGatewayArgs Empty => new ResourceGatewayArgs(); + } + + public sealed class ResourceGatewayState : global::Pulumi.ResourceArgs + { + /// + /// ARN of the resource gateway. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + /// + [Input("ipAddressType")] + public Input? IpAddressType { get; set; } + + /// + /// Name of the resource gateway. + /// + [Input("name")] + public Input? Name { get; set; } + + [Input("securityGroupIds")] + private InputList? _securityGroupIds; + + /// + /// Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + /// + public InputList SecurityGroupIds + { + get => _securityGroupIds ?? (_securityGroupIds = new InputList()); + set => _securityGroupIds = value; + } + + /// + /// Status of the resource gateway. + /// + [Input("status")] + public Input? Status { get; set; } + + [Input("subnetIds")] + private InputList? _subnetIds; + + /// + /// IDs of the VPC subnets in which to create the resource gateway. + /// + public InputList SubnetIds + { + get => _subnetIds ?? (_subnetIds = new InputList()); + set => _subnetIds = value; + } + + [Input("tags")] + private InputMap? _tags; + + /// + /// Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("tagsAll")] + private InputMap? _tagsAll; + + /// + /// Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + /// + [Obsolete(@"Please use `tags` instead.")] + public InputMap TagsAll + { + get => _tagsAll ?? (_tagsAll = new InputMap()); + set => _tagsAll = value; + } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + /// + /// ID of the VPC for the resource gateway. + /// + /// The following arguments are optional: + /// + [Input("vpcId")] + public Input? VpcId { get; set; } + + public ResourceGatewayState() + { + } + public static new ResourceGatewayState Empty => new ResourceGatewayState(); + } +} diff --git a/sdk/go/aws/appflow/pulumiTypes.go b/sdk/go/aws/appflow/pulumiTypes.go index 66d5b282af5..e0b936e75f1 100644 --- a/sdk/go/aws/appflow/pulumiTypes.go +++ b/sdk/go/aws/appflow/pulumiTypes.go @@ -17355,6 +17355,8 @@ func (o FlowSourceFlowConfigSourceConnectorPropertiesS3S3InputFormatConfigPtrOut } type FlowSourceFlowConfigSourceConnectorPropertiesSalesforce struct { + // Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + DataTransferApi *string `pulumi:"dataTransferApi"` // Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. EnableDynamicFieldUpdate *bool `pulumi:"enableDynamicFieldUpdate"` // Whether Amazon AppFlow includes deleted files in the flow run. @@ -17374,6 +17376,8 @@ type FlowSourceFlowConfigSourceConnectorPropertiesSalesforceInput interface { } type FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs struct { + // Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + DataTransferApi pulumi.StringPtrInput `pulumi:"dataTransferApi"` // Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. EnableDynamicFieldUpdate pulumi.BoolPtrInput `pulumi:"enableDynamicFieldUpdate"` // Whether Amazon AppFlow includes deleted files in the flow run. @@ -17458,6 +17462,11 @@ func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforceOutput) ToFlowSou }).(FlowSourceFlowConfigSourceConnectorPropertiesSalesforcePtrOutput) } +// Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. +func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforceOutput) DataTransferApi() pulumi.StringPtrOutput { + return o.ApplyT(func(v FlowSourceFlowConfigSourceConnectorPropertiesSalesforce) *string { return v.DataTransferApi }).(pulumi.StringPtrOutput) +} + // Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforceOutput) EnableDynamicFieldUpdate() pulumi.BoolPtrOutput { return o.ApplyT(func(v FlowSourceFlowConfigSourceConnectorPropertiesSalesforce) *bool { @@ -17498,6 +17507,16 @@ func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforcePtrOutput) Elem() }).(FlowSourceFlowConfigSourceConnectorPropertiesSalesforceOutput) } +// Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. +func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforcePtrOutput) DataTransferApi() pulumi.StringPtrOutput { + return o.ApplyT(func(v *FlowSourceFlowConfigSourceConnectorPropertiesSalesforce) *string { + if v == nil { + return nil + } + return v.DataTransferApi + }).(pulumi.StringPtrOutput) +} + // Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. func (o FlowSourceFlowConfigSourceConnectorPropertiesSalesforcePtrOutput) EnableDynamicFieldUpdate() pulumi.BoolPtrOutput { return o.ApplyT(func(v *FlowSourceFlowConfigSourceConnectorPropertiesSalesforce) *bool { diff --git a/sdk/go/aws/batch/pulumiTypes.go b/sdk/go/aws/batch/pulumiTypes.go index b6cbd12cba5..c6fa6a2cdde 100644 --- a/sdk/go/aws/batch/pulumiTypes.go +++ b/sdk/go/aws/batch/pulumiTypes.go @@ -4416,9 +4416,9 @@ func (o JobQueueComputeEnvironmentOrderArrayOutput) Index(i pulumi.IntInput) Job type JobQueueJobStateTimeLimitAction struct { // The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - // * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` - Action string `pulumi:"action"` - MaxTimeSeconds int `pulumi:"maxTimeSeconds"` + Action string `pulumi:"action"` + // The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + MaxTimeSeconds int `pulumi:"maxTimeSeconds"` // The reason to log for the action being taken. Reason string `pulumi:"reason"` // The state of the job needed to trigger the action. Valid values include `"RUNNABLE"`. @@ -4438,9 +4438,9 @@ type JobQueueJobStateTimeLimitActionInput interface { type JobQueueJobStateTimeLimitActionArgs struct { // The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - // * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` - Action pulumi.StringInput `pulumi:"action"` - MaxTimeSeconds pulumi.IntInput `pulumi:"maxTimeSeconds"` + Action pulumi.StringInput `pulumi:"action"` + // The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + MaxTimeSeconds pulumi.IntInput `pulumi:"maxTimeSeconds"` // The reason to log for the action being taken. Reason pulumi.StringInput `pulumi:"reason"` // The state of the job needed to trigger the action. Valid values include `"RUNNABLE"`. @@ -4499,11 +4499,11 @@ func (o JobQueueJobStateTimeLimitActionOutput) ToJobQueueJobStateTimeLimitAction } // The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` -// * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` func (o JobQueueJobStateTimeLimitActionOutput) Action() pulumi.StringOutput { return o.ApplyT(func(v JobQueueJobStateTimeLimitAction) string { return v.Action }).(pulumi.StringOutput) } +// The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` func (o JobQueueJobStateTimeLimitActionOutput) MaxTimeSeconds() pulumi.IntOutput { return o.ApplyT(func(v JobQueueJobStateTimeLimitAction) int { return v.MaxTimeSeconds }).(pulumi.IntOutput) } diff --git a/sdk/go/aws/bedrock/agentAgentCollaborator.go b/sdk/go/aws/bedrock/agentAgentCollaborator.go new file mode 100644 index 00000000000..5907e3edd36 --- /dev/null +++ b/sdk/go/aws/bedrock/agentAgentCollaborator.go @@ -0,0 +1,483 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package bedrock + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS Bedrock Agents Agent Collaborator. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "fmt" +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws" +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrock" +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// current, err := aws.GetCallerIdentity(ctx, &aws.GetCallerIdentityArgs{ +// }, nil); +// if err != nil { +// return err +// } +// currentGetPartition, err := aws.GetPartition(ctx, &aws.GetPartitionArgs{ +// }, nil); +// if err != nil { +// return err +// } +// currentGetRegion, err := aws.GetRegion(ctx, &aws.GetRegionArgs{ +// }, nil); +// if err != nil { +// return err +// } +// exampleAgentTrust, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{ +// Statements: []iam.GetPolicyDocumentStatement{ +// { +// Actions: []string{ +// "sts:AssumeRole", +// }, +// Principals: []iam.GetPolicyDocumentStatementPrincipal{ +// { +// Identifiers: []string{ +// "bedrock.amazonaws.com", +// }, +// Type: "Service", +// }, +// }, +// Conditions: []iam.GetPolicyDocumentStatementCondition{ +// { +// Test: "StringEquals", +// Values: interface{}{ +// current.AccountId, +// }, +// Variable: "aws:SourceAccount", +// }, +// { +// Test: "ArnLike", +// Values: []string{ +// fmt.Sprintf("arn:%v:bedrock:%v:%v:agent/*", currentGetPartition.Partition, currentGetRegion.Name, current.AccountId), +// }, +// Variable: "AWS:SourceArn", +// }, +// }, +// }, +// }, +// }, nil); +// if err != nil { +// return err +// } +// exampleAgentPermissions, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{ +// Statements: []iam.GetPolicyDocumentStatement{ +// { +// Actions: []string{ +// "bedrock:InvokeModel", +// }, +// Resources: []string{ +// fmt.Sprintf("arn:%v:bedrock:%v::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0", currentGetPartition.Partition, currentGetRegion.Name), +// }, +// }, +// { +// Actions: []string{ +// "bedrock:GetAgentAlias", +// "bedrock:InvokeAgent", +// }, +// Resources: []string{ +// fmt.Sprintf("arn:%v:bedrock:%v:%v:agent/*", currentAgent.Partition, currentGetRegion.Name, current.AccountId), +// fmt.Sprintf("arn:%v:bedrock:%v:%v:agent-alias/*", currentAgent.Partition, currentGetRegion.Name, current.AccountId), +// }, +// }, +// }, +// }, nil); +// if err != nil { +// return err +// } +// example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{ +// AssumeRolePolicy: pulumi.String(exampleAgentTrust.Json), +// NamePrefix: pulumi.String("AmazonBedrockExecutionRoleForAgents_"), +// }) +// if err != nil { +// return err +// } +// _, err = iam.NewRolePolicy(ctx, "example", &iam.RolePolicyArgs{ +// Policy: pulumi.String(exampleAgentPermissions.Json), +// Role: example.ID(), +// }) +// if err != nil { +// return err +// } +// exampleCollaborator, err := bedrock.NewAgentAgent(ctx, "example_collaborator", &bedrock.AgentAgentArgs{ +// AgentName: pulumi.String("my-agent-collaborator"), +// AgentResourceRoleArn: example.Arn, +// IdleSessionTtlInSeconds: pulumi.Int(500), +// FoundationModel: pulumi.String("anthropic.claude-3-5-sonnet-20241022-v2:0"), +// Instruction: pulumi.String("do what the supervisor tells you to do"), +// }) +// if err != nil { +// return err +// } +// exampleSupervisor, err := bedrock.NewAgentAgent(ctx, "example_supervisor", &bedrock.AgentAgentArgs{ +// AgentName: pulumi.String("my-agent-supervisor"), +// AgentResourceRoleArn: example.Arn, +// AgentCollaboration: pulumi.String("SUPERVISOR"), +// IdleSessionTtlInSeconds: pulumi.Int(500), +// FoundationModel: pulumi.String("anthropic.claude-3-5-sonnet-20241022-v2:0"), +// Instruction: pulumi.String("tell the sub agent what to do"), +// PrepareAgent: pulumi.Bool(false), +// }) +// if err != nil { +// return err +// } +// exampleAgentAgentAlias, err := bedrock.NewAgentAgentAlias(ctx, "example", &bedrock.AgentAgentAliasArgs{ +// AgentAliasName: pulumi.String("my-agent-alias"), +// AgentId: exampleCollaborator.AgentId, +// Description: pulumi.String("Test Alias"), +// }) +// if err != nil { +// return err +// } +// _, err = bedrock.NewAgentAgentCollaborator(ctx, "example", &bedrock.AgentAgentCollaboratorArgs{ +// AgentId: exampleSupervisor.AgentId, +// CollaborationInstruction: pulumi.String("tell the other agent what to do"), +// CollaboratorName: pulumi.String("my-collab-example"), +// RelayConversationHistory: pulumi.String("TO_COLLABORATOR"), +// AgentDescriptor: &bedrock.AgentAgentCollaboratorAgentDescriptorArgs{ +// AliasArn: exampleAgentAgentAlias.AgentAliasArn, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +// +// ## Import +// +// Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: +// +// ```sh +// $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY +// ``` +type AgentAgentCollaborator struct { + pulumi.CustomResourceState + + AgentDescriptor AgentAgentCollaboratorAgentDescriptorPtrOutput `pulumi:"agentDescriptor"` + // ID if the agent to associate the collaborator. + AgentId pulumi.StringOutput `pulumi:"agentId"` + AgentVersion pulumi.StringOutput `pulumi:"agentVersion"` + // Instruction to give the collaborator. + CollaborationInstruction pulumi.StringOutput `pulumi:"collaborationInstruction"` + // ID of the Agent Collaborator. + CollaboratorId pulumi.StringOutput `pulumi:"collaboratorId"` + CollaboratorName pulumi.StringOutput `pulumi:"collaboratorName"` + // Whether to prepare the agent after creation or modification. Defaults to `true`. + PrepareAgent pulumi.BoolOutput `pulumi:"prepareAgent"` + // Configure relaying the history to the collaborator. + RelayConversationHistory pulumi.StringOutput `pulumi:"relayConversationHistory"` + Timeouts AgentAgentCollaboratorTimeoutsPtrOutput `pulumi:"timeouts"` +} + +// NewAgentAgentCollaborator registers a new resource with the given unique name, arguments, and options. +func NewAgentAgentCollaborator(ctx *pulumi.Context, + name string, args *AgentAgentCollaboratorArgs, opts ...pulumi.ResourceOption) (*AgentAgentCollaborator, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AgentId == nil { + return nil, errors.New("invalid value for required argument 'AgentId'") + } + if args.CollaborationInstruction == nil { + return nil, errors.New("invalid value for required argument 'CollaborationInstruction'") + } + if args.CollaboratorName == nil { + return nil, errors.New("invalid value for required argument 'CollaboratorName'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource AgentAgentCollaborator + err := ctx.RegisterResource("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetAgentAgentCollaborator gets an existing AgentAgentCollaborator 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 GetAgentAgentCollaborator(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *AgentAgentCollaboratorState, opts ...pulumi.ResourceOption) (*AgentAgentCollaborator, error) { + var resource AgentAgentCollaborator + err := ctx.ReadResource("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering AgentAgentCollaborator resources. +type agentAgentCollaboratorState struct { + AgentDescriptor *AgentAgentCollaboratorAgentDescriptor `pulumi:"agentDescriptor"` + // ID if the agent to associate the collaborator. + AgentId *string `pulumi:"agentId"` + AgentVersion *string `pulumi:"agentVersion"` + // Instruction to give the collaborator. + CollaborationInstruction *string `pulumi:"collaborationInstruction"` + // ID of the Agent Collaborator. + CollaboratorId *string `pulumi:"collaboratorId"` + CollaboratorName *string `pulumi:"collaboratorName"` + // Whether to prepare the agent after creation or modification. Defaults to `true`. + PrepareAgent *bool `pulumi:"prepareAgent"` + // Configure relaying the history to the collaborator. + RelayConversationHistory *string `pulumi:"relayConversationHistory"` + Timeouts *AgentAgentCollaboratorTimeouts `pulumi:"timeouts"` +} + +type AgentAgentCollaboratorState struct { + AgentDescriptor AgentAgentCollaboratorAgentDescriptorPtrInput + // ID if the agent to associate the collaborator. + AgentId pulumi.StringPtrInput + AgentVersion pulumi.StringPtrInput + // Instruction to give the collaborator. + CollaborationInstruction pulumi.StringPtrInput + // ID of the Agent Collaborator. + CollaboratorId pulumi.StringPtrInput + CollaboratorName pulumi.StringPtrInput + // Whether to prepare the agent after creation or modification. Defaults to `true`. + PrepareAgent pulumi.BoolPtrInput + // Configure relaying the history to the collaborator. + RelayConversationHistory pulumi.StringPtrInput + Timeouts AgentAgentCollaboratorTimeoutsPtrInput +} + +func (AgentAgentCollaboratorState) ElementType() reflect.Type { + return reflect.TypeOf((*agentAgentCollaboratorState)(nil)).Elem() +} + +type agentAgentCollaboratorArgs struct { + AgentDescriptor *AgentAgentCollaboratorAgentDescriptor `pulumi:"agentDescriptor"` + // ID if the agent to associate the collaborator. + AgentId string `pulumi:"agentId"` + AgentVersion *string `pulumi:"agentVersion"` + // Instruction to give the collaborator. + CollaborationInstruction string `pulumi:"collaborationInstruction"` + CollaboratorName string `pulumi:"collaboratorName"` + // Whether to prepare the agent after creation or modification. Defaults to `true`. + PrepareAgent *bool `pulumi:"prepareAgent"` + // Configure relaying the history to the collaborator. + RelayConversationHistory *string `pulumi:"relayConversationHistory"` + Timeouts *AgentAgentCollaboratorTimeouts `pulumi:"timeouts"` +} + +// The set of arguments for constructing a AgentAgentCollaborator resource. +type AgentAgentCollaboratorArgs struct { + AgentDescriptor AgentAgentCollaboratorAgentDescriptorPtrInput + // ID if the agent to associate the collaborator. + AgentId pulumi.StringInput + AgentVersion pulumi.StringPtrInput + // Instruction to give the collaborator. + CollaborationInstruction pulumi.StringInput + CollaboratorName pulumi.StringInput + // Whether to prepare the agent after creation or modification. Defaults to `true`. + PrepareAgent pulumi.BoolPtrInput + // Configure relaying the history to the collaborator. + RelayConversationHistory pulumi.StringPtrInput + Timeouts AgentAgentCollaboratorTimeoutsPtrInput +} + +func (AgentAgentCollaboratorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*agentAgentCollaboratorArgs)(nil)).Elem() +} + +type AgentAgentCollaboratorInput interface { + pulumi.Input + + ToAgentAgentCollaboratorOutput() AgentAgentCollaboratorOutput + ToAgentAgentCollaboratorOutputWithContext(ctx context.Context) AgentAgentCollaboratorOutput +} + +func (*AgentAgentCollaborator) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaborator)(nil)).Elem() +} + +func (i *AgentAgentCollaborator) ToAgentAgentCollaboratorOutput() AgentAgentCollaboratorOutput { + return i.ToAgentAgentCollaboratorOutputWithContext(context.Background()) +} + +func (i *AgentAgentCollaborator) ToAgentAgentCollaboratorOutputWithContext(ctx context.Context) AgentAgentCollaboratorOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorOutput) +} + +// AgentAgentCollaboratorArrayInput is an input type that accepts AgentAgentCollaboratorArray and AgentAgentCollaboratorArrayOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorArrayInput` via: +// +// AgentAgentCollaboratorArray{ AgentAgentCollaboratorArgs{...} } +type AgentAgentCollaboratorArrayInput interface { + pulumi.Input + + ToAgentAgentCollaboratorArrayOutput() AgentAgentCollaboratorArrayOutput + ToAgentAgentCollaboratorArrayOutputWithContext(context.Context) AgentAgentCollaboratorArrayOutput +} + +type AgentAgentCollaboratorArray []AgentAgentCollaboratorInput + +func (AgentAgentCollaboratorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AgentAgentCollaborator)(nil)).Elem() +} + +func (i AgentAgentCollaboratorArray) ToAgentAgentCollaboratorArrayOutput() AgentAgentCollaboratorArrayOutput { + return i.ToAgentAgentCollaboratorArrayOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorArray) ToAgentAgentCollaboratorArrayOutputWithContext(ctx context.Context) AgentAgentCollaboratorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorArrayOutput) +} + +// AgentAgentCollaboratorMapInput is an input type that accepts AgentAgentCollaboratorMap and AgentAgentCollaboratorMapOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorMapInput` via: +// +// AgentAgentCollaboratorMap{ "key": AgentAgentCollaboratorArgs{...} } +type AgentAgentCollaboratorMapInput interface { + pulumi.Input + + ToAgentAgentCollaboratorMapOutput() AgentAgentCollaboratorMapOutput + ToAgentAgentCollaboratorMapOutputWithContext(context.Context) AgentAgentCollaboratorMapOutput +} + +type AgentAgentCollaboratorMap map[string]AgentAgentCollaboratorInput + +func (AgentAgentCollaboratorMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AgentAgentCollaborator)(nil)).Elem() +} + +func (i AgentAgentCollaboratorMap) ToAgentAgentCollaboratorMapOutput() AgentAgentCollaboratorMapOutput { + return i.ToAgentAgentCollaboratorMapOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorMap) ToAgentAgentCollaboratorMapOutputWithContext(ctx context.Context) AgentAgentCollaboratorMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorMapOutput) +} + +type AgentAgentCollaboratorOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaborator)(nil)).Elem() +} + +func (o AgentAgentCollaboratorOutput) ToAgentAgentCollaboratorOutput() AgentAgentCollaboratorOutput { + return o +} + +func (o AgentAgentCollaboratorOutput) ToAgentAgentCollaboratorOutputWithContext(ctx context.Context) AgentAgentCollaboratorOutput { + return o +} + +func (o AgentAgentCollaboratorOutput) AgentDescriptor() AgentAgentCollaboratorAgentDescriptorPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) AgentAgentCollaboratorAgentDescriptorPtrOutput { + return v.AgentDescriptor + }).(AgentAgentCollaboratorAgentDescriptorPtrOutput) +} + +// ID if the agent to associate the collaborator. +func (o AgentAgentCollaboratorOutput) AgentId() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.AgentId }).(pulumi.StringOutput) +} + +func (o AgentAgentCollaboratorOutput) AgentVersion() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.AgentVersion }).(pulumi.StringOutput) +} + +// Instruction to give the collaborator. +func (o AgentAgentCollaboratorOutput) CollaborationInstruction() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.CollaborationInstruction }).(pulumi.StringOutput) +} + +// ID of the Agent Collaborator. +func (o AgentAgentCollaboratorOutput) CollaboratorId() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.CollaboratorId }).(pulumi.StringOutput) +} + +func (o AgentAgentCollaboratorOutput) CollaboratorName() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.CollaboratorName }).(pulumi.StringOutput) +} + +// Whether to prepare the agent after creation or modification. Defaults to `true`. +func (o AgentAgentCollaboratorOutput) PrepareAgent() pulumi.BoolOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.BoolOutput { return v.PrepareAgent }).(pulumi.BoolOutput) +} + +// Configure relaying the history to the collaborator. +func (o AgentAgentCollaboratorOutput) RelayConversationHistory() pulumi.StringOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) pulumi.StringOutput { return v.RelayConversationHistory }).(pulumi.StringOutput) +} + +func (o AgentAgentCollaboratorOutput) Timeouts() AgentAgentCollaboratorTimeoutsPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaborator) AgentAgentCollaboratorTimeoutsPtrOutput { return v.Timeouts }).(AgentAgentCollaboratorTimeoutsPtrOutput) +} + +type AgentAgentCollaboratorArrayOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*AgentAgentCollaborator)(nil)).Elem() +} + +func (o AgentAgentCollaboratorArrayOutput) ToAgentAgentCollaboratorArrayOutput() AgentAgentCollaboratorArrayOutput { + return o +} + +func (o AgentAgentCollaboratorArrayOutput) ToAgentAgentCollaboratorArrayOutputWithContext(ctx context.Context) AgentAgentCollaboratorArrayOutput { + return o +} + +func (o AgentAgentCollaboratorArrayOutput) Index(i pulumi.IntInput) AgentAgentCollaboratorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AgentAgentCollaborator { + return vs[0].([]*AgentAgentCollaborator)[vs[1].(int)] + }).(AgentAgentCollaboratorOutput) +} + +type AgentAgentCollaboratorMapOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*AgentAgentCollaborator)(nil)).Elem() +} + +func (o AgentAgentCollaboratorMapOutput) ToAgentAgentCollaboratorMapOutput() AgentAgentCollaboratorMapOutput { + return o +} + +func (o AgentAgentCollaboratorMapOutput) ToAgentAgentCollaboratorMapOutputWithContext(ctx context.Context) AgentAgentCollaboratorMapOutput { + return o +} + +func (o AgentAgentCollaboratorMapOutput) MapIndex(k pulumi.StringInput) AgentAgentCollaboratorOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AgentAgentCollaborator { + return vs[0].(map[string]*AgentAgentCollaborator)[vs[1].(string)] + }).(AgentAgentCollaboratorOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorInput)(nil)).Elem(), &AgentAgentCollaborator{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorArrayInput)(nil)).Elem(), AgentAgentCollaboratorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorMapInput)(nil)).Elem(), AgentAgentCollaboratorMap{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorArrayOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorMapOutput{}) +} diff --git a/sdk/go/aws/bedrock/init.go b/sdk/go/aws/bedrock/init.go index 854fb7e6bf7..5fb6466720b 100644 --- a/sdk/go/aws/bedrock/init.go +++ b/sdk/go/aws/bedrock/init.go @@ -27,6 +27,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &AgentAgentActionGroup{} case "aws:bedrock/agentAgentAlias:AgentAgentAlias": r = &AgentAgentAlias{} + case "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator": + r = &AgentAgentCollaborator{} case "aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation": r = &AgentAgentKnowledgeBaseAssociation{} case "aws:bedrock/agentDataSource:AgentDataSource": @@ -71,6 +73,11 @@ func init() { "bedrock/agentAgentAlias", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "bedrock/agentAgentCollaborator", + &module{version}, + ) pulumi.RegisterResourceModule( "aws", "bedrock/agentAgentKnowledgeBaseAssociation", diff --git a/sdk/go/aws/bedrock/pulumiTypes.go b/sdk/go/aws/bedrock/pulumiTypes.go index cd36235f1f9..e4fb88596e0 100644 --- a/sdk/go/aws/bedrock/pulumiTypes.go +++ b/sdk/go/aws/bedrock/pulumiTypes.go @@ -1475,6 +1475,318 @@ func (o AgentAgentAliasTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type AgentAgentCollaboratorAgentDescriptor struct { + // ARN of the Alias of an Agent to use as the collaborator. + AliasArn string `pulumi:"aliasArn"` +} + +// AgentAgentCollaboratorAgentDescriptorInput is an input type that accepts AgentAgentCollaboratorAgentDescriptorArgs and AgentAgentCollaboratorAgentDescriptorOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorAgentDescriptorInput` via: +// +// AgentAgentCollaboratorAgentDescriptorArgs{...} +type AgentAgentCollaboratorAgentDescriptorInput interface { + pulumi.Input + + ToAgentAgentCollaboratorAgentDescriptorOutput() AgentAgentCollaboratorAgentDescriptorOutput + ToAgentAgentCollaboratorAgentDescriptorOutputWithContext(context.Context) AgentAgentCollaboratorAgentDescriptorOutput +} + +type AgentAgentCollaboratorAgentDescriptorArgs struct { + // ARN of the Alias of an Agent to use as the collaborator. + AliasArn pulumi.StringInput `pulumi:"aliasArn"` +} + +func (AgentAgentCollaboratorAgentDescriptorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAgentCollaboratorAgentDescriptor)(nil)).Elem() +} + +func (i AgentAgentCollaboratorAgentDescriptorArgs) ToAgentAgentCollaboratorAgentDescriptorOutput() AgentAgentCollaboratorAgentDescriptorOutput { + return i.ToAgentAgentCollaboratorAgentDescriptorOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorAgentDescriptorArgs) ToAgentAgentCollaboratorAgentDescriptorOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorAgentDescriptorOutput) +} + +func (i AgentAgentCollaboratorAgentDescriptorArgs) ToAgentAgentCollaboratorAgentDescriptorPtrOutput() AgentAgentCollaboratorAgentDescriptorPtrOutput { + return i.ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorAgentDescriptorArgs) ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorAgentDescriptorOutput).ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(ctx) +} + +// AgentAgentCollaboratorAgentDescriptorPtrInput is an input type that accepts AgentAgentCollaboratorAgentDescriptorArgs, AgentAgentCollaboratorAgentDescriptorPtr and AgentAgentCollaboratorAgentDescriptorPtrOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorAgentDescriptorPtrInput` via: +// +// AgentAgentCollaboratorAgentDescriptorArgs{...} +// +// or: +// +// nil +type AgentAgentCollaboratorAgentDescriptorPtrInput interface { + pulumi.Input + + ToAgentAgentCollaboratorAgentDescriptorPtrOutput() AgentAgentCollaboratorAgentDescriptorPtrOutput + ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(context.Context) AgentAgentCollaboratorAgentDescriptorPtrOutput +} + +type agentAgentCollaboratorAgentDescriptorPtrType AgentAgentCollaboratorAgentDescriptorArgs + +func AgentAgentCollaboratorAgentDescriptorPtr(v *AgentAgentCollaboratorAgentDescriptorArgs) AgentAgentCollaboratorAgentDescriptorPtrInput { + return (*agentAgentCollaboratorAgentDescriptorPtrType)(v) +} + +func (*agentAgentCollaboratorAgentDescriptorPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaboratorAgentDescriptor)(nil)).Elem() +} + +func (i *agentAgentCollaboratorAgentDescriptorPtrType) ToAgentAgentCollaboratorAgentDescriptorPtrOutput() AgentAgentCollaboratorAgentDescriptorPtrOutput { + return i.ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(context.Background()) +} + +func (i *agentAgentCollaboratorAgentDescriptorPtrType) ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorAgentDescriptorPtrOutput) +} + +type AgentAgentCollaboratorAgentDescriptorOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorAgentDescriptorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAgentCollaboratorAgentDescriptor)(nil)).Elem() +} + +func (o AgentAgentCollaboratorAgentDescriptorOutput) ToAgentAgentCollaboratorAgentDescriptorOutput() AgentAgentCollaboratorAgentDescriptorOutput { + return o +} + +func (o AgentAgentCollaboratorAgentDescriptorOutput) ToAgentAgentCollaboratorAgentDescriptorOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorOutput { + return o +} + +func (o AgentAgentCollaboratorAgentDescriptorOutput) ToAgentAgentCollaboratorAgentDescriptorPtrOutput() AgentAgentCollaboratorAgentDescriptorPtrOutput { + return o.ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(context.Background()) +} + +func (o AgentAgentCollaboratorAgentDescriptorOutput) ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentAgentCollaboratorAgentDescriptor) *AgentAgentCollaboratorAgentDescriptor { + return &v + }).(AgentAgentCollaboratorAgentDescriptorPtrOutput) +} + +// ARN of the Alias of an Agent to use as the collaborator. +func (o AgentAgentCollaboratorAgentDescriptorOutput) AliasArn() pulumi.StringOutput { + return o.ApplyT(func(v AgentAgentCollaboratorAgentDescriptor) string { return v.AliasArn }).(pulumi.StringOutput) +} + +type AgentAgentCollaboratorAgentDescriptorPtrOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorAgentDescriptorPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaboratorAgentDescriptor)(nil)).Elem() +} + +func (o AgentAgentCollaboratorAgentDescriptorPtrOutput) ToAgentAgentCollaboratorAgentDescriptorPtrOutput() AgentAgentCollaboratorAgentDescriptorPtrOutput { + return o +} + +func (o AgentAgentCollaboratorAgentDescriptorPtrOutput) ToAgentAgentCollaboratorAgentDescriptorPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorAgentDescriptorPtrOutput { + return o +} + +func (o AgentAgentCollaboratorAgentDescriptorPtrOutput) Elem() AgentAgentCollaboratorAgentDescriptorOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorAgentDescriptor) AgentAgentCollaboratorAgentDescriptor { + if v != nil { + return *v + } + var ret AgentAgentCollaboratorAgentDescriptor + return ret + }).(AgentAgentCollaboratorAgentDescriptorOutput) +} + +// ARN of the Alias of an Agent to use as the collaborator. +func (o AgentAgentCollaboratorAgentDescriptorPtrOutput) AliasArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorAgentDescriptor) *string { + if v == nil { + return nil + } + return &v.AliasArn + }).(pulumi.StringPtrOutput) +} + +type AgentAgentCollaboratorTimeouts struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create *string `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete *string `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update *string `pulumi:"update"` +} + +// AgentAgentCollaboratorTimeoutsInput is an input type that accepts AgentAgentCollaboratorTimeoutsArgs and AgentAgentCollaboratorTimeoutsOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorTimeoutsInput` via: +// +// AgentAgentCollaboratorTimeoutsArgs{...} +type AgentAgentCollaboratorTimeoutsInput interface { + pulumi.Input + + ToAgentAgentCollaboratorTimeoutsOutput() AgentAgentCollaboratorTimeoutsOutput + ToAgentAgentCollaboratorTimeoutsOutputWithContext(context.Context) AgentAgentCollaboratorTimeoutsOutput +} + +type AgentAgentCollaboratorTimeoutsArgs struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create pulumi.StringPtrInput `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete pulumi.StringPtrInput `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update pulumi.StringPtrInput `pulumi:"update"` +} + +func (AgentAgentCollaboratorTimeoutsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAgentCollaboratorTimeouts)(nil)).Elem() +} + +func (i AgentAgentCollaboratorTimeoutsArgs) ToAgentAgentCollaboratorTimeoutsOutput() AgentAgentCollaboratorTimeoutsOutput { + return i.ToAgentAgentCollaboratorTimeoutsOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorTimeoutsArgs) ToAgentAgentCollaboratorTimeoutsOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorTimeoutsOutput) +} + +func (i AgentAgentCollaboratorTimeoutsArgs) ToAgentAgentCollaboratorTimeoutsPtrOutput() AgentAgentCollaboratorTimeoutsPtrOutput { + return i.ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i AgentAgentCollaboratorTimeoutsArgs) ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorTimeoutsOutput).ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(ctx) +} + +// AgentAgentCollaboratorTimeoutsPtrInput is an input type that accepts AgentAgentCollaboratorTimeoutsArgs, AgentAgentCollaboratorTimeoutsPtr and AgentAgentCollaboratorTimeoutsPtrOutput values. +// You can construct a concrete instance of `AgentAgentCollaboratorTimeoutsPtrInput` via: +// +// AgentAgentCollaboratorTimeoutsArgs{...} +// +// or: +// +// nil +type AgentAgentCollaboratorTimeoutsPtrInput interface { + pulumi.Input + + ToAgentAgentCollaboratorTimeoutsPtrOutput() AgentAgentCollaboratorTimeoutsPtrOutput + ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(context.Context) AgentAgentCollaboratorTimeoutsPtrOutput +} + +type agentAgentCollaboratorTimeoutsPtrType AgentAgentCollaboratorTimeoutsArgs + +func AgentAgentCollaboratorTimeoutsPtr(v *AgentAgentCollaboratorTimeoutsArgs) AgentAgentCollaboratorTimeoutsPtrInput { + return (*agentAgentCollaboratorTimeoutsPtrType)(v) +} + +func (*agentAgentCollaboratorTimeoutsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaboratorTimeouts)(nil)).Elem() +} + +func (i *agentAgentCollaboratorTimeoutsPtrType) ToAgentAgentCollaboratorTimeoutsPtrOutput() AgentAgentCollaboratorTimeoutsPtrOutput { + return i.ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i *agentAgentCollaboratorTimeoutsPtrType) ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAgentCollaboratorTimeoutsPtrOutput) +} + +type AgentAgentCollaboratorTimeoutsOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorTimeoutsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAgentCollaboratorTimeouts)(nil)).Elem() +} + +func (o AgentAgentCollaboratorTimeoutsOutput) ToAgentAgentCollaboratorTimeoutsOutput() AgentAgentCollaboratorTimeoutsOutput { + return o +} + +func (o AgentAgentCollaboratorTimeoutsOutput) ToAgentAgentCollaboratorTimeoutsOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsOutput { + return o +} + +func (o AgentAgentCollaboratorTimeoutsOutput) ToAgentAgentCollaboratorTimeoutsPtrOutput() AgentAgentCollaboratorTimeoutsPtrOutput { + return o.ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(context.Background()) +} + +func (o AgentAgentCollaboratorTimeoutsOutput) ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentAgentCollaboratorTimeouts) *AgentAgentCollaboratorTimeouts { + return &v + }).(AgentAgentCollaboratorTimeoutsPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o AgentAgentCollaboratorTimeoutsOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentAgentCollaboratorTimeouts) *string { return v.Create }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o AgentAgentCollaboratorTimeoutsOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentAgentCollaboratorTimeouts) *string { return v.Delete }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o AgentAgentCollaboratorTimeoutsOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentAgentCollaboratorTimeouts) *string { return v.Update }).(pulumi.StringPtrOutput) +} + +type AgentAgentCollaboratorTimeoutsPtrOutput struct{ *pulumi.OutputState } + +func (AgentAgentCollaboratorTimeoutsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAgentCollaboratorTimeouts)(nil)).Elem() +} + +func (o AgentAgentCollaboratorTimeoutsPtrOutput) ToAgentAgentCollaboratorTimeoutsPtrOutput() AgentAgentCollaboratorTimeoutsPtrOutput { + return o +} + +func (o AgentAgentCollaboratorTimeoutsPtrOutput) ToAgentAgentCollaboratorTimeoutsPtrOutputWithContext(ctx context.Context) AgentAgentCollaboratorTimeoutsPtrOutput { + return o +} + +func (o AgentAgentCollaboratorTimeoutsPtrOutput) Elem() AgentAgentCollaboratorTimeoutsOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorTimeouts) AgentAgentCollaboratorTimeouts { + if v != nil { + return *v + } + var ret AgentAgentCollaboratorTimeouts + return ret + }).(AgentAgentCollaboratorTimeoutsOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o AgentAgentCollaboratorTimeoutsPtrOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorTimeouts) *string { + if v == nil { + return nil + } + return v.Create + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o AgentAgentCollaboratorTimeoutsPtrOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorTimeouts) *string { + if v == nil { + return nil + } + return v.Delete + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o AgentAgentCollaboratorTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentAgentCollaboratorTimeouts) *string { + if v == nil { + return nil + } + return v.Update + }).(pulumi.StringPtrOutput) +} + type AgentAgentGuardrailConfiguration struct { // Unique identifier of the guardrail. GuardrailIdentifier string `pulumi:"guardrailIdentifier"` @@ -12209,6 +12521,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentAliasRoutingConfigurationArrayInput)(nil)).Elem(), AgentAgentAliasRoutingConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentAliasTimeoutsInput)(nil)).Elem(), AgentAgentAliasTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentAliasTimeoutsPtrInput)(nil)).Elem(), AgentAgentAliasTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorAgentDescriptorInput)(nil)).Elem(), AgentAgentCollaboratorAgentDescriptorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorAgentDescriptorPtrInput)(nil)).Elem(), AgentAgentCollaboratorAgentDescriptorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorTimeoutsInput)(nil)).Elem(), AgentAgentCollaboratorTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentCollaboratorTimeoutsPtrInput)(nil)).Elem(), AgentAgentCollaboratorTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentGuardrailConfigurationInput)(nil)).Elem(), AgentAgentGuardrailConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentGuardrailConfigurationArrayInput)(nil)).Elem(), AgentAgentGuardrailConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAgentKnowledgeBaseAssociationTimeoutsInput)(nil)).Elem(), AgentAgentKnowledgeBaseAssociationTimeoutsArgs{}) @@ -12379,6 +12695,10 @@ func init() { pulumi.RegisterOutputType(AgentAgentAliasRoutingConfigurationArrayOutput{}) pulumi.RegisterOutputType(AgentAgentAliasTimeoutsOutput{}) pulumi.RegisterOutputType(AgentAgentAliasTimeoutsPtrOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorAgentDescriptorOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorAgentDescriptorPtrOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorTimeoutsOutput{}) + pulumi.RegisterOutputType(AgentAgentCollaboratorTimeoutsPtrOutput{}) pulumi.RegisterOutputType(AgentAgentGuardrailConfigurationOutput{}) pulumi.RegisterOutputType(AgentAgentGuardrailConfigurationArrayOutput{}) pulumi.RegisterOutputType(AgentAgentKnowledgeBaseAssociationTimeoutsOutput{}) diff --git a/sdk/go/aws/cleanrooms/init.go b/sdk/go/aws/cleanrooms/init.go index 0486bb9fb1b..e677e3f7fba 100644 --- a/sdk/go/aws/cleanrooms/init.go +++ b/sdk/go/aws/cleanrooms/init.go @@ -25,6 +25,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &Collaboration{} case "aws:cleanrooms/configuredTable:ConfiguredTable": r = &ConfiguredTable{} + case "aws:cleanrooms/membership:Membership": + r = &Membership{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } @@ -48,4 +50,9 @@ func init() { "cleanrooms/configuredTable", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "cleanrooms/membership", + &module{version}, + ) } diff --git a/sdk/go/aws/cleanrooms/membership.go b/sdk/go/aws/cleanrooms/membership.go new file mode 100644 index 00000000000..e82838c18f2 --- /dev/null +++ b/sdk/go/aws/cleanrooms/membership.go @@ -0,0 +1,436 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cleanrooms + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. +// +// ## Example Usage +// +// ### Membership with tags +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cleanrooms" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cleanrooms.NewMembership(ctx, "test_membership", &cleanrooms.MembershipArgs{ +// CollaborationId: pulumi.String("1234abcd-12ab-34cd-56ef-1234567890ab"), +// QueryLogStatus: pulumi.String("DISABLED"), +// DefaultResultConfiguration: &cleanrooms.MembershipDefaultResultConfigurationArgs{ +// RoleArn: pulumi.String("arn:aws:iam::123456789012:role/role-name"), +// OutputConfiguration: &cleanrooms.MembershipDefaultResultConfigurationOutputConfigurationArgs{ +// S3: &cleanrooms.MembershipDefaultResultConfigurationOutputConfigurationS3Args{ +// Bucket: pulumi.String("test-bucket"), +// ResultFormat: pulumi.String("PARQUET"), +// KeyPrefix: pulumi.String("test-prefix"), +// }, +// }, +// }, +// Tags: pulumi.StringMap{ +// "Project": pulumi.String("Terraform"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: +// +// ```sh +// $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab +// ``` +type Membership struct { + pulumi.CustomResourceState + + // The ARN of the membership. + Arn pulumi.StringOutput `pulumi:"arn"` + // The ARN of the joined collaboration. + CollaborationArn pulumi.StringOutput `pulumi:"collaborationArn"` + // The account ID of the collaboration's creator. + CollaborationCreatorAccountId pulumi.StringOutput `pulumi:"collaborationCreatorAccountId"` + // The display name of the collaboration's creator. + CollaborationCreatorDisplayName pulumi.StringOutput `pulumi:"collaborationCreatorDisplayName"` + // The ID of the collaboration to which the member was invited. + CollaborationId pulumi.StringOutput `pulumi:"collaborationId"` + // The name of the joined collaboration. + CollaborationName pulumi.StringOutput `pulumi:"collaborationName"` + // The date and time the membership was created. + CreateTime pulumi.StringOutput `pulumi:"createTime"` + // The default configuration for a query result. + DefaultResultConfiguration MembershipDefaultResultConfigurationPtrOutput `pulumi:"defaultResultConfiguration"` + // The list of abilities for the invited member. + MemberAbilities pulumi.StringArrayOutput `pulumi:"memberAbilities"` + PaymentConfiguration MembershipPaymentConfigurationPtrOutput `pulumi:"paymentConfiguration"` + // An indicator as to whether query logging has been enabled or disabled for the membership. + QueryLogStatus pulumi.StringOutput `pulumi:"queryLogStatus"` + // The status of the membership. + Status pulumi.StringOutput `pulumi:"status"` + // Key value pairs which tag the membership. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` + // The date and time the membership was last updated. + UpdateTime pulumi.StringOutput `pulumi:"updateTime"` +} + +// NewMembership registers a new resource with the given unique name, arguments, and options. +func NewMembership(ctx *pulumi.Context, + name string, args *MembershipArgs, opts ...pulumi.ResourceOption) (*Membership, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.CollaborationId == nil { + return nil, errors.New("invalid value for required argument 'CollaborationId'") + } + if args.QueryLogStatus == nil { + return nil, errors.New("invalid value for required argument 'QueryLogStatus'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource Membership + err := ctx.RegisterResource("aws:cleanrooms/membership:Membership", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetMembership gets an existing Membership 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 GetMembership(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *MembershipState, opts ...pulumi.ResourceOption) (*Membership, error) { + var resource Membership + err := ctx.ReadResource("aws:cleanrooms/membership:Membership", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Membership resources. +type membershipState struct { + // The ARN of the membership. + Arn *string `pulumi:"arn"` + // The ARN of the joined collaboration. + CollaborationArn *string `pulumi:"collaborationArn"` + // The account ID of the collaboration's creator. + CollaborationCreatorAccountId *string `pulumi:"collaborationCreatorAccountId"` + // The display name of the collaboration's creator. + CollaborationCreatorDisplayName *string `pulumi:"collaborationCreatorDisplayName"` + // The ID of the collaboration to which the member was invited. + CollaborationId *string `pulumi:"collaborationId"` + // The name of the joined collaboration. + CollaborationName *string `pulumi:"collaborationName"` + // The date and time the membership was created. + CreateTime *string `pulumi:"createTime"` + // The default configuration for a query result. + DefaultResultConfiguration *MembershipDefaultResultConfiguration `pulumi:"defaultResultConfiguration"` + // The list of abilities for the invited member. + MemberAbilities []string `pulumi:"memberAbilities"` + PaymentConfiguration *MembershipPaymentConfiguration `pulumi:"paymentConfiguration"` + // An indicator as to whether query logging has been enabled or disabled for the membership. + QueryLogStatus *string `pulumi:"queryLogStatus"` + // The status of the membership. + Status *string `pulumi:"status"` + // Key value pairs which tag the membership. + Tags map[string]string `pulumi:"tags"` + // Deprecated: Please use `tags` instead. + TagsAll map[string]string `pulumi:"tagsAll"` + // The date and time the membership was last updated. + UpdateTime *string `pulumi:"updateTime"` +} + +type MembershipState struct { + // The ARN of the membership. + Arn pulumi.StringPtrInput + // The ARN of the joined collaboration. + CollaborationArn pulumi.StringPtrInput + // The account ID of the collaboration's creator. + CollaborationCreatorAccountId pulumi.StringPtrInput + // The display name of the collaboration's creator. + CollaborationCreatorDisplayName pulumi.StringPtrInput + // The ID of the collaboration to which the member was invited. + CollaborationId pulumi.StringPtrInput + // The name of the joined collaboration. + CollaborationName pulumi.StringPtrInput + // The date and time the membership was created. + CreateTime pulumi.StringPtrInput + // The default configuration for a query result. + DefaultResultConfiguration MembershipDefaultResultConfigurationPtrInput + // The list of abilities for the invited member. + MemberAbilities pulumi.StringArrayInput + PaymentConfiguration MembershipPaymentConfigurationPtrInput + // An indicator as to whether query logging has been enabled or disabled for the membership. + QueryLogStatus pulumi.StringPtrInput + // The status of the membership. + Status pulumi.StringPtrInput + // Key value pairs which tag the membership. + Tags pulumi.StringMapInput + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapInput + // The date and time the membership was last updated. + UpdateTime pulumi.StringPtrInput +} + +func (MembershipState) ElementType() reflect.Type { + return reflect.TypeOf((*membershipState)(nil)).Elem() +} + +type membershipArgs struct { + // The ID of the collaboration to which the member was invited. + CollaborationId string `pulumi:"collaborationId"` + // The default configuration for a query result. + DefaultResultConfiguration *MembershipDefaultResultConfiguration `pulumi:"defaultResultConfiguration"` + PaymentConfiguration *MembershipPaymentConfiguration `pulumi:"paymentConfiguration"` + // An indicator as to whether query logging has been enabled or disabled for the membership. + QueryLogStatus string `pulumi:"queryLogStatus"` + // Key value pairs which tag the membership. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a Membership resource. +type MembershipArgs struct { + // The ID of the collaboration to which the member was invited. + CollaborationId pulumi.StringInput + // The default configuration for a query result. + DefaultResultConfiguration MembershipDefaultResultConfigurationPtrInput + PaymentConfiguration MembershipPaymentConfigurationPtrInput + // An indicator as to whether query logging has been enabled or disabled for the membership. + QueryLogStatus pulumi.StringInput + // Key value pairs which tag the membership. + Tags pulumi.StringMapInput +} + +func (MembershipArgs) ElementType() reflect.Type { + return reflect.TypeOf((*membershipArgs)(nil)).Elem() +} + +type MembershipInput interface { + pulumi.Input + + ToMembershipOutput() MembershipOutput + ToMembershipOutputWithContext(ctx context.Context) MembershipOutput +} + +func (*Membership) ElementType() reflect.Type { + return reflect.TypeOf((**Membership)(nil)).Elem() +} + +func (i *Membership) ToMembershipOutput() MembershipOutput { + return i.ToMembershipOutputWithContext(context.Background()) +} + +func (i *Membership) ToMembershipOutputWithContext(ctx context.Context) MembershipOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipOutput) +} + +// MembershipArrayInput is an input type that accepts MembershipArray and MembershipArrayOutput values. +// You can construct a concrete instance of `MembershipArrayInput` via: +// +// MembershipArray{ MembershipArgs{...} } +type MembershipArrayInput interface { + pulumi.Input + + ToMembershipArrayOutput() MembershipArrayOutput + ToMembershipArrayOutputWithContext(context.Context) MembershipArrayOutput +} + +type MembershipArray []MembershipInput + +func (MembershipArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Membership)(nil)).Elem() +} + +func (i MembershipArray) ToMembershipArrayOutput() MembershipArrayOutput { + return i.ToMembershipArrayOutputWithContext(context.Background()) +} + +func (i MembershipArray) ToMembershipArrayOutputWithContext(ctx context.Context) MembershipArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipArrayOutput) +} + +// MembershipMapInput is an input type that accepts MembershipMap and MembershipMapOutput values. +// You can construct a concrete instance of `MembershipMapInput` via: +// +// MembershipMap{ "key": MembershipArgs{...} } +type MembershipMapInput interface { + pulumi.Input + + ToMembershipMapOutput() MembershipMapOutput + ToMembershipMapOutputWithContext(context.Context) MembershipMapOutput +} + +type MembershipMap map[string]MembershipInput + +func (MembershipMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Membership)(nil)).Elem() +} + +func (i MembershipMap) ToMembershipMapOutput() MembershipMapOutput { + return i.ToMembershipMapOutputWithContext(context.Background()) +} + +func (i MembershipMap) ToMembershipMapOutputWithContext(ctx context.Context) MembershipMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipMapOutput) +} + +type MembershipOutput struct{ *pulumi.OutputState } + +func (MembershipOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Membership)(nil)).Elem() +} + +func (o MembershipOutput) ToMembershipOutput() MembershipOutput { + return o +} + +func (o MembershipOutput) ToMembershipOutputWithContext(ctx context.Context) MembershipOutput { + return o +} + +// The ARN of the membership. +func (o MembershipOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The ARN of the joined collaboration. +func (o MembershipOutput) CollaborationArn() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CollaborationArn }).(pulumi.StringOutput) +} + +// The account ID of the collaboration's creator. +func (o MembershipOutput) CollaborationCreatorAccountId() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CollaborationCreatorAccountId }).(pulumi.StringOutput) +} + +// The display name of the collaboration's creator. +func (o MembershipOutput) CollaborationCreatorDisplayName() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CollaborationCreatorDisplayName }).(pulumi.StringOutput) +} + +// The ID of the collaboration to which the member was invited. +func (o MembershipOutput) CollaborationId() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CollaborationId }).(pulumi.StringOutput) +} + +// The name of the joined collaboration. +func (o MembershipOutput) CollaborationName() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CollaborationName }).(pulumi.StringOutput) +} + +// The date and time the membership was created. +func (o MembershipOutput) CreateTime() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.CreateTime }).(pulumi.StringOutput) +} + +// The default configuration for a query result. +func (o MembershipOutput) DefaultResultConfiguration() MembershipDefaultResultConfigurationPtrOutput { + return o.ApplyT(func(v *Membership) MembershipDefaultResultConfigurationPtrOutput { return v.DefaultResultConfiguration }).(MembershipDefaultResultConfigurationPtrOutput) +} + +// The list of abilities for the invited member. +func (o MembershipOutput) MemberAbilities() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Membership) pulumi.StringArrayOutput { return v.MemberAbilities }).(pulumi.StringArrayOutput) +} + +func (o MembershipOutput) PaymentConfiguration() MembershipPaymentConfigurationPtrOutput { + return o.ApplyT(func(v *Membership) MembershipPaymentConfigurationPtrOutput { return v.PaymentConfiguration }).(MembershipPaymentConfigurationPtrOutput) +} + +// An indicator as to whether query logging has been enabled or disabled for the membership. +func (o MembershipOutput) QueryLogStatus() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.QueryLogStatus }).(pulumi.StringOutput) +} + +// The status of the membership. +func (o MembershipOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// Key value pairs which tag the membership. +func (o MembershipOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *Membership) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// Deprecated: Please use `tags` instead. +func (o MembershipOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *Membership) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +// The date and time the membership was last updated. +func (o MembershipOutput) UpdateTime() pulumi.StringOutput { + return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.UpdateTime }).(pulumi.StringOutput) +} + +type MembershipArrayOutput struct{ *pulumi.OutputState } + +func (MembershipArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Membership)(nil)).Elem() +} + +func (o MembershipArrayOutput) ToMembershipArrayOutput() MembershipArrayOutput { + return o +} + +func (o MembershipArrayOutput) ToMembershipArrayOutputWithContext(ctx context.Context) MembershipArrayOutput { + return o +} + +func (o MembershipArrayOutput) Index(i pulumi.IntInput) MembershipOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Membership { + return vs[0].([]*Membership)[vs[1].(int)] + }).(MembershipOutput) +} + +type MembershipMapOutput struct{ *pulumi.OutputState } + +func (MembershipMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Membership)(nil)).Elem() +} + +func (o MembershipMapOutput) ToMembershipMapOutput() MembershipMapOutput { + return o +} + +func (o MembershipMapOutput) ToMembershipMapOutputWithContext(ctx context.Context) MembershipMapOutput { + return o +} + +func (o MembershipMapOutput) MapIndex(k pulumi.StringInput) MembershipOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Membership { + return vs[0].(map[string]*Membership)[vs[1].(string)] + }).(MembershipOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*MembershipInput)(nil)).Elem(), &Membership{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipArrayInput)(nil)).Elem(), MembershipArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipMapInput)(nil)).Elem(), MembershipMap{}) + pulumi.RegisterOutputType(MembershipOutput{}) + pulumi.RegisterOutputType(MembershipArrayOutput{}) + pulumi.RegisterOutputType(MembershipMapOutput{}) +} diff --git a/sdk/go/aws/cleanrooms/pulumiTypes.go b/sdk/go/aws/cleanrooms/pulumiTypes.go index 1d10c523468..0e755735341 100644 --- a/sdk/go/aws/cleanrooms/pulumiTypes.go +++ b/sdk/go/aws/cleanrooms/pulumiTypes.go @@ -451,6 +451,742 @@ func (o ConfiguredTableTableReferencePtrOutput) TableName() pulumi.StringPtrOutp }).(pulumi.StringPtrOutput) } +type MembershipDefaultResultConfiguration struct { + OutputConfiguration *MembershipDefaultResultConfigurationOutputConfiguration `pulumi:"outputConfiguration"` + // The ARN of the IAM role which will be used to create the membership. + // - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + // - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + // - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + RoleArn *string `pulumi:"roleArn"` +} + +// MembershipDefaultResultConfigurationInput is an input type that accepts MembershipDefaultResultConfigurationArgs and MembershipDefaultResultConfigurationOutput values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationInput` via: +// +// MembershipDefaultResultConfigurationArgs{...} +type MembershipDefaultResultConfigurationInput interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationOutput() MembershipDefaultResultConfigurationOutput + ToMembershipDefaultResultConfigurationOutputWithContext(context.Context) MembershipDefaultResultConfigurationOutput +} + +type MembershipDefaultResultConfigurationArgs struct { + OutputConfiguration MembershipDefaultResultConfigurationOutputConfigurationPtrInput `pulumi:"outputConfiguration"` + // The ARN of the IAM role which will be used to create the membership. + // - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + // - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + // - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + RoleArn pulumi.StringPtrInput `pulumi:"roleArn"` +} + +func (MembershipDefaultResultConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfiguration)(nil)).Elem() +} + +func (i MembershipDefaultResultConfigurationArgs) ToMembershipDefaultResultConfigurationOutput() MembershipDefaultResultConfigurationOutput { + return i.ToMembershipDefaultResultConfigurationOutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationArgs) ToMembershipDefaultResultConfigurationOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutput) +} + +func (i MembershipDefaultResultConfigurationArgs) ToMembershipDefaultResultConfigurationPtrOutput() MembershipDefaultResultConfigurationPtrOutput { + return i.ToMembershipDefaultResultConfigurationPtrOutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationArgs) ToMembershipDefaultResultConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutput).ToMembershipDefaultResultConfigurationPtrOutputWithContext(ctx) +} + +// MembershipDefaultResultConfigurationPtrInput is an input type that accepts MembershipDefaultResultConfigurationArgs, MembershipDefaultResultConfigurationPtr and MembershipDefaultResultConfigurationPtrOutput values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationPtrInput` via: +// +// MembershipDefaultResultConfigurationArgs{...} +// +// or: +// +// nil +type MembershipDefaultResultConfigurationPtrInput interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationPtrOutput() MembershipDefaultResultConfigurationPtrOutput + ToMembershipDefaultResultConfigurationPtrOutputWithContext(context.Context) MembershipDefaultResultConfigurationPtrOutput +} + +type membershipDefaultResultConfigurationPtrType MembershipDefaultResultConfigurationArgs + +func MembershipDefaultResultConfigurationPtr(v *MembershipDefaultResultConfigurationArgs) MembershipDefaultResultConfigurationPtrInput { + return (*membershipDefaultResultConfigurationPtrType)(v) +} + +func (*membershipDefaultResultConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfiguration)(nil)).Elem() +} + +func (i *membershipDefaultResultConfigurationPtrType) ToMembershipDefaultResultConfigurationPtrOutput() MembershipDefaultResultConfigurationPtrOutput { + return i.ToMembershipDefaultResultConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *membershipDefaultResultConfigurationPtrType) ToMembershipDefaultResultConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationPtrOutput) +} + +type MembershipDefaultResultConfigurationOutput struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfiguration)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationOutput) ToMembershipDefaultResultConfigurationOutput() MembershipDefaultResultConfigurationOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutput) ToMembershipDefaultResultConfigurationOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutput) ToMembershipDefaultResultConfigurationPtrOutput() MembershipDefaultResultConfigurationPtrOutput { + return o.ToMembershipDefaultResultConfigurationPtrOutputWithContext(context.Background()) +} + +func (o MembershipDefaultResultConfigurationOutput) ToMembershipDefaultResultConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipDefaultResultConfiguration) *MembershipDefaultResultConfiguration { + return &v + }).(MembershipDefaultResultConfigurationPtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutput) OutputConfiguration() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o.ApplyT(func(v MembershipDefaultResultConfiguration) *MembershipDefaultResultConfigurationOutputConfiguration { + return v.OutputConfiguration + }).(MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) +} + +// The ARN of the IAM role which will be used to create the membership. +// - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. +// - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. +// - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. +func (o MembershipDefaultResultConfigurationOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v MembershipDefaultResultConfiguration) *string { return v.RoleArn }).(pulumi.StringPtrOutput) +} + +type MembershipDefaultResultConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfiguration)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationPtrOutput) ToMembershipDefaultResultConfigurationPtrOutput() MembershipDefaultResultConfigurationPtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationPtrOutput) ToMembershipDefaultResultConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationPtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationPtrOutput) Elem() MembershipDefaultResultConfigurationOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfiguration) MembershipDefaultResultConfiguration { + if v != nil { + return *v + } + var ret MembershipDefaultResultConfiguration + return ret + }).(MembershipDefaultResultConfigurationOutput) +} + +func (o MembershipDefaultResultConfigurationPtrOutput) OutputConfiguration() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfiguration) *MembershipDefaultResultConfigurationOutputConfiguration { + if v == nil { + return nil + } + return v.OutputConfiguration + }).(MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) +} + +// The ARN of the IAM role which will be used to create the membership. +// - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. +// - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. +// - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. +func (o MembershipDefaultResultConfigurationPtrOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfiguration) *string { + if v == nil { + return nil + } + return v.RoleArn + }).(pulumi.StringPtrOutput) +} + +type MembershipDefaultResultConfigurationOutputConfiguration struct { + S3 *MembershipDefaultResultConfigurationOutputConfigurationS3 `pulumi:"s3"` +} + +// MembershipDefaultResultConfigurationOutputConfigurationInput is an input type that accepts MembershipDefaultResultConfigurationOutputConfigurationArgs and MembershipDefaultResultConfigurationOutputConfigurationOutput values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationOutputConfigurationInput` via: +// +// MembershipDefaultResultConfigurationOutputConfigurationArgs{...} +type MembershipDefaultResultConfigurationOutputConfigurationInput interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationOutputConfigurationOutput() MembershipDefaultResultConfigurationOutputConfigurationOutput + ToMembershipDefaultResultConfigurationOutputConfigurationOutputWithContext(context.Context) MembershipDefaultResultConfigurationOutputConfigurationOutput +} + +type MembershipDefaultResultConfigurationOutputConfigurationArgs struct { + S3 MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput `pulumi:"s3"` +} + +func (MembershipDefaultResultConfigurationOutputConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfiguration)(nil)).Elem() +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationArgs) ToMembershipDefaultResultConfigurationOutputConfigurationOutput() MembershipDefaultResultConfigurationOutputConfigurationOutput { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationOutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationArgs) ToMembershipDefaultResultConfigurationOutputConfigurationOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationOutput) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationArgs) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutput() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationArgs) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationOutput).ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(ctx) +} + +// MembershipDefaultResultConfigurationOutputConfigurationPtrInput is an input type that accepts MembershipDefaultResultConfigurationOutputConfigurationArgs, MembershipDefaultResultConfigurationOutputConfigurationPtr and MembershipDefaultResultConfigurationOutputConfigurationPtrOutput values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationOutputConfigurationPtrInput` via: +// +// MembershipDefaultResultConfigurationOutputConfigurationArgs{...} +// +// or: +// +// nil +type MembershipDefaultResultConfigurationOutputConfigurationPtrInput interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutput() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput + ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(context.Context) MembershipDefaultResultConfigurationOutputConfigurationPtrOutput +} + +type membershipDefaultResultConfigurationOutputConfigurationPtrType MembershipDefaultResultConfigurationOutputConfigurationArgs + +func MembershipDefaultResultConfigurationOutputConfigurationPtr(v *MembershipDefaultResultConfigurationOutputConfigurationArgs) MembershipDefaultResultConfigurationOutputConfigurationPtrInput { + return (*membershipDefaultResultConfigurationOutputConfigurationPtrType)(v) +} + +func (*membershipDefaultResultConfigurationOutputConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfigurationOutputConfiguration)(nil)).Elem() +} + +func (i *membershipDefaultResultConfigurationOutputConfigurationPtrType) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutput() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *membershipDefaultResultConfigurationOutputConfigurationPtrType) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) +} + +type MembershipDefaultResultConfigurationOutputConfigurationOutput struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationOutputConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfiguration)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationOutput) ToMembershipDefaultResultConfigurationOutputConfigurationOutput() MembershipDefaultResultConfigurationOutputConfigurationOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationOutput) ToMembershipDefaultResultConfigurationOutputConfigurationOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationOutput) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutput() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o.ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(context.Background()) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationOutput) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipDefaultResultConfigurationOutputConfiguration) *MembershipDefaultResultConfigurationOutputConfiguration { + return &v + }).(MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationOutput) S3() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o.ApplyT(func(v MembershipDefaultResultConfigurationOutputConfiguration) *MembershipDefaultResultConfigurationOutputConfigurationS3 { + return v.S3 + }).(MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) +} + +type MembershipDefaultResultConfigurationOutputConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfigurationOutputConfiguration)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutput() MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) ToMembershipDefaultResultConfigurationOutputConfigurationPtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationPtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) Elem() MembershipDefaultResultConfigurationOutputConfigurationOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfiguration) MembershipDefaultResultConfigurationOutputConfiguration { + if v != nil { + return *v + } + var ret MembershipDefaultResultConfigurationOutputConfiguration + return ret + }).(MembershipDefaultResultConfigurationOutputConfigurationOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationPtrOutput) S3() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfiguration) *MembershipDefaultResultConfigurationOutputConfigurationS3 { + if v == nil { + return nil + } + return v.S3 + }).(MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) +} + +type MembershipDefaultResultConfigurationOutputConfigurationS3 struct { + Bucket string `pulumi:"bucket"` + KeyPrefix *string `pulumi:"keyPrefix"` + ResultFormat string `pulumi:"resultFormat"` +} + +// MembershipDefaultResultConfigurationOutputConfigurationS3Input is an input type that accepts MembershipDefaultResultConfigurationOutputConfigurationS3Args and MembershipDefaultResultConfigurationOutputConfigurationS3Output values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationOutputConfigurationS3Input` via: +// +// MembershipDefaultResultConfigurationOutputConfigurationS3Args{...} +type MembershipDefaultResultConfigurationOutputConfigurationS3Input interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationOutputConfigurationS3Output() MembershipDefaultResultConfigurationOutputConfigurationS3Output + ToMembershipDefaultResultConfigurationOutputConfigurationS3OutputWithContext(context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3Output +} + +type MembershipDefaultResultConfigurationOutputConfigurationS3Args struct { + Bucket pulumi.StringInput `pulumi:"bucket"` + KeyPrefix pulumi.StringPtrInput `pulumi:"keyPrefix"` + ResultFormat pulumi.StringInput `pulumi:"resultFormat"` +} + +func (MembershipDefaultResultConfigurationOutputConfigurationS3Args) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationS3)(nil)).Elem() +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationS3Args) ToMembershipDefaultResultConfigurationOutputConfigurationS3Output() MembershipDefaultResultConfigurationOutputConfigurationS3Output { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationS3OutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationS3Args) ToMembershipDefaultResultConfigurationOutputConfigurationS3OutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3Output { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationS3Output) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationS3Args) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(context.Background()) +} + +func (i MembershipDefaultResultConfigurationOutputConfigurationS3Args) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationS3Output).ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(ctx) +} + +// MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput is an input type that accepts MembershipDefaultResultConfigurationOutputConfigurationS3Args, MembershipDefaultResultConfigurationOutputConfigurationS3Ptr and MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput values. +// You can construct a concrete instance of `MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput` via: +// +// MembershipDefaultResultConfigurationOutputConfigurationS3Args{...} +// +// or: +// +// nil +type MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput interface { + pulumi.Input + + ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput + ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput +} + +type membershipDefaultResultConfigurationOutputConfigurationS3PtrType MembershipDefaultResultConfigurationOutputConfigurationS3Args + +func MembershipDefaultResultConfigurationOutputConfigurationS3Ptr(v *MembershipDefaultResultConfigurationOutputConfigurationS3Args) MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput { + return (*membershipDefaultResultConfigurationOutputConfigurationS3PtrType)(v) +} + +func (*membershipDefaultResultConfigurationOutputConfigurationS3PtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfigurationOutputConfigurationS3)(nil)).Elem() +} + +func (i *membershipDefaultResultConfigurationOutputConfigurationS3PtrType) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return i.ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(context.Background()) +} + +func (i *membershipDefaultResultConfigurationOutputConfigurationS3PtrType) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) +} + +type MembershipDefaultResultConfigurationOutputConfigurationS3Output struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationOutputConfigurationS3Output) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationS3)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) ToMembershipDefaultResultConfigurationOutputConfigurationS3Output() MembershipDefaultResultConfigurationOutputConfigurationS3Output { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) ToMembershipDefaultResultConfigurationOutputConfigurationS3OutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3Output { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o.ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(context.Background()) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipDefaultResultConfigurationOutputConfigurationS3) *MembershipDefaultResultConfigurationOutputConfigurationS3 { + return &v + }).(MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) Bucket() pulumi.StringOutput { + return o.ApplyT(func(v MembershipDefaultResultConfigurationOutputConfigurationS3) string { return v.Bucket }).(pulumi.StringOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) KeyPrefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v MembershipDefaultResultConfigurationOutputConfigurationS3) *string { return v.KeyPrefix }).(pulumi.StringPtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3Output) ResultFormat() pulumi.StringOutput { + return o.ApplyT(func(v MembershipDefaultResultConfigurationOutputConfigurationS3) string { return v.ResultFormat }).(pulumi.StringOutput) +} + +type MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput struct{ *pulumi.OutputState } + +func (MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipDefaultResultConfigurationOutputConfigurationS3)(nil)).Elem() +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput() MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) ToMembershipDefaultResultConfigurationOutputConfigurationS3PtrOutputWithContext(ctx context.Context) MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput { + return o +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) Elem() MembershipDefaultResultConfigurationOutputConfigurationS3Output { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfigurationS3) MembershipDefaultResultConfigurationOutputConfigurationS3 { + if v != nil { + return *v + } + var ret MembershipDefaultResultConfigurationOutputConfigurationS3 + return ret + }).(MembershipDefaultResultConfigurationOutputConfigurationS3Output) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) Bucket() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfigurationS3) *string { + if v == nil { + return nil + } + return &v.Bucket + }).(pulumi.StringPtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) KeyPrefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfigurationS3) *string { + if v == nil { + return nil + } + return v.KeyPrefix + }).(pulumi.StringPtrOutput) +} + +func (o MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput) ResultFormat() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MembershipDefaultResultConfigurationOutputConfigurationS3) *string { + if v == nil { + return nil + } + return &v.ResultFormat + }).(pulumi.StringPtrOutput) +} + +type MembershipPaymentConfiguration struct { + QueryCompute *MembershipPaymentConfigurationQueryCompute `pulumi:"queryCompute"` +} + +// MembershipPaymentConfigurationInput is an input type that accepts MembershipPaymentConfigurationArgs and MembershipPaymentConfigurationOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationInput` via: +// +// MembershipPaymentConfigurationArgs{...} +type MembershipPaymentConfigurationInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput + ToMembershipPaymentConfigurationOutputWithContext(context.Context) MembershipPaymentConfigurationOutput +} + +type MembershipPaymentConfigurationArgs struct { + QueryCompute MembershipPaymentConfigurationQueryComputePtrInput `pulumi:"queryCompute"` +} + +func (MembershipPaymentConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfiguration)(nil)).Elem() +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput { + return i.ToMembershipPaymentConfigurationOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationOutputWithContext(ctx context.Context) MembershipPaymentConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationOutput) +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return i.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationOutput).ToMembershipPaymentConfigurationPtrOutputWithContext(ctx) +} + +// MembershipPaymentConfigurationPtrInput is an input type that accepts MembershipPaymentConfigurationArgs, MembershipPaymentConfigurationPtr and MembershipPaymentConfigurationPtrOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationPtrInput` via: +// +// MembershipPaymentConfigurationArgs{...} +// +// or: +// +// nil +type MembershipPaymentConfigurationPtrInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput + ToMembershipPaymentConfigurationPtrOutputWithContext(context.Context) MembershipPaymentConfigurationPtrOutput +} + +type membershipPaymentConfigurationPtrType MembershipPaymentConfigurationArgs + +func MembershipPaymentConfigurationPtr(v *MembershipPaymentConfigurationArgs) MembershipPaymentConfigurationPtrInput { + return (*membershipPaymentConfigurationPtrType)(v) +} + +func (*membershipPaymentConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfiguration)(nil)).Elem() +} + +func (i *membershipPaymentConfigurationPtrType) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return i.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *membershipPaymentConfigurationPtrType) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationPtrOutput) +} + +type MembershipPaymentConfigurationOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfiguration)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput { + return o +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationOutputWithContext(ctx context.Context) MembershipPaymentConfigurationOutput { + return o +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return o.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipPaymentConfiguration) *MembershipPaymentConfiguration { + return &v + }).(MembershipPaymentConfigurationPtrOutput) +} + +func (o MembershipPaymentConfigurationOutput) QueryCompute() MembershipPaymentConfigurationQueryComputePtrOutput { + return o.ApplyT(func(v MembershipPaymentConfiguration) *MembershipPaymentConfigurationQueryCompute { + return v.QueryCompute + }).(MembershipPaymentConfigurationQueryComputePtrOutput) +} + +type MembershipPaymentConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfiguration)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationPtrOutput) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return o +} + +func (o MembershipPaymentConfigurationPtrOutput) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return o +} + +func (o MembershipPaymentConfigurationPtrOutput) Elem() MembershipPaymentConfigurationOutput { + return o.ApplyT(func(v *MembershipPaymentConfiguration) MembershipPaymentConfiguration { + if v != nil { + return *v + } + var ret MembershipPaymentConfiguration + return ret + }).(MembershipPaymentConfigurationOutput) +} + +func (o MembershipPaymentConfigurationPtrOutput) QueryCompute() MembershipPaymentConfigurationQueryComputePtrOutput { + return o.ApplyT(func(v *MembershipPaymentConfiguration) *MembershipPaymentConfigurationQueryCompute { + if v == nil { + return nil + } + return v.QueryCompute + }).(MembershipPaymentConfigurationQueryComputePtrOutput) +} + +type MembershipPaymentConfigurationQueryCompute struct { + // Indicates whether the collaboration member has accepted to pay for query compute costs. + IsResponsible bool `pulumi:"isResponsible"` +} + +// MembershipPaymentConfigurationQueryComputeInput is an input type that accepts MembershipPaymentConfigurationQueryComputeArgs and MembershipPaymentConfigurationQueryComputeOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationQueryComputeInput` via: +// +// MembershipPaymentConfigurationQueryComputeArgs{...} +type MembershipPaymentConfigurationQueryComputeInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationQueryComputeOutput() MembershipPaymentConfigurationQueryComputeOutput + ToMembershipPaymentConfigurationQueryComputeOutputWithContext(context.Context) MembershipPaymentConfigurationQueryComputeOutput +} + +type MembershipPaymentConfigurationQueryComputeArgs struct { + // Indicates whether the collaboration member has accepted to pay for query compute costs. + IsResponsible pulumi.BoolInput `pulumi:"isResponsible"` +} + +func (MembershipPaymentConfigurationQueryComputeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfigurationQueryCompute)(nil)).Elem() +} + +func (i MembershipPaymentConfigurationQueryComputeArgs) ToMembershipPaymentConfigurationQueryComputeOutput() MembershipPaymentConfigurationQueryComputeOutput { + return i.ToMembershipPaymentConfigurationQueryComputeOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationQueryComputeArgs) ToMembershipPaymentConfigurationQueryComputeOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputeOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationQueryComputeOutput) +} + +func (i MembershipPaymentConfigurationQueryComputeArgs) ToMembershipPaymentConfigurationQueryComputePtrOutput() MembershipPaymentConfigurationQueryComputePtrOutput { + return i.ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationQueryComputeArgs) ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationQueryComputeOutput).ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(ctx) +} + +// MembershipPaymentConfigurationQueryComputePtrInput is an input type that accepts MembershipPaymentConfigurationQueryComputeArgs, MembershipPaymentConfigurationQueryComputePtr and MembershipPaymentConfigurationQueryComputePtrOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationQueryComputePtrInput` via: +// +// MembershipPaymentConfigurationQueryComputeArgs{...} +// +// or: +// +// nil +type MembershipPaymentConfigurationQueryComputePtrInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationQueryComputePtrOutput() MembershipPaymentConfigurationQueryComputePtrOutput + ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(context.Context) MembershipPaymentConfigurationQueryComputePtrOutput +} + +type membershipPaymentConfigurationQueryComputePtrType MembershipPaymentConfigurationQueryComputeArgs + +func MembershipPaymentConfigurationQueryComputePtr(v *MembershipPaymentConfigurationQueryComputeArgs) MembershipPaymentConfigurationQueryComputePtrInput { + return (*membershipPaymentConfigurationQueryComputePtrType)(v) +} + +func (*membershipPaymentConfigurationQueryComputePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfigurationQueryCompute)(nil)).Elem() +} + +func (i *membershipPaymentConfigurationQueryComputePtrType) ToMembershipPaymentConfigurationQueryComputePtrOutput() MembershipPaymentConfigurationQueryComputePtrOutput { + return i.ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(context.Background()) +} + +func (i *membershipPaymentConfigurationQueryComputePtrType) ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationQueryComputePtrOutput) +} + +type MembershipPaymentConfigurationQueryComputeOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationQueryComputeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfigurationQueryCompute)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationQueryComputeOutput) ToMembershipPaymentConfigurationQueryComputeOutput() MembershipPaymentConfigurationQueryComputeOutput { + return o +} + +func (o MembershipPaymentConfigurationQueryComputeOutput) ToMembershipPaymentConfigurationQueryComputeOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputeOutput { + return o +} + +func (o MembershipPaymentConfigurationQueryComputeOutput) ToMembershipPaymentConfigurationQueryComputePtrOutput() MembershipPaymentConfigurationQueryComputePtrOutput { + return o.ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(context.Background()) +} + +func (o MembershipPaymentConfigurationQueryComputeOutput) ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipPaymentConfigurationQueryCompute) *MembershipPaymentConfigurationQueryCompute { + return &v + }).(MembershipPaymentConfigurationQueryComputePtrOutput) +} + +// Indicates whether the collaboration member has accepted to pay for query compute costs. +func (o MembershipPaymentConfigurationQueryComputeOutput) IsResponsible() pulumi.BoolOutput { + return o.ApplyT(func(v MembershipPaymentConfigurationQueryCompute) bool { return v.IsResponsible }).(pulumi.BoolOutput) +} + +type MembershipPaymentConfigurationQueryComputePtrOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationQueryComputePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfigurationQueryCompute)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationQueryComputePtrOutput) ToMembershipPaymentConfigurationQueryComputePtrOutput() MembershipPaymentConfigurationQueryComputePtrOutput { + return o +} + +func (o MembershipPaymentConfigurationQueryComputePtrOutput) ToMembershipPaymentConfigurationQueryComputePtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationQueryComputePtrOutput { + return o +} + +func (o MembershipPaymentConfigurationQueryComputePtrOutput) Elem() MembershipPaymentConfigurationQueryComputeOutput { + return o.ApplyT(func(v *MembershipPaymentConfigurationQueryCompute) MembershipPaymentConfigurationQueryCompute { + if v != nil { + return *v + } + var ret MembershipPaymentConfigurationQueryCompute + return ret + }).(MembershipPaymentConfigurationQueryComputeOutput) +} + +// Indicates whether the collaboration member has accepted to pay for query compute costs. +func (o MembershipPaymentConfigurationQueryComputePtrOutput) IsResponsible() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *MembershipPaymentConfigurationQueryCompute) *bool { + if v == nil { + return nil + } + return &v.IsResponsible + }).(pulumi.BoolPtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*CollaborationDataEncryptionMetadataInput)(nil)).Elem(), CollaborationDataEncryptionMetadataArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationDataEncryptionMetadataPtrInput)(nil)).Elem(), CollaborationDataEncryptionMetadataArgs{}) @@ -458,10 +1194,30 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberArrayInput)(nil)).Elem(), CollaborationMemberArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReferenceInput)(nil)).Elem(), ConfiguredTableTableReferenceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReferencePtrInput)(nil)).Elem(), ConfiguredTableTableReferenceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationInput)(nil)).Elem(), MembershipDefaultResultConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationPtrInput)(nil)).Elem(), MembershipDefaultResultConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationInput)(nil)).Elem(), MembershipDefaultResultConfigurationOutputConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationPtrInput)(nil)).Elem(), MembershipDefaultResultConfigurationOutputConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationS3Input)(nil)).Elem(), MembershipDefaultResultConfigurationOutputConfigurationS3Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipDefaultResultConfigurationOutputConfigurationS3PtrInput)(nil)).Elem(), MembershipDefaultResultConfigurationOutputConfigurationS3Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationInput)(nil)).Elem(), MembershipPaymentConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationPtrInput)(nil)).Elem(), MembershipPaymentConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationQueryComputeInput)(nil)).Elem(), MembershipPaymentConfigurationQueryComputeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationQueryComputePtrInput)(nil)).Elem(), MembershipPaymentConfigurationQueryComputeArgs{}) pulumi.RegisterOutputType(CollaborationDataEncryptionMetadataOutput{}) pulumi.RegisterOutputType(CollaborationDataEncryptionMetadataPtrOutput{}) pulumi.RegisterOutputType(CollaborationMemberOutput{}) pulumi.RegisterOutputType(CollaborationMemberArrayOutput{}) pulumi.RegisterOutputType(ConfiguredTableTableReferenceOutput{}) pulumi.RegisterOutputType(ConfiguredTableTableReferencePtrOutput{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationOutput{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationPtrOutput{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationOutputConfigurationOutput{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationOutputConfigurationPtrOutput{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationOutputConfigurationS3Output{}) + pulumi.RegisterOutputType(MembershipDefaultResultConfigurationOutputConfigurationS3PtrOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationPtrOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationQueryComputeOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationQueryComputePtrOutput{}) } diff --git a/sdk/go/aws/cloudfront/pulumiTypes.go b/sdk/go/aws/cloudfront/pulumiTypes.go index da00ce7ce33..88350030bc9 100644 --- a/sdk/go/aws/cloudfront/pulumiTypes.go +++ b/sdk/go/aws/cloudfront/pulumiTypes.go @@ -2071,7 +2071,7 @@ type DistributionDefaultCacheBehavior struct { CachedMethods []string `pulumi:"cachedMethods"` // Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). Compress *bool `pulumi:"compress"` - // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. DefaultTtl *int `pulumi:"defaultTtl"` // Field level encryption configuration ID. FieldLevelEncryptionId *string `pulumi:"fieldLevelEncryptionId"` @@ -2079,11 +2079,13 @@ type DistributionDefaultCacheBehavior struct { ForwardedValues *DistributionDefaultCacheBehaviorForwardedValues `pulumi:"forwardedValues"` // A config block that triggers a cloudfront function with specific actions (maximum 2). FunctionAssociations []DistributionDefaultCacheBehaviorFunctionAssociation `pulumi:"functionAssociations"` + // A config block that sets the grpc config. + GrpcConfig *DistributionDefaultCacheBehaviorGrpcConfig `pulumi:"grpcConfig"` // A config block that triggers a lambda function with specific actions (maximum 4). LambdaFunctionAssociations []DistributionDefaultCacheBehaviorLambdaFunctionAssociation `pulumi:"lambdaFunctionAssociations"` - // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. MaxTtl *int `pulumi:"maxTtl"` - // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. MinTtl *int `pulumi:"minTtl"` // Unique identifier of the origin request policy that is attached to the behavior. OriginRequestPolicyId *string `pulumi:"originRequestPolicyId"` @@ -2123,7 +2125,7 @@ type DistributionDefaultCacheBehaviorArgs struct { CachedMethods pulumi.StringArrayInput `pulumi:"cachedMethods"` // Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). Compress pulumi.BoolPtrInput `pulumi:"compress"` - // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. DefaultTtl pulumi.IntPtrInput `pulumi:"defaultTtl"` // Field level encryption configuration ID. FieldLevelEncryptionId pulumi.StringPtrInput `pulumi:"fieldLevelEncryptionId"` @@ -2131,11 +2133,13 @@ type DistributionDefaultCacheBehaviorArgs struct { ForwardedValues DistributionDefaultCacheBehaviorForwardedValuesPtrInput `pulumi:"forwardedValues"` // A config block that triggers a cloudfront function with specific actions (maximum 2). FunctionAssociations DistributionDefaultCacheBehaviorFunctionAssociationArrayInput `pulumi:"functionAssociations"` + // A config block that sets the grpc config. + GrpcConfig DistributionDefaultCacheBehaviorGrpcConfigPtrInput `pulumi:"grpcConfig"` // A config block that triggers a lambda function with specific actions (maximum 4). LambdaFunctionAssociations DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayInput `pulumi:"lambdaFunctionAssociations"` - // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. MaxTtl pulumi.IntPtrInput `pulumi:"maxTtl"` - // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. MinTtl pulumi.IntPtrInput `pulumi:"minTtl"` // Unique identifier of the origin request policy that is attached to the behavior. OriginRequestPolicyId pulumi.StringPtrInput `pulumi:"originRequestPolicyId"` @@ -2252,7 +2256,7 @@ func (o DistributionDefaultCacheBehaviorOutput) Compress() pulumi.BoolPtrOutput return o.ApplyT(func(v DistributionDefaultCacheBehavior) *bool { return v.Compress }).(pulumi.BoolPtrOutput) } -// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. +// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorOutput) DefaultTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionDefaultCacheBehavior) *int { return v.DefaultTtl }).(pulumi.IntPtrOutput) } @@ -2276,6 +2280,13 @@ func (o DistributionDefaultCacheBehaviorOutput) FunctionAssociations() Distribut }).(DistributionDefaultCacheBehaviorFunctionAssociationArrayOutput) } +// A config block that sets the grpc config. +func (o DistributionDefaultCacheBehaviorOutput) GrpcConfig() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o.ApplyT(func(v DistributionDefaultCacheBehavior) *DistributionDefaultCacheBehaviorGrpcConfig { + return v.GrpcConfig + }).(DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) +} + // A config block that triggers a lambda function with specific actions (maximum 4). func (o DistributionDefaultCacheBehaviorOutput) LambdaFunctionAssociations() DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v DistributionDefaultCacheBehavior) []DistributionDefaultCacheBehaviorLambdaFunctionAssociation { @@ -2283,12 +2294,12 @@ func (o DistributionDefaultCacheBehaviorOutput) LambdaFunctionAssociations() Dis }).(DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput) } -// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. +// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorOutput) MaxTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionDefaultCacheBehavior) *int { return v.MaxTtl }).(pulumi.IntPtrOutput) } -// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. +// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorOutput) MinTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionDefaultCacheBehavior) *int { return v.MinTtl }).(pulumi.IntPtrOutput) } @@ -2397,7 +2408,7 @@ func (o DistributionDefaultCacheBehaviorPtrOutput) Compress() pulumi.BoolPtrOutp }).(pulumi.BoolPtrOutput) } -// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. +// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorPtrOutput) DefaultTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v *DistributionDefaultCacheBehavior) *int { if v == nil { @@ -2437,6 +2448,16 @@ func (o DistributionDefaultCacheBehaviorPtrOutput) FunctionAssociations() Distri }).(DistributionDefaultCacheBehaviorFunctionAssociationArrayOutput) } +// A config block that sets the grpc config. +func (o DistributionDefaultCacheBehaviorPtrOutput) GrpcConfig() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o.ApplyT(func(v *DistributionDefaultCacheBehavior) *DistributionDefaultCacheBehaviorGrpcConfig { + if v == nil { + return nil + } + return v.GrpcConfig + }).(DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) +} + // A config block that triggers a lambda function with specific actions (maximum 4). func (o DistributionDefaultCacheBehaviorPtrOutput) LambdaFunctionAssociations() DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v *DistributionDefaultCacheBehavior) []DistributionDefaultCacheBehaviorLambdaFunctionAssociation { @@ -2447,7 +2468,7 @@ func (o DistributionDefaultCacheBehaviorPtrOutput) LambdaFunctionAssociations() }).(DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput) } -// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. +// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorPtrOutput) MaxTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v *DistributionDefaultCacheBehavior) *int { if v == nil { @@ -2457,7 +2478,7 @@ func (o DistributionDefaultCacheBehaviorPtrOutput) MaxTtl() pulumi.IntPtrOutput }).(pulumi.IntPtrOutput) } -// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. +// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. func (o DistributionDefaultCacheBehaviorPtrOutput) MinTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v *DistributionDefaultCacheBehavior) *int { if v == nil { @@ -3005,6 +3026,143 @@ func (o DistributionDefaultCacheBehaviorFunctionAssociationArrayOutput) Index(i }).(DistributionDefaultCacheBehaviorFunctionAssociationOutput) } +type DistributionDefaultCacheBehaviorGrpcConfig struct { + // `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + Enabled *bool `pulumi:"enabled"` +} + +// DistributionDefaultCacheBehaviorGrpcConfigInput is an input type that accepts DistributionDefaultCacheBehaviorGrpcConfigArgs and DistributionDefaultCacheBehaviorGrpcConfigOutput values. +// You can construct a concrete instance of `DistributionDefaultCacheBehaviorGrpcConfigInput` via: +// +// DistributionDefaultCacheBehaviorGrpcConfigArgs{...} +type DistributionDefaultCacheBehaviorGrpcConfigInput interface { + pulumi.Input + + ToDistributionDefaultCacheBehaviorGrpcConfigOutput() DistributionDefaultCacheBehaviorGrpcConfigOutput + ToDistributionDefaultCacheBehaviorGrpcConfigOutputWithContext(context.Context) DistributionDefaultCacheBehaviorGrpcConfigOutput +} + +type DistributionDefaultCacheBehaviorGrpcConfigArgs struct { + // `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +} + +func (DistributionDefaultCacheBehaviorGrpcConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionDefaultCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (i DistributionDefaultCacheBehaviorGrpcConfigArgs) ToDistributionDefaultCacheBehaviorGrpcConfigOutput() DistributionDefaultCacheBehaviorGrpcConfigOutput { + return i.ToDistributionDefaultCacheBehaviorGrpcConfigOutputWithContext(context.Background()) +} + +func (i DistributionDefaultCacheBehaviorGrpcConfigArgs) ToDistributionDefaultCacheBehaviorGrpcConfigOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionDefaultCacheBehaviorGrpcConfigOutput) +} + +func (i DistributionDefaultCacheBehaviorGrpcConfigArgs) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutput() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return i.ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i DistributionDefaultCacheBehaviorGrpcConfigArgs) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionDefaultCacheBehaviorGrpcConfigOutput).ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(ctx) +} + +// DistributionDefaultCacheBehaviorGrpcConfigPtrInput is an input type that accepts DistributionDefaultCacheBehaviorGrpcConfigArgs, DistributionDefaultCacheBehaviorGrpcConfigPtr and DistributionDefaultCacheBehaviorGrpcConfigPtrOutput values. +// You can construct a concrete instance of `DistributionDefaultCacheBehaviorGrpcConfigPtrInput` via: +// +// DistributionDefaultCacheBehaviorGrpcConfigArgs{...} +// +// or: +// +// nil +type DistributionDefaultCacheBehaviorGrpcConfigPtrInput interface { + pulumi.Input + + ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutput() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput + ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(context.Context) DistributionDefaultCacheBehaviorGrpcConfigPtrOutput +} + +type distributionDefaultCacheBehaviorGrpcConfigPtrType DistributionDefaultCacheBehaviorGrpcConfigArgs + +func DistributionDefaultCacheBehaviorGrpcConfigPtr(v *DistributionDefaultCacheBehaviorGrpcConfigArgs) DistributionDefaultCacheBehaviorGrpcConfigPtrInput { + return (*distributionDefaultCacheBehaviorGrpcConfigPtrType)(v) +} + +func (*distributionDefaultCacheBehaviorGrpcConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionDefaultCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (i *distributionDefaultCacheBehaviorGrpcConfigPtrType) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutput() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return i.ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i *distributionDefaultCacheBehaviorGrpcConfigPtrType) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) +} + +type DistributionDefaultCacheBehaviorGrpcConfigOutput struct{ *pulumi.OutputState } + +func (DistributionDefaultCacheBehaviorGrpcConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionDefaultCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigOutput) ToDistributionDefaultCacheBehaviorGrpcConfigOutput() DistributionDefaultCacheBehaviorGrpcConfigOutput { + return o +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigOutput) ToDistributionDefaultCacheBehaviorGrpcConfigOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigOutput { + return o +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigOutput) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutput() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o.ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigOutput) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DistributionDefaultCacheBehaviorGrpcConfig) *DistributionDefaultCacheBehaviorGrpcConfig { + return &v + }).(DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) +} + +// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs +func (o DistributionDefaultCacheBehaviorGrpcConfigOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DistributionDefaultCacheBehaviorGrpcConfig) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type DistributionDefaultCacheBehaviorGrpcConfigPtrOutput struct{ *pulumi.OutputState } + +func (DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionDefaultCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutput() DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) ToDistributionDefaultCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionDefaultCacheBehaviorGrpcConfigPtrOutput { + return o +} + +func (o DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) Elem() DistributionDefaultCacheBehaviorGrpcConfigOutput { + return o.ApplyT(func(v *DistributionDefaultCacheBehaviorGrpcConfig) DistributionDefaultCacheBehaviorGrpcConfig { + if v != nil { + return *v + } + var ret DistributionDefaultCacheBehaviorGrpcConfig + return ret + }).(DistributionDefaultCacheBehaviorGrpcConfigOutput) +} + +// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs +func (o DistributionDefaultCacheBehaviorGrpcConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DistributionDefaultCacheBehaviorGrpcConfig) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + type DistributionDefaultCacheBehaviorLambdaFunctionAssociation struct { // Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. EventType string `pulumi:"eventType"` @@ -3121,7 +3279,7 @@ func (o DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput) In } type DistributionLoggingConfig struct { - // Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + // Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. Bucket string `pulumi:"bucket"` // Whether to include cookies in access logs (default: `false`). IncludeCookies *bool `pulumi:"includeCookies"` @@ -3141,7 +3299,7 @@ type DistributionLoggingConfigInput interface { } type DistributionLoggingConfigArgs struct { - // Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + // Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. Bucket pulumi.StringInput `pulumi:"bucket"` // Whether to include cookies in access logs (default: `false`). IncludeCookies pulumi.BoolPtrInput `pulumi:"includeCookies"` @@ -3226,7 +3384,7 @@ func (o DistributionLoggingConfigOutput) ToDistributionLoggingConfigPtrOutputWit }).(DistributionLoggingConfigPtrOutput) } -// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. +// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. func (o DistributionLoggingConfigOutput) Bucket() pulumi.StringOutput { return o.ApplyT(func(v DistributionLoggingConfig) string { return v.Bucket }).(pulumi.StringOutput) } @@ -3265,7 +3423,7 @@ func (o DistributionLoggingConfigPtrOutput) Elem() DistributionLoggingConfigOutp }).(DistributionLoggingConfigOutput) } -// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. +// Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. func (o DistributionLoggingConfigPtrOutput) Bucket() pulumi.StringPtrOutput { return o.ApplyT(func(v *DistributionLoggingConfig) *string { if v == nil { @@ -3304,7 +3462,7 @@ type DistributionOrderedCacheBehavior struct { CachedMethods []string `pulumi:"cachedMethods"` // Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). Compress *bool `pulumi:"compress"` - // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. DefaultTtl *int `pulumi:"defaultTtl"` // Field level encryption configuration ID. FieldLevelEncryptionId *string `pulumi:"fieldLevelEncryptionId"` @@ -3312,11 +3470,13 @@ type DistributionOrderedCacheBehavior struct { ForwardedValues *DistributionOrderedCacheBehaviorForwardedValues `pulumi:"forwardedValues"` // A config block that triggers a cloudfront function with specific actions (maximum 2). FunctionAssociations []DistributionOrderedCacheBehaviorFunctionAssociation `pulumi:"functionAssociations"` + // A config block that sets the grpc config. + GrpcConfig *DistributionOrderedCacheBehaviorGrpcConfig `pulumi:"grpcConfig"` // A config block that triggers a lambda function with specific actions (maximum 4). LambdaFunctionAssociations []DistributionOrderedCacheBehaviorLambdaFunctionAssociation `pulumi:"lambdaFunctionAssociations"` - // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. MaxTtl *int `pulumi:"maxTtl"` - // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. MinTtl *int `pulumi:"minTtl"` // Unique identifier of the origin request policy that is attached to the behavior. OriginRequestPolicyId *string `pulumi:"originRequestPolicyId"` @@ -3358,7 +3518,7 @@ type DistributionOrderedCacheBehaviorArgs struct { CachedMethods pulumi.StringArrayInput `pulumi:"cachedMethods"` // Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). Compress pulumi.BoolPtrInput `pulumi:"compress"` - // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + // Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. DefaultTtl pulumi.IntPtrInput `pulumi:"defaultTtl"` // Field level encryption configuration ID. FieldLevelEncryptionId pulumi.StringPtrInput `pulumi:"fieldLevelEncryptionId"` @@ -3366,11 +3526,13 @@ type DistributionOrderedCacheBehaviorArgs struct { ForwardedValues DistributionOrderedCacheBehaviorForwardedValuesPtrInput `pulumi:"forwardedValues"` // A config block that triggers a cloudfront function with specific actions (maximum 2). FunctionAssociations DistributionOrderedCacheBehaviorFunctionAssociationArrayInput `pulumi:"functionAssociations"` + // A config block that sets the grpc config. + GrpcConfig DistributionOrderedCacheBehaviorGrpcConfigPtrInput `pulumi:"grpcConfig"` // A config block that triggers a lambda function with specific actions (maximum 4). LambdaFunctionAssociations DistributionOrderedCacheBehaviorLambdaFunctionAssociationArrayInput `pulumi:"lambdaFunctionAssociations"` - // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + // Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. MaxTtl pulumi.IntPtrInput `pulumi:"maxTtl"` - // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + // Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. MinTtl pulumi.IntPtrInput `pulumi:"minTtl"` // Unique identifier of the origin request policy that is attached to the behavior. OriginRequestPolicyId pulumi.StringPtrInput `pulumi:"originRequestPolicyId"` @@ -3463,7 +3625,7 @@ func (o DistributionOrderedCacheBehaviorOutput) Compress() pulumi.BoolPtrOutput return o.ApplyT(func(v DistributionOrderedCacheBehavior) *bool { return v.Compress }).(pulumi.BoolPtrOutput) } -// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. +// Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. func (o DistributionOrderedCacheBehaviorOutput) DefaultTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionOrderedCacheBehavior) *int { return v.DefaultTtl }).(pulumi.IntPtrOutput) } @@ -3487,6 +3649,13 @@ func (o DistributionOrderedCacheBehaviorOutput) FunctionAssociations() Distribut }).(DistributionOrderedCacheBehaviorFunctionAssociationArrayOutput) } +// A config block that sets the grpc config. +func (o DistributionOrderedCacheBehaviorOutput) GrpcConfig() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return o.ApplyT(func(v DistributionOrderedCacheBehavior) *DistributionOrderedCacheBehaviorGrpcConfig { + return v.GrpcConfig + }).(DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) +} + // A config block that triggers a lambda function with specific actions (maximum 4). func (o DistributionOrderedCacheBehaviorOutput) LambdaFunctionAssociations() DistributionOrderedCacheBehaviorLambdaFunctionAssociationArrayOutput { return o.ApplyT(func(v DistributionOrderedCacheBehavior) []DistributionOrderedCacheBehaviorLambdaFunctionAssociation { @@ -3494,12 +3663,12 @@ func (o DistributionOrderedCacheBehaviorOutput) LambdaFunctionAssociations() Dis }).(DistributionOrderedCacheBehaviorLambdaFunctionAssociationArrayOutput) } -// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. +// Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. func (o DistributionOrderedCacheBehaviorOutput) MaxTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionOrderedCacheBehavior) *int { return v.MaxTtl }).(pulumi.IntPtrOutput) } -// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. +// Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. func (o DistributionOrderedCacheBehaviorOutput) MinTtl() pulumi.IntPtrOutput { return o.ApplyT(func(v DistributionOrderedCacheBehavior) *int { return v.MinTtl }).(pulumi.IntPtrOutput) } @@ -4027,6 +4196,143 @@ func (o DistributionOrderedCacheBehaviorFunctionAssociationArrayOutput) Index(i }).(DistributionOrderedCacheBehaviorFunctionAssociationOutput) } +type DistributionOrderedCacheBehaviorGrpcConfig struct { + // `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + Enabled *bool `pulumi:"enabled"` +} + +// DistributionOrderedCacheBehaviorGrpcConfigInput is an input type that accepts DistributionOrderedCacheBehaviorGrpcConfigArgs and DistributionOrderedCacheBehaviorGrpcConfigOutput values. +// You can construct a concrete instance of `DistributionOrderedCacheBehaviorGrpcConfigInput` via: +// +// DistributionOrderedCacheBehaviorGrpcConfigArgs{...} +type DistributionOrderedCacheBehaviorGrpcConfigInput interface { + pulumi.Input + + ToDistributionOrderedCacheBehaviorGrpcConfigOutput() DistributionOrderedCacheBehaviorGrpcConfigOutput + ToDistributionOrderedCacheBehaviorGrpcConfigOutputWithContext(context.Context) DistributionOrderedCacheBehaviorGrpcConfigOutput +} + +type DistributionOrderedCacheBehaviorGrpcConfigArgs struct { + // `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +} + +func (DistributionOrderedCacheBehaviorGrpcConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionOrderedCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (i DistributionOrderedCacheBehaviorGrpcConfigArgs) ToDistributionOrderedCacheBehaviorGrpcConfigOutput() DistributionOrderedCacheBehaviorGrpcConfigOutput { + return i.ToDistributionOrderedCacheBehaviorGrpcConfigOutputWithContext(context.Background()) +} + +func (i DistributionOrderedCacheBehaviorGrpcConfigArgs) ToDistributionOrderedCacheBehaviorGrpcConfigOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionOrderedCacheBehaviorGrpcConfigOutput) +} + +func (i DistributionOrderedCacheBehaviorGrpcConfigArgs) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutput() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return i.ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i DistributionOrderedCacheBehaviorGrpcConfigArgs) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionOrderedCacheBehaviorGrpcConfigOutput).ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(ctx) +} + +// DistributionOrderedCacheBehaviorGrpcConfigPtrInput is an input type that accepts DistributionOrderedCacheBehaviorGrpcConfigArgs, DistributionOrderedCacheBehaviorGrpcConfigPtr and DistributionOrderedCacheBehaviorGrpcConfigPtrOutput values. +// You can construct a concrete instance of `DistributionOrderedCacheBehaviorGrpcConfigPtrInput` via: +// +// DistributionOrderedCacheBehaviorGrpcConfigArgs{...} +// +// or: +// +// nil +type DistributionOrderedCacheBehaviorGrpcConfigPtrInput interface { + pulumi.Input + + ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutput() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput + ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(context.Context) DistributionOrderedCacheBehaviorGrpcConfigPtrOutput +} + +type distributionOrderedCacheBehaviorGrpcConfigPtrType DistributionOrderedCacheBehaviorGrpcConfigArgs + +func DistributionOrderedCacheBehaviorGrpcConfigPtr(v *DistributionOrderedCacheBehaviorGrpcConfigArgs) DistributionOrderedCacheBehaviorGrpcConfigPtrInput { + return (*distributionOrderedCacheBehaviorGrpcConfigPtrType)(v) +} + +func (*distributionOrderedCacheBehaviorGrpcConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionOrderedCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (i *distributionOrderedCacheBehaviorGrpcConfigPtrType) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutput() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return i.ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (i *distributionOrderedCacheBehaviorGrpcConfigPtrType) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) +} + +type DistributionOrderedCacheBehaviorGrpcConfigOutput struct{ *pulumi.OutputState } + +func (DistributionOrderedCacheBehaviorGrpcConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DistributionOrderedCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigOutput) ToDistributionOrderedCacheBehaviorGrpcConfigOutput() DistributionOrderedCacheBehaviorGrpcConfigOutput { + return o +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigOutput) ToDistributionOrderedCacheBehaviorGrpcConfigOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigOutput { + return o +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigOutput) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutput() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return o.ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(context.Background()) +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigOutput) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DistributionOrderedCacheBehaviorGrpcConfig) *DistributionOrderedCacheBehaviorGrpcConfig { + return &v + }).(DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) +} + +// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs +func (o DistributionOrderedCacheBehaviorGrpcConfigOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DistributionOrderedCacheBehaviorGrpcConfig) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type DistributionOrderedCacheBehaviorGrpcConfigPtrOutput struct{ *pulumi.OutputState } + +func (DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DistributionOrderedCacheBehaviorGrpcConfig)(nil)).Elem() +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutput() DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return o +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) ToDistributionOrderedCacheBehaviorGrpcConfigPtrOutputWithContext(ctx context.Context) DistributionOrderedCacheBehaviorGrpcConfigPtrOutput { + return o +} + +func (o DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) Elem() DistributionOrderedCacheBehaviorGrpcConfigOutput { + return o.ApplyT(func(v *DistributionOrderedCacheBehaviorGrpcConfig) DistributionOrderedCacheBehaviorGrpcConfig { + if v != nil { + return *v + } + var ret DistributionOrderedCacheBehaviorGrpcConfig + return ret + }).(DistributionOrderedCacheBehaviorGrpcConfigOutput) +} + +// `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs +func (o DistributionOrderedCacheBehaviorGrpcConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DistributionOrderedCacheBehaviorGrpcConfig) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + type DistributionOrderedCacheBehaviorLambdaFunctionAssociation struct { // Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. EventType string `pulumi:"eventType"` @@ -15677,6 +15983,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorForwardedValuesCookiesPtrInput)(nil)).Elem(), DistributionDefaultCacheBehaviorForwardedValuesCookiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorFunctionAssociationInput)(nil)).Elem(), DistributionDefaultCacheBehaviorFunctionAssociationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorFunctionAssociationArrayInput)(nil)).Elem(), DistributionDefaultCacheBehaviorFunctionAssociationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorGrpcConfigInput)(nil)).Elem(), DistributionDefaultCacheBehaviorGrpcConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorGrpcConfigPtrInput)(nil)).Elem(), DistributionDefaultCacheBehaviorGrpcConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorLambdaFunctionAssociationInput)(nil)).Elem(), DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayInput)(nil)).Elem(), DistributionDefaultCacheBehaviorLambdaFunctionAssociationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionLoggingConfigInput)(nil)).Elem(), DistributionLoggingConfigArgs{}) @@ -15689,6 +15997,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorForwardedValuesCookiesPtrInput)(nil)).Elem(), DistributionOrderedCacheBehaviorForwardedValuesCookiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorFunctionAssociationInput)(nil)).Elem(), DistributionOrderedCacheBehaviorFunctionAssociationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorFunctionAssociationArrayInput)(nil)).Elem(), DistributionOrderedCacheBehaviorFunctionAssociationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorGrpcConfigInput)(nil)).Elem(), DistributionOrderedCacheBehaviorGrpcConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorGrpcConfigPtrInput)(nil)).Elem(), DistributionOrderedCacheBehaviorGrpcConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorLambdaFunctionAssociationInput)(nil)).Elem(), DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionOrderedCacheBehaviorLambdaFunctionAssociationArrayInput)(nil)).Elem(), DistributionOrderedCacheBehaviorLambdaFunctionAssociationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DistributionOriginInput)(nil)).Elem(), DistributionOriginArgs{}) @@ -15899,6 +16209,8 @@ func init() { pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorForwardedValuesCookiesPtrOutput{}) pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorFunctionAssociationOutput{}) pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorFunctionAssociationArrayOutput{}) + pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorGrpcConfigOutput{}) + pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorGrpcConfigPtrOutput{}) pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorLambdaFunctionAssociationOutput{}) pulumi.RegisterOutputType(DistributionDefaultCacheBehaviorLambdaFunctionAssociationArrayOutput{}) pulumi.RegisterOutputType(DistributionLoggingConfigOutput{}) @@ -15911,6 +16223,8 @@ func init() { pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorForwardedValuesCookiesPtrOutput{}) pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorFunctionAssociationOutput{}) pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorFunctionAssociationArrayOutput{}) + pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorGrpcConfigOutput{}) + pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorGrpcConfigPtrOutput{}) pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorLambdaFunctionAssociationOutput{}) pulumi.RegisterOutputType(DistributionOrderedCacheBehaviorLambdaFunctionAssociationArrayOutput{}) pulumi.RegisterOutputType(DistributionOriginOutput{}) diff --git a/sdk/go/aws/cloudfront/vpcOrigin.go b/sdk/go/aws/cloudfront/vpcOrigin.go index aa02af71c43..8cc80ba7065 100644 --- a/sdk/go/aws/cloudfront/vpcOrigin.go +++ b/sdk/go/aws/cloudfront/vpcOrigin.go @@ -66,7 +66,7 @@ import ( // // to = aws_cloudfront_vpc_origin.origin // -// id = vo_JQEa410sssUFoY6wMkx69j +// id = "vo_JQEa410sssUFoY6wMkx69j" // // } // diff --git a/sdk/go/aws/cloudwatch/getEventBuses.go b/sdk/go/aws/cloudwatch/getEventBuses.go new file mode 100644 index 00000000000..8b808601131 --- /dev/null +++ b/sdk/go/aws/cloudwatch/getEventBuses.go @@ -0,0 +1,118 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Data source for managing an AWS EventBridge Event Buses. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cloudwatch.GetEventBuses(ctx, &cloudwatch.GetEventBusesArgs{ +// NamePrefix: pulumi.StringRef("test"), +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetEventBuses(ctx *pulumi.Context, args *GetEventBusesArgs, opts ...pulumi.InvokeOption) (*GetEventBusesResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetEventBusesResult + err := ctx.Invoke("aws:cloudwatch/getEventBuses:getEventBuses", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getEventBuses. +type GetEventBusesArgs struct { + // Specifying this limits the results to only those event buses with names that start with the specified prefix. + NamePrefix *string `pulumi:"namePrefix"` +} + +// A collection of values returned by getEventBuses. +type GetEventBusesResult struct { + // This list of event buses. + EventBuses []GetEventBusesEventBus `pulumi:"eventBuses"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + NamePrefix *string `pulumi:"namePrefix"` +} + +func GetEventBusesOutput(ctx *pulumi.Context, args GetEventBusesOutputArgs, opts ...pulumi.InvokeOption) GetEventBusesResultOutput { + return pulumi.ToOutputWithContext(ctx.Context(), args). + ApplyT(func(v interface{}) (GetEventBusesResultOutput, error) { + args := v.(GetEventBusesArgs) + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws:cloudwatch/getEventBuses:getEventBuses", args, GetEventBusesResultOutput{}, options).(GetEventBusesResultOutput), nil + }).(GetEventBusesResultOutput) +} + +// A collection of arguments for invoking getEventBuses. +type GetEventBusesOutputArgs struct { + // Specifying this limits the results to only those event buses with names that start with the specified prefix. + NamePrefix pulumi.StringPtrInput `pulumi:"namePrefix"` +} + +func (GetEventBusesOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetEventBusesArgs)(nil)).Elem() +} + +// A collection of values returned by getEventBuses. +type GetEventBusesResultOutput struct{ *pulumi.OutputState } + +func (GetEventBusesResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetEventBusesResult)(nil)).Elem() +} + +func (o GetEventBusesResultOutput) ToGetEventBusesResultOutput() GetEventBusesResultOutput { + return o +} + +func (o GetEventBusesResultOutput) ToGetEventBusesResultOutputWithContext(ctx context.Context) GetEventBusesResultOutput { + return o +} + +// This list of event buses. +func (o GetEventBusesResultOutput) EventBuses() GetEventBusesEventBusArrayOutput { + return o.ApplyT(func(v GetEventBusesResult) []GetEventBusesEventBus { return v.EventBuses }).(GetEventBusesEventBusArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetEventBusesResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesResult) string { return v.Id }).(pulumi.StringOutput) +} + +func (o GetEventBusesResultOutput) NamePrefix() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetEventBusesResult) *string { return v.NamePrefix }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(GetEventBusesResultOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/init.go b/sdk/go/aws/cloudwatch/init.go index abe7f19d127..ccfa3384239 100644 --- a/sdk/go/aws/cloudwatch/init.go +++ b/sdk/go/aws/cloudwatch/init.go @@ -51,12 +51,22 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &LogAnomalyDetector{} case "aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy": r = &LogDataProtectionPolicy{} + case "aws:cloudwatch/logDelivery:LogDelivery": + r = &LogDelivery{} + case "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination": + r = &LogDeliveryDestination{} + case "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy": + r = &LogDeliveryDestinationPolicy{} + case "aws:cloudwatch/logDeliverySource:LogDeliverySource": + r = &LogDeliverySource{} case "aws:cloudwatch/logDestination:LogDestination": r = &LogDestination{} case "aws:cloudwatch/logDestinationPolicy:LogDestinationPolicy": r = &LogDestinationPolicy{} case "aws:cloudwatch/logGroup:LogGroup": r = &LogGroup{} + case "aws:cloudwatch/logIndexPolicy:LogIndexPolicy": + r = &LogIndexPolicy{} case "aws:cloudwatch/logMetricFilter:LogMetricFilter": r = &LogMetricFilter{} case "aws:cloudwatch/logResourcePolicy:LogResourcePolicy": @@ -159,6 +169,26 @@ func init() { "cloudwatch/logDataProtectionPolicy", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "cloudwatch/logDelivery", + &module{version}, + ) + pulumi.RegisterResourceModule( + "aws", + "cloudwatch/logDeliveryDestination", + &module{version}, + ) + pulumi.RegisterResourceModule( + "aws", + "cloudwatch/logDeliveryDestinationPolicy", + &module{version}, + ) + pulumi.RegisterResourceModule( + "aws", + "cloudwatch/logDeliverySource", + &module{version}, + ) pulumi.RegisterResourceModule( "aws", "cloudwatch/logDestination", @@ -174,6 +204,11 @@ func init() { "cloudwatch/logGroup", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "cloudwatch/logIndexPolicy", + &module{version}, + ) pulumi.RegisterResourceModule( "aws", "cloudwatch/logMetricFilter", diff --git a/sdk/go/aws/cloudwatch/logDelivery.go b/sdk/go/aws/cloudwatch/logDelivery.go new file mode 100644 index 00000000000..2cbba178d6b --- /dev/null +++ b/sdk/go/aws/cloudwatch/logDelivery.go @@ -0,0 +1,369 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `cloudwatch.LogDeliverySource` and an `cloudwatch.LogDeliveryDestination`. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cloudwatch.NewLogDelivery(ctx, "example", &cloudwatch.LogDeliveryArgs{ +// DeliverySourceName: pulumi.Any(exampleAwsCloudwatchLogDeliverySource.Name), +// DeliveryDestinationArn: pulumi.Any(exampleAwsCloudwatchLogDeliveryDestination.Arn), +// FieldDelimiter: pulumi.String(","), +// RecordFields: pulumi.StringArray{ +// pulumi.String("event_timestamp"), +// pulumi.String("event"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: +// +// ```sh +// $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n +// ``` +type LogDelivery struct { + pulumi.CustomResourceState + + // The Amazon Resource Name (ARN) of the delivery. + Arn pulumi.StringOutput `pulumi:"arn"` + // The ARN of the delivery destination to use for this delivery. + DeliveryDestinationArn pulumi.StringOutput `pulumi:"deliveryDestinationArn"` + // The name of the delivery source to use for this delivery. + DeliverySourceName pulumi.StringOutput `pulumi:"deliverySourceName"` + // The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + FieldDelimiter pulumi.StringPtrOutput `pulumi:"fieldDelimiter"` + // The list of record fields to be delivered to the destination, in order. + RecordFields pulumi.StringArrayOutput `pulumi:"recordFields"` + // Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + S3DeliveryConfigurations LogDeliveryS3DeliveryConfigurationArrayOutput `pulumi:"s3DeliveryConfigurations"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` +} + +// NewLogDelivery registers a new resource with the given unique name, arguments, and options. +func NewLogDelivery(ctx *pulumi.Context, + name string, args *LogDeliveryArgs, opts ...pulumi.ResourceOption) (*LogDelivery, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.DeliveryDestinationArn == nil { + return nil, errors.New("invalid value for required argument 'DeliveryDestinationArn'") + } + if args.DeliverySourceName == nil { + return nil, errors.New("invalid value for required argument 'DeliverySourceName'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource LogDelivery + err := ctx.RegisterResource("aws:cloudwatch/logDelivery:LogDelivery", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLogDelivery gets an existing LogDelivery 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 GetLogDelivery(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LogDeliveryState, opts ...pulumi.ResourceOption) (*LogDelivery, error) { + var resource LogDelivery + err := ctx.ReadResource("aws:cloudwatch/logDelivery:LogDelivery", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LogDelivery resources. +type logDeliveryState struct { + // The Amazon Resource Name (ARN) of the delivery. + Arn *string `pulumi:"arn"` + // The ARN of the delivery destination to use for this delivery. + DeliveryDestinationArn *string `pulumi:"deliveryDestinationArn"` + // The name of the delivery source to use for this delivery. + DeliverySourceName *string `pulumi:"deliverySourceName"` + // The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + FieldDelimiter *string `pulumi:"fieldDelimiter"` + // The list of record fields to be delivered to the destination, in order. + RecordFields []string `pulumi:"recordFields"` + // Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + S3DeliveryConfigurations []LogDeliveryS3DeliveryConfiguration `pulumi:"s3DeliveryConfigurations"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll map[string]string `pulumi:"tagsAll"` +} + +type LogDeliveryState struct { + // The Amazon Resource Name (ARN) of the delivery. + Arn pulumi.StringPtrInput + // The ARN of the delivery destination to use for this delivery. + DeliveryDestinationArn pulumi.StringPtrInput + // The name of the delivery source to use for this delivery. + DeliverySourceName pulumi.StringPtrInput + // The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + FieldDelimiter pulumi.StringPtrInput + // The list of record fields to be delivered to the destination, in order. + RecordFields pulumi.StringArrayInput + // Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + S3DeliveryConfigurations LogDeliveryS3DeliveryConfigurationArrayInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapInput +} + +func (LogDeliveryState) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryState)(nil)).Elem() +} + +type logDeliveryArgs struct { + // The ARN of the delivery destination to use for this delivery. + DeliveryDestinationArn string `pulumi:"deliveryDestinationArn"` + // The name of the delivery source to use for this delivery. + DeliverySourceName string `pulumi:"deliverySourceName"` + // The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + FieldDelimiter *string `pulumi:"fieldDelimiter"` + // The list of record fields to be delivered to the destination, in order. + RecordFields []string `pulumi:"recordFields"` + // Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + S3DeliveryConfigurations []LogDeliveryS3DeliveryConfiguration `pulumi:"s3DeliveryConfigurations"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a LogDelivery resource. +type LogDeliveryArgs struct { + // The ARN of the delivery destination to use for this delivery. + DeliveryDestinationArn pulumi.StringInput + // The name of the delivery source to use for this delivery. + DeliverySourceName pulumi.StringInput + // The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + FieldDelimiter pulumi.StringPtrInput + // The list of record fields to be delivered to the destination, in order. + RecordFields pulumi.StringArrayInput + // Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + S3DeliveryConfigurations LogDeliveryS3DeliveryConfigurationArrayInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput +} + +func (LogDeliveryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryArgs)(nil)).Elem() +} + +type LogDeliveryInput interface { + pulumi.Input + + ToLogDeliveryOutput() LogDeliveryOutput + ToLogDeliveryOutputWithContext(ctx context.Context) LogDeliveryOutput +} + +func (*LogDelivery) ElementType() reflect.Type { + return reflect.TypeOf((**LogDelivery)(nil)).Elem() +} + +func (i *LogDelivery) ToLogDeliveryOutput() LogDeliveryOutput { + return i.ToLogDeliveryOutputWithContext(context.Background()) +} + +func (i *LogDelivery) ToLogDeliveryOutputWithContext(ctx context.Context) LogDeliveryOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryOutput) +} + +// LogDeliveryArrayInput is an input type that accepts LogDeliveryArray and LogDeliveryArrayOutput values. +// You can construct a concrete instance of `LogDeliveryArrayInput` via: +// +// LogDeliveryArray{ LogDeliveryArgs{...} } +type LogDeliveryArrayInput interface { + pulumi.Input + + ToLogDeliveryArrayOutput() LogDeliveryArrayOutput + ToLogDeliveryArrayOutputWithContext(context.Context) LogDeliveryArrayOutput +} + +type LogDeliveryArray []LogDeliveryInput + +func (LogDeliveryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDelivery)(nil)).Elem() +} + +func (i LogDeliveryArray) ToLogDeliveryArrayOutput() LogDeliveryArrayOutput { + return i.ToLogDeliveryArrayOutputWithContext(context.Background()) +} + +func (i LogDeliveryArray) ToLogDeliveryArrayOutputWithContext(ctx context.Context) LogDeliveryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryArrayOutput) +} + +// LogDeliveryMapInput is an input type that accepts LogDeliveryMap and LogDeliveryMapOutput values. +// You can construct a concrete instance of `LogDeliveryMapInput` via: +// +// LogDeliveryMap{ "key": LogDeliveryArgs{...} } +type LogDeliveryMapInput interface { + pulumi.Input + + ToLogDeliveryMapOutput() LogDeliveryMapOutput + ToLogDeliveryMapOutputWithContext(context.Context) LogDeliveryMapOutput +} + +type LogDeliveryMap map[string]LogDeliveryInput + +func (LogDeliveryMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDelivery)(nil)).Elem() +} + +func (i LogDeliveryMap) ToLogDeliveryMapOutput() LogDeliveryMapOutput { + return i.ToLogDeliveryMapOutputWithContext(context.Background()) +} + +func (i LogDeliveryMap) ToLogDeliveryMapOutputWithContext(ctx context.Context) LogDeliveryMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryMapOutput) +} + +type LogDeliveryOutput struct{ *pulumi.OutputState } + +func (LogDeliveryOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogDelivery)(nil)).Elem() +} + +func (o LogDeliveryOutput) ToLogDeliveryOutput() LogDeliveryOutput { + return o +} + +func (o LogDeliveryOutput) ToLogDeliveryOutputWithContext(ctx context.Context) LogDeliveryOutput { + return o +} + +// The Amazon Resource Name (ARN) of the delivery. +func (o LogDeliveryOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The ARN of the delivery destination to use for this delivery. +func (o LogDeliveryOutput) DeliveryDestinationArn() pulumi.StringOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringOutput { return v.DeliveryDestinationArn }).(pulumi.StringOutput) +} + +// The name of the delivery source to use for this delivery. +func (o LogDeliveryOutput) DeliverySourceName() pulumi.StringOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringOutput { return v.DeliverySourceName }).(pulumi.StringOutput) +} + +// The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. +func (o LogDeliveryOutput) FieldDelimiter() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringPtrOutput { return v.FieldDelimiter }).(pulumi.StringPtrOutput) +} + +// The list of record fields to be delivered to the destination, in order. +func (o LogDeliveryOutput) RecordFields() pulumi.StringArrayOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringArrayOutput { return v.RecordFields }).(pulumi.StringArrayOutput) +} + +// Parameters that are valid only when the delivery's delivery destination is an S3 bucket. +func (o LogDeliveryOutput) S3DeliveryConfigurations() LogDeliveryS3DeliveryConfigurationArrayOutput { + return o.ApplyT(func(v *LogDelivery) LogDeliveryS3DeliveryConfigurationArrayOutput { return v.S3DeliveryConfigurations }).(LogDeliveryS3DeliveryConfigurationArrayOutput) +} + +// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o LogDeliveryOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. +// +// Deprecated: Please use `tags` instead. +func (o LogDeliveryOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDelivery) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +type LogDeliveryArrayOutput struct{ *pulumi.OutputState } + +func (LogDeliveryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDelivery)(nil)).Elem() +} + +func (o LogDeliveryArrayOutput) ToLogDeliveryArrayOutput() LogDeliveryArrayOutput { + return o +} + +func (o LogDeliveryArrayOutput) ToLogDeliveryArrayOutputWithContext(ctx context.Context) LogDeliveryArrayOutput { + return o +} + +func (o LogDeliveryArrayOutput) Index(i pulumi.IntInput) LogDeliveryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LogDelivery { + return vs[0].([]*LogDelivery)[vs[1].(int)] + }).(LogDeliveryOutput) +} + +type LogDeliveryMapOutput struct{ *pulumi.OutputState } + +func (LogDeliveryMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDelivery)(nil)).Elem() +} + +func (o LogDeliveryMapOutput) ToLogDeliveryMapOutput() LogDeliveryMapOutput { + return o +} + +func (o LogDeliveryMapOutput) ToLogDeliveryMapOutputWithContext(ctx context.Context) LogDeliveryMapOutput { + return o +} + +func (o LogDeliveryMapOutput) MapIndex(k pulumi.StringInput) LogDeliveryOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LogDelivery { + return vs[0].(map[string]*LogDelivery)[vs[1].(string)] + }).(LogDeliveryOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryInput)(nil)).Elem(), &LogDelivery{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryArrayInput)(nil)).Elem(), LogDeliveryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryMapInput)(nil)).Elem(), LogDeliveryMap{}) + pulumi.RegisterOutputType(LogDeliveryOutput{}) + pulumi.RegisterOutputType(LogDeliveryArrayOutput{}) + pulumi.RegisterOutputType(LogDeliveryMapOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/logDeliveryDestination.go b/sdk/go/aws/cloudwatch/logDeliveryDestination.go new file mode 100644 index 00000000000..d7029d2bef2 --- /dev/null +++ b/sdk/go/aws/cloudwatch/logDeliveryDestination.go @@ -0,0 +1,342 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS CloudWatch Logs Delivery Destination. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cloudwatch.NewLogDeliveryDestination(ctx, "example", &cloudwatch.LogDeliveryDestinationArgs{ +// Name: pulumi.String("example"), +// DeliveryDestinationConfiguration: &cloudwatch.LogDeliveryDestinationDeliveryDestinationConfigurationArgs{ +// DestinationResourceArn: pulumi.Any(exampleAwsCloudwatchLogGroup.Arn), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: +// +// ```sh +// $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example +// ``` +type LogDeliveryDestination struct { + pulumi.CustomResourceState + + // The Amazon Resource Name (ARN) of the delivery destination. + Arn pulumi.StringOutput `pulumi:"arn"` + // The AWS resource that will receive the logs. + DeliveryDestinationConfiguration LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput `pulumi:"deliveryDestinationConfiguration"` + // Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + DeliveryDestinationType pulumi.StringOutput `pulumi:"deliveryDestinationType"` + // The name for this delivery destination. + Name pulumi.StringOutput `pulumi:"name"` + // The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + OutputFormat pulumi.StringPtrOutput `pulumi:"outputFormat"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` +} + +// NewLogDeliveryDestination registers a new resource with the given unique name, arguments, and options. +func NewLogDeliveryDestination(ctx *pulumi.Context, + name string, args *LogDeliveryDestinationArgs, opts ...pulumi.ResourceOption) (*LogDeliveryDestination, error) { + if args == nil { + args = &LogDeliveryDestinationArgs{} + } + + opts = internal.PkgResourceDefaultOpts(opts) + var resource LogDeliveryDestination + err := ctx.RegisterResource("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLogDeliveryDestination gets an existing LogDeliveryDestination 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 GetLogDeliveryDestination(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LogDeliveryDestinationState, opts ...pulumi.ResourceOption) (*LogDeliveryDestination, error) { + var resource LogDeliveryDestination + err := ctx.ReadResource("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LogDeliveryDestination resources. +type logDeliveryDestinationState struct { + // The Amazon Resource Name (ARN) of the delivery destination. + Arn *string `pulumi:"arn"` + // The AWS resource that will receive the logs. + DeliveryDestinationConfiguration *LogDeliveryDestinationDeliveryDestinationConfiguration `pulumi:"deliveryDestinationConfiguration"` + // Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + DeliveryDestinationType *string `pulumi:"deliveryDestinationType"` + // The name for this delivery destination. + Name *string `pulumi:"name"` + // The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + OutputFormat *string `pulumi:"outputFormat"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll map[string]string `pulumi:"tagsAll"` +} + +type LogDeliveryDestinationState struct { + // The Amazon Resource Name (ARN) of the delivery destination. + Arn pulumi.StringPtrInput + // The AWS resource that will receive the logs. + DeliveryDestinationConfiguration LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput + // Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + DeliveryDestinationType pulumi.StringPtrInput + // The name for this delivery destination. + Name pulumi.StringPtrInput + // The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + OutputFormat pulumi.StringPtrInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapInput +} + +func (LogDeliveryDestinationState) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryDestinationState)(nil)).Elem() +} + +type logDeliveryDestinationArgs struct { + // The AWS resource that will receive the logs. + DeliveryDestinationConfiguration *LogDeliveryDestinationDeliveryDestinationConfiguration `pulumi:"deliveryDestinationConfiguration"` + // The name for this delivery destination. + Name *string `pulumi:"name"` + // The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + OutputFormat *string `pulumi:"outputFormat"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a LogDeliveryDestination resource. +type LogDeliveryDestinationArgs struct { + // The AWS resource that will receive the logs. + DeliveryDestinationConfiguration LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput + // The name for this delivery destination. + Name pulumi.StringPtrInput + // The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + OutputFormat pulumi.StringPtrInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput +} + +func (LogDeliveryDestinationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryDestinationArgs)(nil)).Elem() +} + +type LogDeliveryDestinationInput interface { + pulumi.Input + + ToLogDeliveryDestinationOutput() LogDeliveryDestinationOutput + ToLogDeliveryDestinationOutputWithContext(ctx context.Context) LogDeliveryDestinationOutput +} + +func (*LogDeliveryDestination) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestination)(nil)).Elem() +} + +func (i *LogDeliveryDestination) ToLogDeliveryDestinationOutput() LogDeliveryDestinationOutput { + return i.ToLogDeliveryDestinationOutputWithContext(context.Background()) +} + +func (i *LogDeliveryDestination) ToLogDeliveryDestinationOutputWithContext(ctx context.Context) LogDeliveryDestinationOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationOutput) +} + +// LogDeliveryDestinationArrayInput is an input type that accepts LogDeliveryDestinationArray and LogDeliveryDestinationArrayOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationArrayInput` via: +// +// LogDeliveryDestinationArray{ LogDeliveryDestinationArgs{...} } +type LogDeliveryDestinationArrayInput interface { + pulumi.Input + + ToLogDeliveryDestinationArrayOutput() LogDeliveryDestinationArrayOutput + ToLogDeliveryDestinationArrayOutputWithContext(context.Context) LogDeliveryDestinationArrayOutput +} + +type LogDeliveryDestinationArray []LogDeliveryDestinationInput + +func (LogDeliveryDestinationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliveryDestination)(nil)).Elem() +} + +func (i LogDeliveryDestinationArray) ToLogDeliveryDestinationArrayOutput() LogDeliveryDestinationArrayOutput { + return i.ToLogDeliveryDestinationArrayOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationArray) ToLogDeliveryDestinationArrayOutputWithContext(ctx context.Context) LogDeliveryDestinationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationArrayOutput) +} + +// LogDeliveryDestinationMapInput is an input type that accepts LogDeliveryDestinationMap and LogDeliveryDestinationMapOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationMapInput` via: +// +// LogDeliveryDestinationMap{ "key": LogDeliveryDestinationArgs{...} } +type LogDeliveryDestinationMapInput interface { + pulumi.Input + + ToLogDeliveryDestinationMapOutput() LogDeliveryDestinationMapOutput + ToLogDeliveryDestinationMapOutputWithContext(context.Context) LogDeliveryDestinationMapOutput +} + +type LogDeliveryDestinationMap map[string]LogDeliveryDestinationInput + +func (LogDeliveryDestinationMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliveryDestination)(nil)).Elem() +} + +func (i LogDeliveryDestinationMap) ToLogDeliveryDestinationMapOutput() LogDeliveryDestinationMapOutput { + return i.ToLogDeliveryDestinationMapOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationMap) ToLogDeliveryDestinationMapOutputWithContext(ctx context.Context) LogDeliveryDestinationMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationMapOutput) +} + +type LogDeliveryDestinationOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestination)(nil)).Elem() +} + +func (o LogDeliveryDestinationOutput) ToLogDeliveryDestinationOutput() LogDeliveryDestinationOutput { + return o +} + +func (o LogDeliveryDestinationOutput) ToLogDeliveryDestinationOutputWithContext(ctx context.Context) LogDeliveryDestinationOutput { + return o +} + +// The Amazon Resource Name (ARN) of the delivery destination. +func (o LogDeliveryDestinationOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The AWS resource that will receive the logs. +func (o LogDeliveryDestinationOutput) DeliveryDestinationConfiguration() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return o.ApplyT(func(v *LogDeliveryDestination) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return v.DeliveryDestinationConfiguration + }).(LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) +} + +// Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. +func (o LogDeliveryDestinationOutput) DeliveryDestinationType() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringOutput { return v.DeliveryDestinationType }).(pulumi.StringOutput) +} + +// The name for this delivery destination. +func (o LogDeliveryDestinationOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. +func (o LogDeliveryDestinationOutput) OutputFormat() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringPtrOutput { return v.OutputFormat }).(pulumi.StringPtrOutput) +} + +// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o LogDeliveryDestinationOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. +// +// Deprecated: Please use `tags` instead. +func (o LogDeliveryDestinationOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDeliveryDestination) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +type LogDeliveryDestinationArrayOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliveryDestination)(nil)).Elem() +} + +func (o LogDeliveryDestinationArrayOutput) ToLogDeliveryDestinationArrayOutput() LogDeliveryDestinationArrayOutput { + return o +} + +func (o LogDeliveryDestinationArrayOutput) ToLogDeliveryDestinationArrayOutputWithContext(ctx context.Context) LogDeliveryDestinationArrayOutput { + return o +} + +func (o LogDeliveryDestinationArrayOutput) Index(i pulumi.IntInput) LogDeliveryDestinationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LogDeliveryDestination { + return vs[0].([]*LogDeliveryDestination)[vs[1].(int)] + }).(LogDeliveryDestinationOutput) +} + +type LogDeliveryDestinationMapOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliveryDestination)(nil)).Elem() +} + +func (o LogDeliveryDestinationMapOutput) ToLogDeliveryDestinationMapOutput() LogDeliveryDestinationMapOutput { + return o +} + +func (o LogDeliveryDestinationMapOutput) ToLogDeliveryDestinationMapOutputWithContext(ctx context.Context) LogDeliveryDestinationMapOutput { + return o +} + +func (o LogDeliveryDestinationMapOutput) MapIndex(k pulumi.StringInput) LogDeliveryDestinationOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LogDeliveryDestination { + return vs[0].(map[string]*LogDeliveryDestination)[vs[1].(string)] + }).(LogDeliveryDestinationOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationInput)(nil)).Elem(), &LogDeliveryDestination{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationArrayInput)(nil)).Elem(), LogDeliveryDestinationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationMapInput)(nil)).Elem(), LogDeliveryDestinationMap{}) + pulumi.RegisterOutputType(LogDeliveryDestinationOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationArrayOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationMapOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/logDeliveryDestinationPolicy.go b/sdk/go/aws/cloudwatch/logDeliveryDestinationPolicy.go new file mode 100644 index 00000000000..aa5da4c606a --- /dev/null +++ b/sdk/go/aws/cloudwatch/logDeliveryDestinationPolicy.go @@ -0,0 +1,274 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cloudwatch.NewLogDeliveryDestinationPolicy(ctx, "example", &cloudwatch.LogDeliveryDestinationPolicyArgs{ +// DeliveryDestinationName: pulumi.Any(exampleAwsCloudwatchLogDeliveryDestination.Name), +// DeliveryDestinationPolicy: pulumi.Any(exampleAwsIamPolicyDocument.Json), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: +// +// ```sh +// $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example +// ``` +type LogDeliveryDestinationPolicy struct { + pulumi.CustomResourceState + + // The name of the delivery destination to assign this policy to. + DeliveryDestinationName pulumi.StringOutput `pulumi:"deliveryDestinationName"` + // The contents of the policy. + DeliveryDestinationPolicy pulumi.StringOutput `pulumi:"deliveryDestinationPolicy"` +} + +// NewLogDeliveryDestinationPolicy registers a new resource with the given unique name, arguments, and options. +func NewLogDeliveryDestinationPolicy(ctx *pulumi.Context, + name string, args *LogDeliveryDestinationPolicyArgs, opts ...pulumi.ResourceOption) (*LogDeliveryDestinationPolicy, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.DeliveryDestinationName == nil { + return nil, errors.New("invalid value for required argument 'DeliveryDestinationName'") + } + if args.DeliveryDestinationPolicy == nil { + return nil, errors.New("invalid value for required argument 'DeliveryDestinationPolicy'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource LogDeliveryDestinationPolicy + err := ctx.RegisterResource("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLogDeliveryDestinationPolicy gets an existing LogDeliveryDestinationPolicy 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 GetLogDeliveryDestinationPolicy(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LogDeliveryDestinationPolicyState, opts ...pulumi.ResourceOption) (*LogDeliveryDestinationPolicy, error) { + var resource LogDeliveryDestinationPolicy + err := ctx.ReadResource("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LogDeliveryDestinationPolicy resources. +type logDeliveryDestinationPolicyState struct { + // The name of the delivery destination to assign this policy to. + DeliveryDestinationName *string `pulumi:"deliveryDestinationName"` + // The contents of the policy. + DeliveryDestinationPolicy *string `pulumi:"deliveryDestinationPolicy"` +} + +type LogDeliveryDestinationPolicyState struct { + // The name of the delivery destination to assign this policy to. + DeliveryDestinationName pulumi.StringPtrInput + // The contents of the policy. + DeliveryDestinationPolicy pulumi.StringPtrInput +} + +func (LogDeliveryDestinationPolicyState) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryDestinationPolicyState)(nil)).Elem() +} + +type logDeliveryDestinationPolicyArgs struct { + // The name of the delivery destination to assign this policy to. + DeliveryDestinationName string `pulumi:"deliveryDestinationName"` + // The contents of the policy. + DeliveryDestinationPolicy string `pulumi:"deliveryDestinationPolicy"` +} + +// The set of arguments for constructing a LogDeliveryDestinationPolicy resource. +type LogDeliveryDestinationPolicyArgs struct { + // The name of the delivery destination to assign this policy to. + DeliveryDestinationName pulumi.StringInput + // The contents of the policy. + DeliveryDestinationPolicy pulumi.StringInput +} + +func (LogDeliveryDestinationPolicyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliveryDestinationPolicyArgs)(nil)).Elem() +} + +type LogDeliveryDestinationPolicyInput interface { + pulumi.Input + + ToLogDeliveryDestinationPolicyOutput() LogDeliveryDestinationPolicyOutput + ToLogDeliveryDestinationPolicyOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyOutput +} + +func (*LogDeliveryDestinationPolicy) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (i *LogDeliveryDestinationPolicy) ToLogDeliveryDestinationPolicyOutput() LogDeliveryDestinationPolicyOutput { + return i.ToLogDeliveryDestinationPolicyOutputWithContext(context.Background()) +} + +func (i *LogDeliveryDestinationPolicy) ToLogDeliveryDestinationPolicyOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationPolicyOutput) +} + +// LogDeliveryDestinationPolicyArrayInput is an input type that accepts LogDeliveryDestinationPolicyArray and LogDeliveryDestinationPolicyArrayOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationPolicyArrayInput` via: +// +// LogDeliveryDestinationPolicyArray{ LogDeliveryDestinationPolicyArgs{...} } +type LogDeliveryDestinationPolicyArrayInput interface { + pulumi.Input + + ToLogDeliveryDestinationPolicyArrayOutput() LogDeliveryDestinationPolicyArrayOutput + ToLogDeliveryDestinationPolicyArrayOutputWithContext(context.Context) LogDeliveryDestinationPolicyArrayOutput +} + +type LogDeliveryDestinationPolicyArray []LogDeliveryDestinationPolicyInput + +func (LogDeliveryDestinationPolicyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (i LogDeliveryDestinationPolicyArray) ToLogDeliveryDestinationPolicyArrayOutput() LogDeliveryDestinationPolicyArrayOutput { + return i.ToLogDeliveryDestinationPolicyArrayOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationPolicyArray) ToLogDeliveryDestinationPolicyArrayOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationPolicyArrayOutput) +} + +// LogDeliveryDestinationPolicyMapInput is an input type that accepts LogDeliveryDestinationPolicyMap and LogDeliveryDestinationPolicyMapOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationPolicyMapInput` via: +// +// LogDeliveryDestinationPolicyMap{ "key": LogDeliveryDestinationPolicyArgs{...} } +type LogDeliveryDestinationPolicyMapInput interface { + pulumi.Input + + ToLogDeliveryDestinationPolicyMapOutput() LogDeliveryDestinationPolicyMapOutput + ToLogDeliveryDestinationPolicyMapOutputWithContext(context.Context) LogDeliveryDestinationPolicyMapOutput +} + +type LogDeliveryDestinationPolicyMap map[string]LogDeliveryDestinationPolicyInput + +func (LogDeliveryDestinationPolicyMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (i LogDeliveryDestinationPolicyMap) ToLogDeliveryDestinationPolicyMapOutput() LogDeliveryDestinationPolicyMapOutput { + return i.ToLogDeliveryDestinationPolicyMapOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationPolicyMap) ToLogDeliveryDestinationPolicyMapOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationPolicyMapOutput) +} + +type LogDeliveryDestinationPolicyOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationPolicyOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (o LogDeliveryDestinationPolicyOutput) ToLogDeliveryDestinationPolicyOutput() LogDeliveryDestinationPolicyOutput { + return o +} + +func (o LogDeliveryDestinationPolicyOutput) ToLogDeliveryDestinationPolicyOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyOutput { + return o +} + +// The name of the delivery destination to assign this policy to. +func (o LogDeliveryDestinationPolicyOutput) DeliveryDestinationName() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliveryDestinationPolicy) pulumi.StringOutput { return v.DeliveryDestinationName }).(pulumi.StringOutput) +} + +// The contents of the policy. +func (o LogDeliveryDestinationPolicyOutput) DeliveryDestinationPolicy() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliveryDestinationPolicy) pulumi.StringOutput { return v.DeliveryDestinationPolicy }).(pulumi.StringOutput) +} + +type LogDeliveryDestinationPolicyArrayOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationPolicyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (o LogDeliveryDestinationPolicyArrayOutput) ToLogDeliveryDestinationPolicyArrayOutput() LogDeliveryDestinationPolicyArrayOutput { + return o +} + +func (o LogDeliveryDestinationPolicyArrayOutput) ToLogDeliveryDestinationPolicyArrayOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyArrayOutput { + return o +} + +func (o LogDeliveryDestinationPolicyArrayOutput) Index(i pulumi.IntInput) LogDeliveryDestinationPolicyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LogDeliveryDestinationPolicy { + return vs[0].([]*LogDeliveryDestinationPolicy)[vs[1].(int)] + }).(LogDeliveryDestinationPolicyOutput) +} + +type LogDeliveryDestinationPolicyMapOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationPolicyMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliveryDestinationPolicy)(nil)).Elem() +} + +func (o LogDeliveryDestinationPolicyMapOutput) ToLogDeliveryDestinationPolicyMapOutput() LogDeliveryDestinationPolicyMapOutput { + return o +} + +func (o LogDeliveryDestinationPolicyMapOutput) ToLogDeliveryDestinationPolicyMapOutputWithContext(ctx context.Context) LogDeliveryDestinationPolicyMapOutput { + return o +} + +func (o LogDeliveryDestinationPolicyMapOutput) MapIndex(k pulumi.StringInput) LogDeliveryDestinationPolicyOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LogDeliveryDestinationPolicy { + return vs[0].(map[string]*LogDeliveryDestinationPolicy)[vs[1].(string)] + }).(LogDeliveryDestinationPolicyOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationPolicyInput)(nil)).Elem(), &LogDeliveryDestinationPolicy{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationPolicyArrayInput)(nil)).Elem(), LogDeliveryDestinationPolicyArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationPolicyMapInput)(nil)).Elem(), LogDeliveryDestinationPolicyMap{}) + pulumi.RegisterOutputType(LogDeliveryDestinationPolicyOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationPolicyArrayOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationPolicyMapOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/logDeliverySource.go b/sdk/go/aws/cloudwatch/logDeliverySource.go new file mode 100644 index 00000000000..8e8c5e91b2e --- /dev/null +++ b/sdk/go/aws/cloudwatch/logDeliverySource.go @@ -0,0 +1,346 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS CloudWatch Logs Delivery Source. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := cloudwatch.NewLogDeliverySource(ctx, "example", &cloudwatch.LogDeliverySourceArgs{ +// Name: pulumi.String("example"), +// LogType: pulumi.String("APPLICATION_LOGS"), +// ResourceArn: pulumi.Any(exampleAwsBedrockagentKnowledgeBase.Arn), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: +// +// ```sh +// $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example +// ``` +type LogDeliverySource struct { + pulumi.CustomResourceState + + // The Amazon Resource Name (ARN) of the delivery source. + Arn pulumi.StringOutput `pulumi:"arn"` + // The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + LogType pulumi.StringOutput `pulumi:"logType"` + // The name for this delivery source. + Name pulumi.StringOutput `pulumi:"name"` + // The ARN of the AWS resource that is generating and sending logs. + ResourceArn pulumi.StringOutput `pulumi:"resourceArn"` + // The AWS service that is sending logs. + Service pulumi.StringOutput `pulumi:"service"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` +} + +// NewLogDeliverySource registers a new resource with the given unique name, arguments, and options. +func NewLogDeliverySource(ctx *pulumi.Context, + name string, args *LogDeliverySourceArgs, opts ...pulumi.ResourceOption) (*LogDeliverySource, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.LogType == nil { + return nil, errors.New("invalid value for required argument 'LogType'") + } + if args.ResourceArn == nil { + return nil, errors.New("invalid value for required argument 'ResourceArn'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource LogDeliverySource + err := ctx.RegisterResource("aws:cloudwatch/logDeliverySource:LogDeliverySource", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLogDeliverySource gets an existing LogDeliverySource 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 GetLogDeliverySource(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LogDeliverySourceState, opts ...pulumi.ResourceOption) (*LogDeliverySource, error) { + var resource LogDeliverySource + err := ctx.ReadResource("aws:cloudwatch/logDeliverySource:LogDeliverySource", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LogDeliverySource resources. +type logDeliverySourceState struct { + // The Amazon Resource Name (ARN) of the delivery source. + Arn *string `pulumi:"arn"` + // The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + LogType *string `pulumi:"logType"` + // The name for this delivery source. + Name *string `pulumi:"name"` + // The ARN of the AWS resource that is generating and sending logs. + ResourceArn *string `pulumi:"resourceArn"` + // The AWS service that is sending logs. + Service *string `pulumi:"service"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll map[string]string `pulumi:"tagsAll"` +} + +type LogDeliverySourceState struct { + // The Amazon Resource Name (ARN) of the delivery source. + Arn pulumi.StringPtrInput + // The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + LogType pulumi.StringPtrInput + // The name for this delivery source. + Name pulumi.StringPtrInput + // The ARN of the AWS resource that is generating and sending logs. + ResourceArn pulumi.StringPtrInput + // The AWS service that is sending logs. + Service pulumi.StringPtrInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput + // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapInput +} + +func (LogDeliverySourceState) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliverySourceState)(nil)).Elem() +} + +type logDeliverySourceArgs struct { + // The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + LogType string `pulumi:"logType"` + // The name for this delivery source. + Name *string `pulumi:"name"` + // The ARN of the AWS resource that is generating and sending logs. + ResourceArn string `pulumi:"resourceArn"` + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a LogDeliverySource resource. +type LogDeliverySourceArgs struct { + // The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + LogType pulumi.StringInput + // The name for this delivery source. + Name pulumi.StringPtrInput + // The ARN of the AWS resource that is generating and sending logs. + ResourceArn pulumi.StringInput + // A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput +} + +func (LogDeliverySourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*logDeliverySourceArgs)(nil)).Elem() +} + +type LogDeliverySourceInput interface { + pulumi.Input + + ToLogDeliverySourceOutput() LogDeliverySourceOutput + ToLogDeliverySourceOutputWithContext(ctx context.Context) LogDeliverySourceOutput +} + +func (*LogDeliverySource) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliverySource)(nil)).Elem() +} + +func (i *LogDeliverySource) ToLogDeliverySourceOutput() LogDeliverySourceOutput { + return i.ToLogDeliverySourceOutputWithContext(context.Background()) +} + +func (i *LogDeliverySource) ToLogDeliverySourceOutputWithContext(ctx context.Context) LogDeliverySourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliverySourceOutput) +} + +// LogDeliverySourceArrayInput is an input type that accepts LogDeliverySourceArray and LogDeliverySourceArrayOutput values. +// You can construct a concrete instance of `LogDeliverySourceArrayInput` via: +// +// LogDeliverySourceArray{ LogDeliverySourceArgs{...} } +type LogDeliverySourceArrayInput interface { + pulumi.Input + + ToLogDeliverySourceArrayOutput() LogDeliverySourceArrayOutput + ToLogDeliverySourceArrayOutputWithContext(context.Context) LogDeliverySourceArrayOutput +} + +type LogDeliverySourceArray []LogDeliverySourceInput + +func (LogDeliverySourceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliverySource)(nil)).Elem() +} + +func (i LogDeliverySourceArray) ToLogDeliverySourceArrayOutput() LogDeliverySourceArrayOutput { + return i.ToLogDeliverySourceArrayOutputWithContext(context.Background()) +} + +func (i LogDeliverySourceArray) ToLogDeliverySourceArrayOutputWithContext(ctx context.Context) LogDeliverySourceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliverySourceArrayOutput) +} + +// LogDeliverySourceMapInput is an input type that accepts LogDeliverySourceMap and LogDeliverySourceMapOutput values. +// You can construct a concrete instance of `LogDeliverySourceMapInput` via: +// +// LogDeliverySourceMap{ "key": LogDeliverySourceArgs{...} } +type LogDeliverySourceMapInput interface { + pulumi.Input + + ToLogDeliverySourceMapOutput() LogDeliverySourceMapOutput + ToLogDeliverySourceMapOutputWithContext(context.Context) LogDeliverySourceMapOutput +} + +type LogDeliverySourceMap map[string]LogDeliverySourceInput + +func (LogDeliverySourceMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliverySource)(nil)).Elem() +} + +func (i LogDeliverySourceMap) ToLogDeliverySourceMapOutput() LogDeliverySourceMapOutput { + return i.ToLogDeliverySourceMapOutputWithContext(context.Background()) +} + +func (i LogDeliverySourceMap) ToLogDeliverySourceMapOutputWithContext(ctx context.Context) LogDeliverySourceMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliverySourceMapOutput) +} + +type LogDeliverySourceOutput struct{ *pulumi.OutputState } + +func (LogDeliverySourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliverySource)(nil)).Elem() +} + +func (o LogDeliverySourceOutput) ToLogDeliverySourceOutput() LogDeliverySourceOutput { + return o +} + +func (o LogDeliverySourceOutput) ToLogDeliverySourceOutputWithContext(ctx context.Context) LogDeliverySourceOutput { + return o +} + +// The Amazon Resource Name (ARN) of the delivery source. +func (o LogDeliverySourceOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. +func (o LogDeliverySourceOutput) LogType() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringOutput { return v.LogType }).(pulumi.StringOutput) +} + +// The name for this delivery source. +func (o LogDeliverySourceOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The ARN of the AWS resource that is generating and sending logs. +func (o LogDeliverySourceOutput) ResourceArn() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringOutput { return v.ResourceArn }).(pulumi.StringOutput) +} + +// The AWS service that is sending logs. +func (o LogDeliverySourceOutput) Service() pulumi.StringOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringOutput { return v.Service }).(pulumi.StringOutput) +} + +// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o LogDeliverySourceOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. +// +// Deprecated: Please use `tags` instead. +func (o LogDeliverySourceOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *LogDeliverySource) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +type LogDeliverySourceArrayOutput struct{ *pulumi.OutputState } + +func (LogDeliverySourceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogDeliverySource)(nil)).Elem() +} + +func (o LogDeliverySourceArrayOutput) ToLogDeliverySourceArrayOutput() LogDeliverySourceArrayOutput { + return o +} + +func (o LogDeliverySourceArrayOutput) ToLogDeliverySourceArrayOutputWithContext(ctx context.Context) LogDeliverySourceArrayOutput { + return o +} + +func (o LogDeliverySourceArrayOutput) Index(i pulumi.IntInput) LogDeliverySourceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LogDeliverySource { + return vs[0].([]*LogDeliverySource)[vs[1].(int)] + }).(LogDeliverySourceOutput) +} + +type LogDeliverySourceMapOutput struct{ *pulumi.OutputState } + +func (LogDeliverySourceMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogDeliverySource)(nil)).Elem() +} + +func (o LogDeliverySourceMapOutput) ToLogDeliverySourceMapOutput() LogDeliverySourceMapOutput { + return o +} + +func (o LogDeliverySourceMapOutput) ToLogDeliverySourceMapOutputWithContext(ctx context.Context) LogDeliverySourceMapOutput { + return o +} + +func (o LogDeliverySourceMapOutput) MapIndex(k pulumi.StringInput) LogDeliverySourceOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LogDeliverySource { + return vs[0].(map[string]*LogDeliverySource)[vs[1].(string)] + }).(LogDeliverySourceOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliverySourceInput)(nil)).Elem(), &LogDeliverySource{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliverySourceArrayInput)(nil)).Elem(), LogDeliverySourceArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliverySourceMapInput)(nil)).Elem(), LogDeliverySourceMap{}) + pulumi.RegisterOutputType(LogDeliverySourceOutput{}) + pulumi.RegisterOutputType(LogDeliverySourceArrayOutput{}) + pulumi.RegisterOutputType(LogDeliverySourceMapOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/logIndexPolicy.go b/sdk/go/aws/cloudwatch/logIndexPolicy.go new file mode 100644 index 00000000000..c612ffa10d7 --- /dev/null +++ b/sdk/go/aws/cloudwatch/logIndexPolicy.go @@ -0,0 +1,291 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudwatch + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS CloudWatch Logs Index Policy. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "encoding/json" +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// example, err := cloudwatch.NewLogGroup(ctx, "example", &cloudwatch.LogGroupArgs{ +// Name: pulumi.String("example"), +// }) +// if err != nil { +// return err +// } +// tmpJSON0, err := json.Marshal(map[string]interface{}{ +// "Fields": []string{ +// "eventName", +// }, +// }) +// if err != nil { +// return err +// } +// json0 := string(tmpJSON0) +// _, err = cloudwatch.NewLogIndexPolicy(ctx, "example", &cloudwatch.LogIndexPolicyArgs{ +// LogGroupName: example.Name, +// PolicyDocument: pulumi.String(json0), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: +// +// ```sh +// $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name +// ``` +type LogIndexPolicy struct { + pulumi.CustomResourceState + + // Log group name to set the policy for. + LogGroupName pulumi.StringOutput `pulumi:"logGroupName"` + // JSON policy document. This is a JSON formatted string. + PolicyDocument pulumi.StringOutput `pulumi:"policyDocument"` +} + +// NewLogIndexPolicy registers a new resource with the given unique name, arguments, and options. +func NewLogIndexPolicy(ctx *pulumi.Context, + name string, args *LogIndexPolicyArgs, opts ...pulumi.ResourceOption) (*LogIndexPolicy, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.LogGroupName == nil { + return nil, errors.New("invalid value for required argument 'LogGroupName'") + } + if args.PolicyDocument == nil { + return nil, errors.New("invalid value for required argument 'PolicyDocument'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource LogIndexPolicy + err := ctx.RegisterResource("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetLogIndexPolicy gets an existing LogIndexPolicy 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 GetLogIndexPolicy(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *LogIndexPolicyState, opts ...pulumi.ResourceOption) (*LogIndexPolicy, error) { + var resource LogIndexPolicy + err := ctx.ReadResource("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering LogIndexPolicy resources. +type logIndexPolicyState struct { + // Log group name to set the policy for. + LogGroupName *string `pulumi:"logGroupName"` + // JSON policy document. This is a JSON formatted string. + PolicyDocument *string `pulumi:"policyDocument"` +} + +type LogIndexPolicyState struct { + // Log group name to set the policy for. + LogGroupName pulumi.StringPtrInput + // JSON policy document. This is a JSON formatted string. + PolicyDocument pulumi.StringPtrInput +} + +func (LogIndexPolicyState) ElementType() reflect.Type { + return reflect.TypeOf((*logIndexPolicyState)(nil)).Elem() +} + +type logIndexPolicyArgs struct { + // Log group name to set the policy for. + LogGroupName string `pulumi:"logGroupName"` + // JSON policy document. This is a JSON formatted string. + PolicyDocument string `pulumi:"policyDocument"` +} + +// The set of arguments for constructing a LogIndexPolicy resource. +type LogIndexPolicyArgs struct { + // Log group name to set the policy for. + LogGroupName pulumi.StringInput + // JSON policy document. This is a JSON formatted string. + PolicyDocument pulumi.StringInput +} + +func (LogIndexPolicyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*logIndexPolicyArgs)(nil)).Elem() +} + +type LogIndexPolicyInput interface { + pulumi.Input + + ToLogIndexPolicyOutput() LogIndexPolicyOutput + ToLogIndexPolicyOutputWithContext(ctx context.Context) LogIndexPolicyOutput +} + +func (*LogIndexPolicy) ElementType() reflect.Type { + return reflect.TypeOf((**LogIndexPolicy)(nil)).Elem() +} + +func (i *LogIndexPolicy) ToLogIndexPolicyOutput() LogIndexPolicyOutput { + return i.ToLogIndexPolicyOutputWithContext(context.Background()) +} + +func (i *LogIndexPolicy) ToLogIndexPolicyOutputWithContext(ctx context.Context) LogIndexPolicyOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogIndexPolicyOutput) +} + +// LogIndexPolicyArrayInput is an input type that accepts LogIndexPolicyArray and LogIndexPolicyArrayOutput values. +// You can construct a concrete instance of `LogIndexPolicyArrayInput` via: +// +// LogIndexPolicyArray{ LogIndexPolicyArgs{...} } +type LogIndexPolicyArrayInput interface { + pulumi.Input + + ToLogIndexPolicyArrayOutput() LogIndexPolicyArrayOutput + ToLogIndexPolicyArrayOutputWithContext(context.Context) LogIndexPolicyArrayOutput +} + +type LogIndexPolicyArray []LogIndexPolicyInput + +func (LogIndexPolicyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogIndexPolicy)(nil)).Elem() +} + +func (i LogIndexPolicyArray) ToLogIndexPolicyArrayOutput() LogIndexPolicyArrayOutput { + return i.ToLogIndexPolicyArrayOutputWithContext(context.Background()) +} + +func (i LogIndexPolicyArray) ToLogIndexPolicyArrayOutputWithContext(ctx context.Context) LogIndexPolicyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogIndexPolicyArrayOutput) +} + +// LogIndexPolicyMapInput is an input type that accepts LogIndexPolicyMap and LogIndexPolicyMapOutput values. +// You can construct a concrete instance of `LogIndexPolicyMapInput` via: +// +// LogIndexPolicyMap{ "key": LogIndexPolicyArgs{...} } +type LogIndexPolicyMapInput interface { + pulumi.Input + + ToLogIndexPolicyMapOutput() LogIndexPolicyMapOutput + ToLogIndexPolicyMapOutputWithContext(context.Context) LogIndexPolicyMapOutput +} + +type LogIndexPolicyMap map[string]LogIndexPolicyInput + +func (LogIndexPolicyMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogIndexPolicy)(nil)).Elem() +} + +func (i LogIndexPolicyMap) ToLogIndexPolicyMapOutput() LogIndexPolicyMapOutput { + return i.ToLogIndexPolicyMapOutputWithContext(context.Background()) +} + +func (i LogIndexPolicyMap) ToLogIndexPolicyMapOutputWithContext(ctx context.Context) LogIndexPolicyMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogIndexPolicyMapOutput) +} + +type LogIndexPolicyOutput struct{ *pulumi.OutputState } + +func (LogIndexPolicyOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogIndexPolicy)(nil)).Elem() +} + +func (o LogIndexPolicyOutput) ToLogIndexPolicyOutput() LogIndexPolicyOutput { + return o +} + +func (o LogIndexPolicyOutput) ToLogIndexPolicyOutputWithContext(ctx context.Context) LogIndexPolicyOutput { + return o +} + +// Log group name to set the policy for. +func (o LogIndexPolicyOutput) LogGroupName() pulumi.StringOutput { + return o.ApplyT(func(v *LogIndexPolicy) pulumi.StringOutput { return v.LogGroupName }).(pulumi.StringOutput) +} + +// JSON policy document. This is a JSON formatted string. +func (o LogIndexPolicyOutput) PolicyDocument() pulumi.StringOutput { + return o.ApplyT(func(v *LogIndexPolicy) pulumi.StringOutput { return v.PolicyDocument }).(pulumi.StringOutput) +} + +type LogIndexPolicyArrayOutput struct{ *pulumi.OutputState } + +func (LogIndexPolicyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*LogIndexPolicy)(nil)).Elem() +} + +func (o LogIndexPolicyArrayOutput) ToLogIndexPolicyArrayOutput() LogIndexPolicyArrayOutput { + return o +} + +func (o LogIndexPolicyArrayOutput) ToLogIndexPolicyArrayOutputWithContext(ctx context.Context) LogIndexPolicyArrayOutput { + return o +} + +func (o LogIndexPolicyArrayOutput) Index(i pulumi.IntInput) LogIndexPolicyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LogIndexPolicy { + return vs[0].([]*LogIndexPolicy)[vs[1].(int)] + }).(LogIndexPolicyOutput) +} + +type LogIndexPolicyMapOutput struct{ *pulumi.OutputState } + +func (LogIndexPolicyMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*LogIndexPolicy)(nil)).Elem() +} + +func (o LogIndexPolicyMapOutput) ToLogIndexPolicyMapOutput() LogIndexPolicyMapOutput { + return o +} + +func (o LogIndexPolicyMapOutput) ToLogIndexPolicyMapOutputWithContext(ctx context.Context) LogIndexPolicyMapOutput { + return o +} + +func (o LogIndexPolicyMapOutput) MapIndex(k pulumi.StringInput) LogIndexPolicyOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LogIndexPolicy { + return vs[0].(map[string]*LogIndexPolicy)[vs[1].(string)] + }).(LogIndexPolicyOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*LogIndexPolicyInput)(nil)).Elem(), &LogIndexPolicy{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogIndexPolicyArrayInput)(nil)).Elem(), LogIndexPolicyArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogIndexPolicyMapInput)(nil)).Elem(), LogIndexPolicyMap{}) + pulumi.RegisterOutputType(LogIndexPolicyOutput{}) + pulumi.RegisterOutputType(LogIndexPolicyArrayOutput{}) + pulumi.RegisterOutputType(LogIndexPolicyMapOutput{}) +} diff --git a/sdk/go/aws/cloudwatch/pulumiTypes.go b/sdk/go/aws/cloudwatch/pulumiTypes.go index 6ef54a35e8b..4f1295338bf 100644 --- a/sdk/go/aws/cloudwatch/pulumiTypes.go +++ b/sdk/go/aws/cloudwatch/pulumiTypes.go @@ -6239,6 +6239,249 @@ func (o InternetMonitorInternetMeasurementsLogDeliveryS3ConfigPtrOutput) LogDeli }).(pulumi.StringPtrOutput) } +type LogDeliveryDestinationDeliveryDestinationConfiguration struct { + // The ARN of the AWS destination that this delivery destination represents. + DestinationResourceArn string `pulumi:"destinationResourceArn"` +} + +// LogDeliveryDestinationDeliveryDestinationConfigurationInput is an input type that accepts LogDeliveryDestinationDeliveryDestinationConfigurationArgs and LogDeliveryDestinationDeliveryDestinationConfigurationOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationDeliveryDestinationConfigurationInput` via: +// +// LogDeliveryDestinationDeliveryDestinationConfigurationArgs{...} +type LogDeliveryDestinationDeliveryDestinationConfigurationInput interface { + pulumi.Input + + ToLogDeliveryDestinationDeliveryDestinationConfigurationOutput() LogDeliveryDestinationDeliveryDestinationConfigurationOutput + ToLogDeliveryDestinationDeliveryDestinationConfigurationOutputWithContext(context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationOutput +} + +type LogDeliveryDestinationDeliveryDestinationConfigurationArgs struct { + // The ARN of the AWS destination that this delivery destination represents. + DestinationResourceArn pulumi.StringInput `pulumi:"destinationResourceArn"` +} + +func (LogDeliveryDestinationDeliveryDestinationConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LogDeliveryDestinationDeliveryDestinationConfiguration)(nil)).Elem() +} + +func (i LogDeliveryDestinationDeliveryDestinationConfigurationArgs) ToLogDeliveryDestinationDeliveryDestinationConfigurationOutput() LogDeliveryDestinationDeliveryDestinationConfigurationOutput { + return i.ToLogDeliveryDestinationDeliveryDestinationConfigurationOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationDeliveryDestinationConfigurationArgs) ToLogDeliveryDestinationDeliveryDestinationConfigurationOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationDeliveryDestinationConfigurationOutput) +} + +func (i LogDeliveryDestinationDeliveryDestinationConfigurationArgs) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return i.ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(context.Background()) +} + +func (i LogDeliveryDestinationDeliveryDestinationConfigurationArgs) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationDeliveryDestinationConfigurationOutput).ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(ctx) +} + +// LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput is an input type that accepts LogDeliveryDestinationDeliveryDestinationConfigurationArgs, LogDeliveryDestinationDeliveryDestinationConfigurationPtr and LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput values. +// You can construct a concrete instance of `LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput` via: +// +// LogDeliveryDestinationDeliveryDestinationConfigurationArgs{...} +// +// or: +// +// nil +type LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput interface { + pulumi.Input + + ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput + ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput +} + +type logDeliveryDestinationDeliveryDestinationConfigurationPtrType LogDeliveryDestinationDeliveryDestinationConfigurationArgs + +func LogDeliveryDestinationDeliveryDestinationConfigurationPtr(v *LogDeliveryDestinationDeliveryDestinationConfigurationArgs) LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput { + return (*logDeliveryDestinationDeliveryDestinationConfigurationPtrType)(v) +} + +func (*logDeliveryDestinationDeliveryDestinationConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestinationDeliveryDestinationConfiguration)(nil)).Elem() +} + +func (i *logDeliveryDestinationDeliveryDestinationConfigurationPtrType) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return i.ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *logDeliveryDestinationDeliveryDestinationConfigurationPtrType) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) +} + +type LogDeliveryDestinationDeliveryDestinationConfigurationOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationDeliveryDestinationConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LogDeliveryDestinationDeliveryDestinationConfiguration)(nil)).Elem() +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationOutput() LogDeliveryDestinationDeliveryDestinationConfigurationOutput { + return o +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationOutput { + return o +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return o.ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(context.Background()) +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v LogDeliveryDestinationDeliveryDestinationConfiguration) *LogDeliveryDestinationDeliveryDestinationConfiguration { + return &v + }).(LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) +} + +// The ARN of the AWS destination that this delivery destination represents. +func (o LogDeliveryDestinationDeliveryDestinationConfigurationOutput) DestinationResourceArn() pulumi.StringOutput { + return o.ApplyT(func(v LogDeliveryDestinationDeliveryDestinationConfiguration) string { return v.DestinationResourceArn }).(pulumi.StringOutput) +} + +type LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LogDeliveryDestinationDeliveryDestinationConfiguration)(nil)).Elem() +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput() LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return o +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) ToLogDeliveryDestinationDeliveryDestinationConfigurationPtrOutputWithContext(ctx context.Context) LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput { + return o +} + +func (o LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) Elem() LogDeliveryDestinationDeliveryDestinationConfigurationOutput { + return o.ApplyT(func(v *LogDeliveryDestinationDeliveryDestinationConfiguration) LogDeliveryDestinationDeliveryDestinationConfiguration { + if v != nil { + return *v + } + var ret LogDeliveryDestinationDeliveryDestinationConfiguration + return ret + }).(LogDeliveryDestinationDeliveryDestinationConfigurationOutput) +} + +// The ARN of the AWS destination that this delivery destination represents. +func (o LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput) DestinationResourceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LogDeliveryDestinationDeliveryDestinationConfiguration) *string { + if v == nil { + return nil + } + return &v.DestinationResourceArn + }).(pulumi.StringPtrOutput) +} + +type LogDeliveryS3DeliveryConfiguration struct { + // This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + EnableHiveCompatiblePath bool `pulumi:"enableHiveCompatiblePath"` + // This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + SuffixPath string `pulumi:"suffixPath"` +} + +// LogDeliveryS3DeliveryConfigurationInput is an input type that accepts LogDeliveryS3DeliveryConfigurationArgs and LogDeliveryS3DeliveryConfigurationOutput values. +// You can construct a concrete instance of `LogDeliveryS3DeliveryConfigurationInput` via: +// +// LogDeliveryS3DeliveryConfigurationArgs{...} +type LogDeliveryS3DeliveryConfigurationInput interface { + pulumi.Input + + ToLogDeliveryS3DeliveryConfigurationOutput() LogDeliveryS3DeliveryConfigurationOutput + ToLogDeliveryS3DeliveryConfigurationOutputWithContext(context.Context) LogDeliveryS3DeliveryConfigurationOutput +} + +type LogDeliveryS3DeliveryConfigurationArgs struct { + // This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + EnableHiveCompatiblePath pulumi.BoolInput `pulumi:"enableHiveCompatiblePath"` + // This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + SuffixPath pulumi.StringInput `pulumi:"suffixPath"` +} + +func (LogDeliveryS3DeliveryConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LogDeliveryS3DeliveryConfiguration)(nil)).Elem() +} + +func (i LogDeliveryS3DeliveryConfigurationArgs) ToLogDeliveryS3DeliveryConfigurationOutput() LogDeliveryS3DeliveryConfigurationOutput { + return i.ToLogDeliveryS3DeliveryConfigurationOutputWithContext(context.Background()) +} + +func (i LogDeliveryS3DeliveryConfigurationArgs) ToLogDeliveryS3DeliveryConfigurationOutputWithContext(ctx context.Context) LogDeliveryS3DeliveryConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryS3DeliveryConfigurationOutput) +} + +// LogDeliveryS3DeliveryConfigurationArrayInput is an input type that accepts LogDeliveryS3DeliveryConfigurationArray and LogDeliveryS3DeliveryConfigurationArrayOutput values. +// You can construct a concrete instance of `LogDeliveryS3DeliveryConfigurationArrayInput` via: +// +// LogDeliveryS3DeliveryConfigurationArray{ LogDeliveryS3DeliveryConfigurationArgs{...} } +type LogDeliveryS3DeliveryConfigurationArrayInput interface { + pulumi.Input + + ToLogDeliveryS3DeliveryConfigurationArrayOutput() LogDeliveryS3DeliveryConfigurationArrayOutput + ToLogDeliveryS3DeliveryConfigurationArrayOutputWithContext(context.Context) LogDeliveryS3DeliveryConfigurationArrayOutput +} + +type LogDeliveryS3DeliveryConfigurationArray []LogDeliveryS3DeliveryConfigurationInput + +func (LogDeliveryS3DeliveryConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]LogDeliveryS3DeliveryConfiguration)(nil)).Elem() +} + +func (i LogDeliveryS3DeliveryConfigurationArray) ToLogDeliveryS3DeliveryConfigurationArrayOutput() LogDeliveryS3DeliveryConfigurationArrayOutput { + return i.ToLogDeliveryS3DeliveryConfigurationArrayOutputWithContext(context.Background()) +} + +func (i LogDeliveryS3DeliveryConfigurationArray) ToLogDeliveryS3DeliveryConfigurationArrayOutputWithContext(ctx context.Context) LogDeliveryS3DeliveryConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(LogDeliveryS3DeliveryConfigurationArrayOutput) +} + +type LogDeliveryS3DeliveryConfigurationOutput struct{ *pulumi.OutputState } + +func (LogDeliveryS3DeliveryConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LogDeliveryS3DeliveryConfiguration)(nil)).Elem() +} + +func (o LogDeliveryS3DeliveryConfigurationOutput) ToLogDeliveryS3DeliveryConfigurationOutput() LogDeliveryS3DeliveryConfigurationOutput { + return o +} + +func (o LogDeliveryS3DeliveryConfigurationOutput) ToLogDeliveryS3DeliveryConfigurationOutputWithContext(ctx context.Context) LogDeliveryS3DeliveryConfigurationOutput { + return o +} + +// This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. +func (o LogDeliveryS3DeliveryConfigurationOutput) EnableHiveCompatiblePath() pulumi.BoolOutput { + return o.ApplyT(func(v LogDeliveryS3DeliveryConfiguration) bool { return v.EnableHiveCompatiblePath }).(pulumi.BoolOutput) +} + +// This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. +func (o LogDeliveryS3DeliveryConfigurationOutput) SuffixPath() pulumi.StringOutput { + return o.ApplyT(func(v LogDeliveryS3DeliveryConfiguration) string { return v.SuffixPath }).(pulumi.StringOutput) +} + +type LogDeliveryS3DeliveryConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (LogDeliveryS3DeliveryConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]LogDeliveryS3DeliveryConfiguration)(nil)).Elem() +} + +func (o LogDeliveryS3DeliveryConfigurationArrayOutput) ToLogDeliveryS3DeliveryConfigurationArrayOutput() LogDeliveryS3DeliveryConfigurationArrayOutput { + return o +} + +func (o LogDeliveryS3DeliveryConfigurationArrayOutput) ToLogDeliveryS3DeliveryConfigurationArrayOutputWithContext(ctx context.Context) LogDeliveryS3DeliveryConfigurationArrayOutput { + return o +} + +func (o LogDeliveryS3DeliveryConfigurationArrayOutput) Index(i pulumi.IntInput) LogDeliveryS3DeliveryConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) LogDeliveryS3DeliveryConfiguration { + return vs[0].([]LogDeliveryS3DeliveryConfiguration)[vs[1].(int)] + }).(LogDeliveryS3DeliveryConfigurationOutput) +} + type LogMetricFilterMetricTransformation struct { // The value to emit when a filter pattern does not match a log event. Conflicts with `dimensions`. DefaultValue *string `pulumi:"defaultValue"` @@ -7309,6 +7552,148 @@ func (o MetricStreamStatisticsConfigurationIncludeMetricArrayOutput) Index(i pul }).(MetricStreamStatisticsConfigurationIncludeMetricOutput) } +type GetEventBusesEventBus struct { + // The ARN of the event bus. + Arn string `pulumi:"arn"` + // The time the event bus was created. + CreationTime string `pulumi:"creationTime"` + // The event bus description. + Description string `pulumi:"description"` + // The time the event bus was last modified. + LastModifiedTime string `pulumi:"lastModifiedTime"` + // The name of the event bus. + Name string `pulumi:"name"` + // The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + Policy string `pulumi:"policy"` +} + +// GetEventBusesEventBusInput is an input type that accepts GetEventBusesEventBusArgs and GetEventBusesEventBusOutput values. +// You can construct a concrete instance of `GetEventBusesEventBusInput` via: +// +// GetEventBusesEventBusArgs{...} +type GetEventBusesEventBusInput interface { + pulumi.Input + + ToGetEventBusesEventBusOutput() GetEventBusesEventBusOutput + ToGetEventBusesEventBusOutputWithContext(context.Context) GetEventBusesEventBusOutput +} + +type GetEventBusesEventBusArgs struct { + // The ARN of the event bus. + Arn pulumi.StringInput `pulumi:"arn"` + // The time the event bus was created. + CreationTime pulumi.StringInput `pulumi:"creationTime"` + // The event bus description. + Description pulumi.StringInput `pulumi:"description"` + // The time the event bus was last modified. + LastModifiedTime pulumi.StringInput `pulumi:"lastModifiedTime"` + // The name of the event bus. + Name pulumi.StringInput `pulumi:"name"` + // The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + Policy pulumi.StringInput `pulumi:"policy"` +} + +func (GetEventBusesEventBusArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetEventBusesEventBus)(nil)).Elem() +} + +func (i GetEventBusesEventBusArgs) ToGetEventBusesEventBusOutput() GetEventBusesEventBusOutput { + return i.ToGetEventBusesEventBusOutputWithContext(context.Background()) +} + +func (i GetEventBusesEventBusArgs) ToGetEventBusesEventBusOutputWithContext(ctx context.Context) GetEventBusesEventBusOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetEventBusesEventBusOutput) +} + +// GetEventBusesEventBusArrayInput is an input type that accepts GetEventBusesEventBusArray and GetEventBusesEventBusArrayOutput values. +// You can construct a concrete instance of `GetEventBusesEventBusArrayInput` via: +// +// GetEventBusesEventBusArray{ GetEventBusesEventBusArgs{...} } +type GetEventBusesEventBusArrayInput interface { + pulumi.Input + + ToGetEventBusesEventBusArrayOutput() GetEventBusesEventBusArrayOutput + ToGetEventBusesEventBusArrayOutputWithContext(context.Context) GetEventBusesEventBusArrayOutput +} + +type GetEventBusesEventBusArray []GetEventBusesEventBusInput + +func (GetEventBusesEventBusArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetEventBusesEventBus)(nil)).Elem() +} + +func (i GetEventBusesEventBusArray) ToGetEventBusesEventBusArrayOutput() GetEventBusesEventBusArrayOutput { + return i.ToGetEventBusesEventBusArrayOutputWithContext(context.Background()) +} + +func (i GetEventBusesEventBusArray) ToGetEventBusesEventBusArrayOutputWithContext(ctx context.Context) GetEventBusesEventBusArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetEventBusesEventBusArrayOutput) +} + +type GetEventBusesEventBusOutput struct{ *pulumi.OutputState } + +func (GetEventBusesEventBusOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetEventBusesEventBus)(nil)).Elem() +} + +func (o GetEventBusesEventBusOutput) ToGetEventBusesEventBusOutput() GetEventBusesEventBusOutput { + return o +} + +func (o GetEventBusesEventBusOutput) ToGetEventBusesEventBusOutputWithContext(ctx context.Context) GetEventBusesEventBusOutput { + return o +} + +// The ARN of the event bus. +func (o GetEventBusesEventBusOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.Arn }).(pulumi.StringOutput) +} + +// The time the event bus was created. +func (o GetEventBusesEventBusOutput) CreationTime() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.CreationTime }).(pulumi.StringOutput) +} + +// The event bus description. +func (o GetEventBusesEventBusOutput) Description() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.Description }).(pulumi.StringOutput) +} + +// The time the event bus was last modified. +func (o GetEventBusesEventBusOutput) LastModifiedTime() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.LastModifiedTime }).(pulumi.StringOutput) +} + +// The name of the event bus. +func (o GetEventBusesEventBusOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.Name }).(pulumi.StringOutput) +} + +// The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. +func (o GetEventBusesEventBusOutput) Policy() pulumi.StringOutput { + return o.ApplyT(func(v GetEventBusesEventBus) string { return v.Policy }).(pulumi.StringOutput) +} + +type GetEventBusesEventBusArrayOutput struct{ *pulumi.OutputState } + +func (GetEventBusesEventBusArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetEventBusesEventBus)(nil)).Elem() +} + +func (o GetEventBusesEventBusArrayOutput) ToGetEventBusesEventBusArrayOutput() GetEventBusesEventBusArrayOutput { + return o +} + +func (o GetEventBusesEventBusArrayOutput) ToGetEventBusesEventBusArrayOutputWithContext(ctx context.Context) GetEventBusesEventBusArrayOutput { + return o +} + +func (o GetEventBusesEventBusArrayOutput) Index(i pulumi.IntInput) GetEventBusesEventBusOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetEventBusesEventBus { + return vs[0].([]GetEventBusesEventBus)[vs[1].(int)] + }).(GetEventBusesEventBusOutput) +} + type GetLogDataProtectionPolicyDocumentStatement struct { // Set of at least 1 sensitive data identifiers that you want to mask. Read more in [Types of data that you can protect](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/protect-sensitive-log-data-types.html). DataIdentifiers []string `pulumi:"dataIdentifiers"` @@ -8574,6 +8959,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*InternetMonitorInternetMeasurementsLogDeliveryPtrInput)(nil)).Elem(), InternetMonitorInternetMeasurementsLogDeliveryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InternetMonitorInternetMeasurementsLogDeliveryS3ConfigInput)(nil)).Elem(), InternetMonitorInternetMeasurementsLogDeliveryS3ConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InternetMonitorInternetMeasurementsLogDeliveryS3ConfigPtrInput)(nil)).Elem(), InternetMonitorInternetMeasurementsLogDeliveryS3ConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationDeliveryDestinationConfigurationInput)(nil)).Elem(), LogDeliveryDestinationDeliveryDestinationConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryDestinationDeliveryDestinationConfigurationPtrInput)(nil)).Elem(), LogDeliveryDestinationDeliveryDestinationConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryS3DeliveryConfigurationInput)(nil)).Elem(), LogDeliveryS3DeliveryConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*LogDeliveryS3DeliveryConfigurationArrayInput)(nil)).Elem(), LogDeliveryS3DeliveryConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*LogMetricFilterMetricTransformationInput)(nil)).Elem(), LogMetricFilterMetricTransformationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*LogMetricFilterMetricTransformationPtrInput)(nil)).Elem(), LogMetricFilterMetricTransformationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MetricAlarmMetricQueryInput)(nil)).Elem(), MetricAlarmMetricQueryArgs{}) @@ -8588,6 +8977,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*MetricStreamStatisticsConfigurationArrayInput)(nil)).Elem(), MetricStreamStatisticsConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*MetricStreamStatisticsConfigurationIncludeMetricInput)(nil)).Elem(), MetricStreamStatisticsConfigurationIncludeMetricArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MetricStreamStatisticsConfigurationIncludeMetricArrayInput)(nil)).Elem(), MetricStreamStatisticsConfigurationIncludeMetricArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetEventBusesEventBusInput)(nil)).Elem(), GetEventBusesEventBusArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetEventBusesEventBusArrayInput)(nil)).Elem(), GetEventBusesEventBusArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetLogDataProtectionPolicyDocumentStatementInput)(nil)).Elem(), GetLogDataProtectionPolicyDocumentStatementArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetLogDataProtectionPolicyDocumentStatementArrayInput)(nil)).Elem(), GetLogDataProtectionPolicyDocumentStatementArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetLogDataProtectionPolicyDocumentStatementOperationInput)(nil)).Elem(), GetLogDataProtectionPolicyDocumentStatementOperationArgs{}) @@ -8687,6 +9078,10 @@ func init() { pulumi.RegisterOutputType(InternetMonitorInternetMeasurementsLogDeliveryPtrOutput{}) pulumi.RegisterOutputType(InternetMonitorInternetMeasurementsLogDeliveryS3ConfigOutput{}) pulumi.RegisterOutputType(InternetMonitorInternetMeasurementsLogDeliveryS3ConfigPtrOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationDeliveryDestinationConfigurationOutput{}) + pulumi.RegisterOutputType(LogDeliveryDestinationDeliveryDestinationConfigurationPtrOutput{}) + pulumi.RegisterOutputType(LogDeliveryS3DeliveryConfigurationOutput{}) + pulumi.RegisterOutputType(LogDeliveryS3DeliveryConfigurationArrayOutput{}) pulumi.RegisterOutputType(LogMetricFilterMetricTransformationOutput{}) pulumi.RegisterOutputType(LogMetricFilterMetricTransformationPtrOutput{}) pulumi.RegisterOutputType(MetricAlarmMetricQueryOutput{}) @@ -8701,6 +9096,8 @@ func init() { pulumi.RegisterOutputType(MetricStreamStatisticsConfigurationArrayOutput{}) pulumi.RegisterOutputType(MetricStreamStatisticsConfigurationIncludeMetricOutput{}) pulumi.RegisterOutputType(MetricStreamStatisticsConfigurationIncludeMetricArrayOutput{}) + pulumi.RegisterOutputType(GetEventBusesEventBusOutput{}) + pulumi.RegisterOutputType(GetEventBusesEventBusArrayOutput{}) pulumi.RegisterOutputType(GetLogDataProtectionPolicyDocumentStatementOutput{}) pulumi.RegisterOutputType(GetLogDataProtectionPolicyDocumentStatementArrayOutput{}) pulumi.RegisterOutputType(GetLogDataProtectionPolicyDocumentStatementOperationOutput{}) diff --git a/sdk/go/aws/codebuild/fleet.go b/sdk/go/aws/codebuild/fleet.go index 500e3873f2c..dc3153e2e35 100644 --- a/sdk/go/aws/codebuild/fleet.go +++ b/sdk/go/aws/codebuild/fleet.go @@ -94,6 +94,8 @@ type Fleet struct { Arn pulumi.StringOutput `pulumi:"arn"` // Number of machines allocated to the fleet. BaseCapacity pulumi.IntOutput `pulumi:"baseCapacity"` + // The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + ComputeConfiguration FleetComputeConfigurationPtrOutput `pulumi:"computeConfiguration"` // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. ComputeType pulumi.StringOutput `pulumi:"computeType"` // Creation time of the fleet. @@ -112,7 +114,7 @@ type Fleet struct { Name pulumi.StringOutput `pulumi:"name"` // Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. OverflowBehavior pulumi.StringOutput `pulumi:"overflowBehavior"` - // Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + // Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. ScalingConfiguration FleetScalingConfigurationPtrOutput `pulumi:"scalingConfiguration"` // Nested attribute containing information about the current status of the fleet. Statuses FleetStatusArrayOutput `pulumi:"statuses"` @@ -120,7 +122,7 @@ type Fleet struct { Tags pulumi.StringMapOutput `pulumi:"tags"` // Deprecated: Please use `tags` instead. TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` - // Configuration block. Detailed below. + // Configuration block. See `vpcConfig` below. VpcConfigs FleetVpcConfigArrayOutput `pulumi:"vpcConfigs"` } @@ -167,6 +169,8 @@ type fleetState struct { Arn *string `pulumi:"arn"` // Number of machines allocated to the fleet. BaseCapacity *int `pulumi:"baseCapacity"` + // The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + ComputeConfiguration *FleetComputeConfiguration `pulumi:"computeConfiguration"` // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. ComputeType *string `pulumi:"computeType"` // Creation time of the fleet. @@ -185,7 +189,7 @@ type fleetState struct { Name *string `pulumi:"name"` // Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. OverflowBehavior *string `pulumi:"overflowBehavior"` - // Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + // Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. ScalingConfiguration *FleetScalingConfiguration `pulumi:"scalingConfiguration"` // Nested attribute containing information about the current status of the fleet. Statuses []FleetStatus `pulumi:"statuses"` @@ -193,7 +197,7 @@ type fleetState struct { Tags map[string]string `pulumi:"tags"` // Deprecated: Please use `tags` instead. TagsAll map[string]string `pulumi:"tagsAll"` - // Configuration block. Detailed below. + // Configuration block. See `vpcConfig` below. VpcConfigs []FleetVpcConfig `pulumi:"vpcConfigs"` } @@ -202,6 +206,8 @@ type FleetState struct { Arn pulumi.StringPtrInput // Number of machines allocated to the fleet. BaseCapacity pulumi.IntPtrInput + // The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + ComputeConfiguration FleetComputeConfigurationPtrInput // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. ComputeType pulumi.StringPtrInput // Creation time of the fleet. @@ -220,7 +226,7 @@ type FleetState struct { Name pulumi.StringPtrInput // Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. OverflowBehavior pulumi.StringPtrInput - // Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + // Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. ScalingConfiguration FleetScalingConfigurationPtrInput // Nested attribute containing information about the current status of the fleet. Statuses FleetStatusArrayInput @@ -228,7 +234,7 @@ type FleetState struct { Tags pulumi.StringMapInput // Deprecated: Please use `tags` instead. TagsAll pulumi.StringMapInput - // Configuration block. Detailed below. + // Configuration block. See `vpcConfig` below. VpcConfigs FleetVpcConfigArrayInput } @@ -239,6 +245,8 @@ func (FleetState) ElementType() reflect.Type { type fleetArgs struct { // Number of machines allocated to the fleet. BaseCapacity int `pulumi:"baseCapacity"` + // The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + ComputeConfiguration *FleetComputeConfiguration `pulumi:"computeConfiguration"` // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. ComputeType string `pulumi:"computeType"` // Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. @@ -253,11 +261,11 @@ type fleetArgs struct { Name *string `pulumi:"name"` // Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. OverflowBehavior *string `pulumi:"overflowBehavior"` - // Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + // Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. ScalingConfiguration *FleetScalingConfiguration `pulumi:"scalingConfiguration"` // Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags map[string]string `pulumi:"tags"` - // Configuration block. Detailed below. + // Configuration block. See `vpcConfig` below. VpcConfigs []FleetVpcConfig `pulumi:"vpcConfigs"` } @@ -265,6 +273,8 @@ type fleetArgs struct { type FleetArgs struct { // Number of machines allocated to the fleet. BaseCapacity pulumi.IntInput + // The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + ComputeConfiguration FleetComputeConfigurationPtrInput // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. ComputeType pulumi.StringInput // Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. @@ -279,11 +289,11 @@ type FleetArgs struct { Name pulumi.StringPtrInput // Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. OverflowBehavior pulumi.StringPtrInput - // Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + // Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. ScalingConfiguration FleetScalingConfigurationPtrInput // Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapInput - // Configuration block. Detailed below. + // Configuration block. See `vpcConfig` below. VpcConfigs FleetVpcConfigArrayInput } @@ -384,6 +394,11 @@ func (o FleetOutput) BaseCapacity() pulumi.IntOutput { return o.ApplyT(func(v *Fleet) pulumi.IntOutput { return v.BaseCapacity }).(pulumi.IntOutput) } +// The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. +func (o FleetOutput) ComputeConfiguration() FleetComputeConfigurationPtrOutput { + return o.ApplyT(func(v *Fleet) FleetComputeConfigurationPtrOutput { return v.ComputeConfiguration }).(FleetComputeConfigurationPtrOutput) +} + // Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. func (o FleetOutput) ComputeType() pulumi.StringOutput { return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.ComputeType }).(pulumi.StringOutput) @@ -426,7 +441,7 @@ func (o FleetOutput) OverflowBehavior() pulumi.StringOutput { return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.OverflowBehavior }).(pulumi.StringOutput) } -// Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. +// Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. func (o FleetOutput) ScalingConfiguration() FleetScalingConfigurationPtrOutput { return o.ApplyT(func(v *Fleet) FleetScalingConfigurationPtrOutput { return v.ScalingConfiguration }).(FleetScalingConfigurationPtrOutput) } @@ -446,7 +461,7 @@ func (o FleetOutput) TagsAll() pulumi.StringMapOutput { return o.ApplyT(func(v *Fleet) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) } -// Configuration block. Detailed below. +// Configuration block. See `vpcConfig` below. func (o FleetOutput) VpcConfigs() FleetVpcConfigArrayOutput { return o.ApplyT(func(v *Fleet) FleetVpcConfigArrayOutput { return v.VpcConfigs }).(FleetVpcConfigArrayOutput) } diff --git a/sdk/go/aws/codebuild/getFleet.go b/sdk/go/aws/codebuild/getFleet.go index 3f2c757fe42..20e47798545 100644 --- a/sdk/go/aws/codebuild/getFleet.go +++ b/sdk/go/aws/codebuild/getFleet.go @@ -105,6 +105,8 @@ type LookupFleetResult struct { Arn string `pulumi:"arn"` // Number of machines allocated to the fleet. BaseCapacity int `pulumi:"baseCapacity"` + // Compute configuration of the compute fleet. + ComputeConfigurations []GetFleetComputeConfiguration `pulumi:"computeConfigurations"` // Compute resources the compute fleet uses. ComputeType string `pulumi:"computeType"` // Creation time of the fleet. @@ -178,6 +180,11 @@ func (o LookupFleetResultOutput) BaseCapacity() pulumi.IntOutput { return o.ApplyT(func(v LookupFleetResult) int { return v.BaseCapacity }).(pulumi.IntOutput) } +// Compute configuration of the compute fleet. +func (o LookupFleetResultOutput) ComputeConfigurations() GetFleetComputeConfigurationArrayOutput { + return o.ApplyT(func(v LookupFleetResult) []GetFleetComputeConfiguration { return v.ComputeConfigurations }).(GetFleetComputeConfigurationArrayOutput) +} + // Compute resources the compute fleet uses. func (o LookupFleetResultOutput) ComputeType() pulumi.StringOutput { return o.ApplyT(func(v LookupFleetResult) string { return v.ComputeType }).(pulumi.StringOutput) diff --git a/sdk/go/aws/codebuild/pulumiTypes.go b/sdk/go/aws/codebuild/pulumiTypes.go index d2634cc7a88..2b0c2026ba6 100644 --- a/sdk/go/aws/codebuild/pulumiTypes.go +++ b/sdk/go/aws/codebuild/pulumiTypes.go @@ -13,6 +13,200 @@ import ( var _ = internal.GetEnvOrDefault +type FleetComputeConfiguration struct { + // Amount of disk space of the instance type included in the fleet. + Disk *int `pulumi:"disk"` + // Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + MachineType *string `pulumi:"machineType"` + // Amount of memory of the instance type included in the fleet. + Memory *int `pulumi:"memory"` + // Number of vCPUs of the instance type included in the fleet. + Vcpu *int `pulumi:"vcpu"` +} + +// FleetComputeConfigurationInput is an input type that accepts FleetComputeConfigurationArgs and FleetComputeConfigurationOutput values. +// You can construct a concrete instance of `FleetComputeConfigurationInput` via: +// +// FleetComputeConfigurationArgs{...} +type FleetComputeConfigurationInput interface { + pulumi.Input + + ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput + ToFleetComputeConfigurationOutputWithContext(context.Context) FleetComputeConfigurationOutput +} + +type FleetComputeConfigurationArgs struct { + // Amount of disk space of the instance type included in the fleet. + Disk pulumi.IntPtrInput `pulumi:"disk"` + // Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + MachineType pulumi.StringPtrInput `pulumi:"machineType"` + // Amount of memory of the instance type included in the fleet. + Memory pulumi.IntPtrInput `pulumi:"memory"` + // Number of vCPUs of the instance type included in the fleet. + Vcpu pulumi.IntPtrInput `pulumi:"vcpu"` +} + +func (FleetComputeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfiguration)(nil)).Elem() +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput { + return i.ToFleetComputeConfigurationOutputWithContext(context.Background()) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationOutputWithContext(ctx context.Context) FleetComputeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationOutput) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return i.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationOutput).ToFleetComputeConfigurationPtrOutputWithContext(ctx) +} + +// FleetComputeConfigurationPtrInput is an input type that accepts FleetComputeConfigurationArgs, FleetComputeConfigurationPtr and FleetComputeConfigurationPtrOutput values. +// You can construct a concrete instance of `FleetComputeConfigurationPtrInput` via: +// +// FleetComputeConfigurationArgs{...} +// +// or: +// +// nil +type FleetComputeConfigurationPtrInput interface { + pulumi.Input + + ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput + ToFleetComputeConfigurationPtrOutputWithContext(context.Context) FleetComputeConfigurationPtrOutput +} + +type fleetComputeConfigurationPtrType FleetComputeConfigurationArgs + +func FleetComputeConfigurationPtr(v *FleetComputeConfigurationArgs) FleetComputeConfigurationPtrInput { + return (*fleetComputeConfigurationPtrType)(v) +} + +func (*fleetComputeConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetComputeConfiguration)(nil)).Elem() +} + +func (i *fleetComputeConfigurationPtrType) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return i.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *fleetComputeConfigurationPtrType) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationPtrOutput) +} + +type FleetComputeConfigurationOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfiguration)(nil)).Elem() +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput { + return o +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationOutputWithContext(ctx context.Context) FleetComputeConfigurationOutput { + return o +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return o.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetComputeConfiguration) *FleetComputeConfiguration { + return &v + }).(FleetComputeConfigurationPtrOutput) +} + +// Amount of disk space of the instance type included in the fleet. +func (o FleetComputeConfigurationOutput) Disk() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.Disk }).(pulumi.IntPtrOutput) +} + +// Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. +func (o FleetComputeConfigurationOutput) MachineType() pulumi.StringPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *string { return v.MachineType }).(pulumi.StringPtrOutput) +} + +// Amount of memory of the instance type included in the fleet. +func (o FleetComputeConfigurationOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.Memory }).(pulumi.IntPtrOutput) +} + +// Number of vCPUs of the instance type included in the fleet. +func (o FleetComputeConfigurationOutput) Vcpu() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.Vcpu }).(pulumi.IntPtrOutput) +} + +type FleetComputeConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetComputeConfiguration)(nil)).Elem() +} + +func (o FleetComputeConfigurationPtrOutput) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return o +} + +func (o FleetComputeConfigurationPtrOutput) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return o +} + +func (o FleetComputeConfigurationPtrOutput) Elem() FleetComputeConfigurationOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) FleetComputeConfiguration { + if v != nil { + return *v + } + var ret FleetComputeConfiguration + return ret + }).(FleetComputeConfigurationOutput) +} + +// Amount of disk space of the instance type included in the fleet. +func (o FleetComputeConfigurationPtrOutput) Disk() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.Disk + }).(pulumi.IntPtrOutput) +} + +// Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. +func (o FleetComputeConfigurationPtrOutput) MachineType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *string { + if v == nil { + return nil + } + return v.MachineType + }).(pulumi.StringPtrOutput) +} + +// Amount of memory of the instance type included in the fleet. +func (o FleetComputeConfigurationPtrOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.Memory + }).(pulumi.IntPtrOutput) +} + +// Number of vCPUs of the instance type included in the fleet. +func (o FleetComputeConfigurationPtrOutput) Vcpu() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.Vcpu + }).(pulumi.IntPtrOutput) +} + type FleetScalingConfiguration struct { DesiredCapacity *int `pulumi:"desiredCapacity"` // Maximum number of instances in the fleet when auto-scaling. @@ -4975,6 +5169,130 @@ func (o WebhookScopeConfigurationPtrOutput) Scope() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type GetFleetComputeConfiguration struct { + // Amount of disk space of the instance type included in the fleet. + Disk int `pulumi:"disk"` + // Machine type of the instance type included in the fleet. + MachineType string `pulumi:"machineType"` + // Amount of memory of the instance type included in the fleet. + Memory int `pulumi:"memory"` + // Number of vCPUs of the instance type included in the fleet. + Vcpu int `pulumi:"vcpu"` +} + +// GetFleetComputeConfigurationInput is an input type that accepts GetFleetComputeConfigurationArgs and GetFleetComputeConfigurationOutput values. +// You can construct a concrete instance of `GetFleetComputeConfigurationInput` via: +// +// GetFleetComputeConfigurationArgs{...} +type GetFleetComputeConfigurationInput interface { + pulumi.Input + + ToGetFleetComputeConfigurationOutput() GetFleetComputeConfigurationOutput + ToGetFleetComputeConfigurationOutputWithContext(context.Context) GetFleetComputeConfigurationOutput +} + +type GetFleetComputeConfigurationArgs struct { + // Amount of disk space of the instance type included in the fleet. + Disk pulumi.IntInput `pulumi:"disk"` + // Machine type of the instance type included in the fleet. + MachineType pulumi.StringInput `pulumi:"machineType"` + // Amount of memory of the instance type included in the fleet. + Memory pulumi.IntInput `pulumi:"memory"` + // Number of vCPUs of the instance type included in the fleet. + Vcpu pulumi.IntInput `pulumi:"vcpu"` +} + +func (GetFleetComputeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetFleetComputeConfiguration)(nil)).Elem() +} + +func (i GetFleetComputeConfigurationArgs) ToGetFleetComputeConfigurationOutput() GetFleetComputeConfigurationOutput { + return i.ToGetFleetComputeConfigurationOutputWithContext(context.Background()) +} + +func (i GetFleetComputeConfigurationArgs) ToGetFleetComputeConfigurationOutputWithContext(ctx context.Context) GetFleetComputeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetFleetComputeConfigurationOutput) +} + +// GetFleetComputeConfigurationArrayInput is an input type that accepts GetFleetComputeConfigurationArray and GetFleetComputeConfigurationArrayOutput values. +// You can construct a concrete instance of `GetFleetComputeConfigurationArrayInput` via: +// +// GetFleetComputeConfigurationArray{ GetFleetComputeConfigurationArgs{...} } +type GetFleetComputeConfigurationArrayInput interface { + pulumi.Input + + ToGetFleetComputeConfigurationArrayOutput() GetFleetComputeConfigurationArrayOutput + ToGetFleetComputeConfigurationArrayOutputWithContext(context.Context) GetFleetComputeConfigurationArrayOutput +} + +type GetFleetComputeConfigurationArray []GetFleetComputeConfigurationInput + +func (GetFleetComputeConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetFleetComputeConfiguration)(nil)).Elem() +} + +func (i GetFleetComputeConfigurationArray) ToGetFleetComputeConfigurationArrayOutput() GetFleetComputeConfigurationArrayOutput { + return i.ToGetFleetComputeConfigurationArrayOutputWithContext(context.Background()) +} + +func (i GetFleetComputeConfigurationArray) ToGetFleetComputeConfigurationArrayOutputWithContext(ctx context.Context) GetFleetComputeConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetFleetComputeConfigurationArrayOutput) +} + +type GetFleetComputeConfigurationOutput struct{ *pulumi.OutputState } + +func (GetFleetComputeConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetFleetComputeConfiguration)(nil)).Elem() +} + +func (o GetFleetComputeConfigurationOutput) ToGetFleetComputeConfigurationOutput() GetFleetComputeConfigurationOutput { + return o +} + +func (o GetFleetComputeConfigurationOutput) ToGetFleetComputeConfigurationOutputWithContext(ctx context.Context) GetFleetComputeConfigurationOutput { + return o +} + +// Amount of disk space of the instance type included in the fleet. +func (o GetFleetComputeConfigurationOutput) Disk() pulumi.IntOutput { + return o.ApplyT(func(v GetFleetComputeConfiguration) int { return v.Disk }).(pulumi.IntOutput) +} + +// Machine type of the instance type included in the fleet. +func (o GetFleetComputeConfigurationOutput) MachineType() pulumi.StringOutput { + return o.ApplyT(func(v GetFleetComputeConfiguration) string { return v.MachineType }).(pulumi.StringOutput) +} + +// Amount of memory of the instance type included in the fleet. +func (o GetFleetComputeConfigurationOutput) Memory() pulumi.IntOutput { + return o.ApplyT(func(v GetFleetComputeConfiguration) int { return v.Memory }).(pulumi.IntOutput) +} + +// Number of vCPUs of the instance type included in the fleet. +func (o GetFleetComputeConfigurationOutput) Vcpu() pulumi.IntOutput { + return o.ApplyT(func(v GetFleetComputeConfiguration) int { return v.Vcpu }).(pulumi.IntOutput) +} + +type GetFleetComputeConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (GetFleetComputeConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetFleetComputeConfiguration)(nil)).Elem() +} + +func (o GetFleetComputeConfigurationArrayOutput) ToGetFleetComputeConfigurationArrayOutput() GetFleetComputeConfigurationArrayOutput { + return o +} + +func (o GetFleetComputeConfigurationArrayOutput) ToGetFleetComputeConfigurationArrayOutputWithContext(ctx context.Context) GetFleetComputeConfigurationArrayOutput { + return o +} + +func (o GetFleetComputeConfigurationArrayOutput) Index(i pulumi.IntInput) GetFleetComputeConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetFleetComputeConfiguration { + return vs[0].([]GetFleetComputeConfiguration)[vs[1].(int)] + }).(GetFleetComputeConfigurationOutput) +} + type GetFleetScalingConfiguration struct { // The desired number of instances in the fleet when auto-scaling. DesiredCapacity int `pulumi:"desiredCapacity"` @@ -5438,6 +5756,8 @@ func (o GetFleetVpcConfigArrayOutput) Index(i pulumi.IntInput) GetFleetVpcConfig } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationInput)(nil)).Elem(), FleetComputeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationPtrInput)(nil)).Elem(), FleetComputeConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationInput)(nil)).Elem(), FleetScalingConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationPtrInput)(nil)).Elem(), FleetScalingConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationTargetTrackingScalingConfigInput)(nil)).Elem(), FleetScalingConfigurationTargetTrackingScalingConfigArgs{}) @@ -5498,6 +5818,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*WebhookFilterGroupFilterArrayInput)(nil)).Elem(), WebhookFilterGroupFilterArray{}) pulumi.RegisterInputType(reflect.TypeOf((*WebhookScopeConfigurationInput)(nil)).Elem(), WebhookScopeConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WebhookScopeConfigurationPtrInput)(nil)).Elem(), WebhookScopeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetFleetComputeConfigurationInput)(nil)).Elem(), GetFleetComputeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetFleetComputeConfigurationArrayInput)(nil)).Elem(), GetFleetComputeConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetFleetScalingConfigurationInput)(nil)).Elem(), GetFleetScalingConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetFleetScalingConfigurationArrayInput)(nil)).Elem(), GetFleetScalingConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetFleetScalingConfigurationTargetTrackingScalingConfigInput)(nil)).Elem(), GetFleetScalingConfigurationTargetTrackingScalingConfigArgs{}) @@ -5506,6 +5828,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetFleetStatusArrayInput)(nil)).Elem(), GetFleetStatusArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetFleetVpcConfigInput)(nil)).Elem(), GetFleetVpcConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetFleetVpcConfigArrayInput)(nil)).Elem(), GetFleetVpcConfigArray{}) + pulumi.RegisterOutputType(FleetComputeConfigurationOutput{}) + pulumi.RegisterOutputType(FleetComputeConfigurationPtrOutput{}) pulumi.RegisterOutputType(FleetScalingConfigurationOutput{}) pulumi.RegisterOutputType(FleetScalingConfigurationPtrOutput{}) pulumi.RegisterOutputType(FleetScalingConfigurationTargetTrackingScalingConfigOutput{}) @@ -5566,6 +5890,8 @@ func init() { pulumi.RegisterOutputType(WebhookFilterGroupFilterArrayOutput{}) pulumi.RegisterOutputType(WebhookScopeConfigurationOutput{}) pulumi.RegisterOutputType(WebhookScopeConfigurationPtrOutput{}) + pulumi.RegisterOutputType(GetFleetComputeConfigurationOutput{}) + pulumi.RegisterOutputType(GetFleetComputeConfigurationArrayOutput{}) pulumi.RegisterOutputType(GetFleetScalingConfigurationOutput{}) pulumi.RegisterOutputType(GetFleetScalingConfigurationArrayOutput{}) pulumi.RegisterOutputType(GetFleetScalingConfigurationTargetTrackingScalingConfigOutput{}) diff --git a/sdk/go/aws/cognito/pulumiTypes.go b/sdk/go/aws/cognito/pulumiTypes.go index 1286a1ee8b1..41d5d24c46e 100644 --- a/sdk/go/aws/cognito/pulumiTypes.go +++ b/sdk/go/aws/cognito/pulumiTypes.go @@ -4258,6 +4258,162 @@ func (o UserPoolEmailConfigurationPtrOutput) SourceArn() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +type UserPoolEmailMfaConfiguration struct { + // The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + Message *string `pulumi:"message"` + // The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + Subject *string `pulumi:"subject"` +} + +// UserPoolEmailMfaConfigurationInput is an input type that accepts UserPoolEmailMfaConfigurationArgs and UserPoolEmailMfaConfigurationOutput values. +// You can construct a concrete instance of `UserPoolEmailMfaConfigurationInput` via: +// +// UserPoolEmailMfaConfigurationArgs{...} +type UserPoolEmailMfaConfigurationInput interface { + pulumi.Input + + ToUserPoolEmailMfaConfigurationOutput() UserPoolEmailMfaConfigurationOutput + ToUserPoolEmailMfaConfigurationOutputWithContext(context.Context) UserPoolEmailMfaConfigurationOutput +} + +type UserPoolEmailMfaConfigurationArgs struct { + // The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + Message pulumi.StringPtrInput `pulumi:"message"` + // The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + Subject pulumi.StringPtrInput `pulumi:"subject"` +} + +func (UserPoolEmailMfaConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolEmailMfaConfiguration)(nil)).Elem() +} + +func (i UserPoolEmailMfaConfigurationArgs) ToUserPoolEmailMfaConfigurationOutput() UserPoolEmailMfaConfigurationOutput { + return i.ToUserPoolEmailMfaConfigurationOutputWithContext(context.Background()) +} + +func (i UserPoolEmailMfaConfigurationArgs) ToUserPoolEmailMfaConfigurationOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolEmailMfaConfigurationOutput) +} + +func (i UserPoolEmailMfaConfigurationArgs) ToUserPoolEmailMfaConfigurationPtrOutput() UserPoolEmailMfaConfigurationPtrOutput { + return i.ToUserPoolEmailMfaConfigurationPtrOutputWithContext(context.Background()) +} + +func (i UserPoolEmailMfaConfigurationArgs) ToUserPoolEmailMfaConfigurationPtrOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolEmailMfaConfigurationOutput).ToUserPoolEmailMfaConfigurationPtrOutputWithContext(ctx) +} + +// UserPoolEmailMfaConfigurationPtrInput is an input type that accepts UserPoolEmailMfaConfigurationArgs, UserPoolEmailMfaConfigurationPtr and UserPoolEmailMfaConfigurationPtrOutput values. +// You can construct a concrete instance of `UserPoolEmailMfaConfigurationPtrInput` via: +// +// UserPoolEmailMfaConfigurationArgs{...} +// +// or: +// +// nil +type UserPoolEmailMfaConfigurationPtrInput interface { + pulumi.Input + + ToUserPoolEmailMfaConfigurationPtrOutput() UserPoolEmailMfaConfigurationPtrOutput + ToUserPoolEmailMfaConfigurationPtrOutputWithContext(context.Context) UserPoolEmailMfaConfigurationPtrOutput +} + +type userPoolEmailMfaConfigurationPtrType UserPoolEmailMfaConfigurationArgs + +func UserPoolEmailMfaConfigurationPtr(v *UserPoolEmailMfaConfigurationArgs) UserPoolEmailMfaConfigurationPtrInput { + return (*userPoolEmailMfaConfigurationPtrType)(v) +} + +func (*userPoolEmailMfaConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolEmailMfaConfiguration)(nil)).Elem() +} + +func (i *userPoolEmailMfaConfigurationPtrType) ToUserPoolEmailMfaConfigurationPtrOutput() UserPoolEmailMfaConfigurationPtrOutput { + return i.ToUserPoolEmailMfaConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *userPoolEmailMfaConfigurationPtrType) ToUserPoolEmailMfaConfigurationPtrOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolEmailMfaConfigurationPtrOutput) +} + +type UserPoolEmailMfaConfigurationOutput struct{ *pulumi.OutputState } + +func (UserPoolEmailMfaConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolEmailMfaConfiguration)(nil)).Elem() +} + +func (o UserPoolEmailMfaConfigurationOutput) ToUserPoolEmailMfaConfigurationOutput() UserPoolEmailMfaConfigurationOutput { + return o +} + +func (o UserPoolEmailMfaConfigurationOutput) ToUserPoolEmailMfaConfigurationOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationOutput { + return o +} + +func (o UserPoolEmailMfaConfigurationOutput) ToUserPoolEmailMfaConfigurationPtrOutput() UserPoolEmailMfaConfigurationPtrOutput { + return o.ToUserPoolEmailMfaConfigurationPtrOutputWithContext(context.Background()) +} + +func (o UserPoolEmailMfaConfigurationOutput) ToUserPoolEmailMfaConfigurationPtrOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserPoolEmailMfaConfiguration) *UserPoolEmailMfaConfiguration { + return &v + }).(UserPoolEmailMfaConfigurationPtrOutput) +} + +// The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. +func (o UserPoolEmailMfaConfigurationOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserPoolEmailMfaConfiguration) *string { return v.Message }).(pulumi.StringPtrOutput) +} + +// The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. +func (o UserPoolEmailMfaConfigurationOutput) Subject() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserPoolEmailMfaConfiguration) *string { return v.Subject }).(pulumi.StringPtrOutput) +} + +type UserPoolEmailMfaConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (UserPoolEmailMfaConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolEmailMfaConfiguration)(nil)).Elem() +} + +func (o UserPoolEmailMfaConfigurationPtrOutput) ToUserPoolEmailMfaConfigurationPtrOutput() UserPoolEmailMfaConfigurationPtrOutput { + return o +} + +func (o UserPoolEmailMfaConfigurationPtrOutput) ToUserPoolEmailMfaConfigurationPtrOutputWithContext(ctx context.Context) UserPoolEmailMfaConfigurationPtrOutput { + return o +} + +func (o UserPoolEmailMfaConfigurationPtrOutput) Elem() UserPoolEmailMfaConfigurationOutput { + return o.ApplyT(func(v *UserPoolEmailMfaConfiguration) UserPoolEmailMfaConfiguration { + if v != nil { + return *v + } + var ret UserPoolEmailMfaConfiguration + return ret + }).(UserPoolEmailMfaConfigurationOutput) +} + +// The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. +func (o UserPoolEmailMfaConfigurationPtrOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserPoolEmailMfaConfiguration) *string { + if v == nil { + return nil + } + return v.Message + }).(pulumi.StringPtrOutput) +} + +// The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. +func (o UserPoolEmailMfaConfigurationPtrOutput) Subject() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserPoolEmailMfaConfiguration) *string { + if v == nil { + return nil + } + return v.Subject + }).(pulumi.StringPtrOutput) +} + type UserPoolLambdaConfig struct { // ARN of the lambda creating an authentication challenge. CreateAuthChallenge *string `pulumi:"createAuthChallenge"` @@ -5826,6 +5982,143 @@ func (o UserPoolSchemaStringAttributeConstraintsPtrOutput) MinLength() pulumi.St }).(pulumi.StringPtrOutput) } +type UserPoolSignInPolicy struct { + // The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + AllowedFirstAuthFactors []string `pulumi:"allowedFirstAuthFactors"` +} + +// UserPoolSignInPolicyInput is an input type that accepts UserPoolSignInPolicyArgs and UserPoolSignInPolicyOutput values. +// You can construct a concrete instance of `UserPoolSignInPolicyInput` via: +// +// UserPoolSignInPolicyArgs{...} +type UserPoolSignInPolicyInput interface { + pulumi.Input + + ToUserPoolSignInPolicyOutput() UserPoolSignInPolicyOutput + ToUserPoolSignInPolicyOutputWithContext(context.Context) UserPoolSignInPolicyOutput +} + +type UserPoolSignInPolicyArgs struct { + // The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + AllowedFirstAuthFactors pulumi.StringArrayInput `pulumi:"allowedFirstAuthFactors"` +} + +func (UserPoolSignInPolicyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolSignInPolicy)(nil)).Elem() +} + +func (i UserPoolSignInPolicyArgs) ToUserPoolSignInPolicyOutput() UserPoolSignInPolicyOutput { + return i.ToUserPoolSignInPolicyOutputWithContext(context.Background()) +} + +func (i UserPoolSignInPolicyArgs) ToUserPoolSignInPolicyOutputWithContext(ctx context.Context) UserPoolSignInPolicyOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolSignInPolicyOutput) +} + +func (i UserPoolSignInPolicyArgs) ToUserPoolSignInPolicyPtrOutput() UserPoolSignInPolicyPtrOutput { + return i.ToUserPoolSignInPolicyPtrOutputWithContext(context.Background()) +} + +func (i UserPoolSignInPolicyArgs) ToUserPoolSignInPolicyPtrOutputWithContext(ctx context.Context) UserPoolSignInPolicyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolSignInPolicyOutput).ToUserPoolSignInPolicyPtrOutputWithContext(ctx) +} + +// UserPoolSignInPolicyPtrInput is an input type that accepts UserPoolSignInPolicyArgs, UserPoolSignInPolicyPtr and UserPoolSignInPolicyPtrOutput values. +// You can construct a concrete instance of `UserPoolSignInPolicyPtrInput` via: +// +// UserPoolSignInPolicyArgs{...} +// +// or: +// +// nil +type UserPoolSignInPolicyPtrInput interface { + pulumi.Input + + ToUserPoolSignInPolicyPtrOutput() UserPoolSignInPolicyPtrOutput + ToUserPoolSignInPolicyPtrOutputWithContext(context.Context) UserPoolSignInPolicyPtrOutput +} + +type userPoolSignInPolicyPtrType UserPoolSignInPolicyArgs + +func UserPoolSignInPolicyPtr(v *UserPoolSignInPolicyArgs) UserPoolSignInPolicyPtrInput { + return (*userPoolSignInPolicyPtrType)(v) +} + +func (*userPoolSignInPolicyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolSignInPolicy)(nil)).Elem() +} + +func (i *userPoolSignInPolicyPtrType) ToUserPoolSignInPolicyPtrOutput() UserPoolSignInPolicyPtrOutput { + return i.ToUserPoolSignInPolicyPtrOutputWithContext(context.Background()) +} + +func (i *userPoolSignInPolicyPtrType) ToUserPoolSignInPolicyPtrOutputWithContext(ctx context.Context) UserPoolSignInPolicyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolSignInPolicyPtrOutput) +} + +type UserPoolSignInPolicyOutput struct{ *pulumi.OutputState } + +func (UserPoolSignInPolicyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolSignInPolicy)(nil)).Elem() +} + +func (o UserPoolSignInPolicyOutput) ToUserPoolSignInPolicyOutput() UserPoolSignInPolicyOutput { + return o +} + +func (o UserPoolSignInPolicyOutput) ToUserPoolSignInPolicyOutputWithContext(ctx context.Context) UserPoolSignInPolicyOutput { + return o +} + +func (o UserPoolSignInPolicyOutput) ToUserPoolSignInPolicyPtrOutput() UserPoolSignInPolicyPtrOutput { + return o.ToUserPoolSignInPolicyPtrOutputWithContext(context.Background()) +} + +func (o UserPoolSignInPolicyOutput) ToUserPoolSignInPolicyPtrOutputWithContext(ctx context.Context) UserPoolSignInPolicyPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserPoolSignInPolicy) *UserPoolSignInPolicy { + return &v + }).(UserPoolSignInPolicyPtrOutput) +} + +// The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. +func (o UserPoolSignInPolicyOutput) AllowedFirstAuthFactors() pulumi.StringArrayOutput { + return o.ApplyT(func(v UserPoolSignInPolicy) []string { return v.AllowedFirstAuthFactors }).(pulumi.StringArrayOutput) +} + +type UserPoolSignInPolicyPtrOutput struct{ *pulumi.OutputState } + +func (UserPoolSignInPolicyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolSignInPolicy)(nil)).Elem() +} + +func (o UserPoolSignInPolicyPtrOutput) ToUserPoolSignInPolicyPtrOutput() UserPoolSignInPolicyPtrOutput { + return o +} + +func (o UserPoolSignInPolicyPtrOutput) ToUserPoolSignInPolicyPtrOutputWithContext(ctx context.Context) UserPoolSignInPolicyPtrOutput { + return o +} + +func (o UserPoolSignInPolicyPtrOutput) Elem() UserPoolSignInPolicyOutput { + return o.ApplyT(func(v *UserPoolSignInPolicy) UserPoolSignInPolicy { + if v != nil { + return *v + } + var ret UserPoolSignInPolicy + return ret + }).(UserPoolSignInPolicyOutput) +} + +// The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. +func (o UserPoolSignInPolicyPtrOutput) AllowedFirstAuthFactors() pulumi.StringArrayOutput { + return o.ApplyT(func(v *UserPoolSignInPolicy) []string { + if v == nil { + return nil + } + return v.AllowedFirstAuthFactors + }).(pulumi.StringArrayOutput) +} + type UserPoolSmsConfiguration struct { // External ID used in IAM role trust relationships. For more information about using external IDs, see [How to Use an External ID When Granting Access to Your AWS Resources to a Third Party](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). ExternalId string `pulumi:"externalId"` @@ -6783,6 +7076,162 @@ func (o UserPoolVerificationMessageTemplatePtrOutput) SmsMessage() pulumi.String }).(pulumi.StringPtrOutput) } +type UserPoolWebAuthnConfiguration struct { + // The authentication domain that passkeys providers use as a relying party. + RelyingPartyId *string `pulumi:"relyingPartyId"` + // If your user pool should require a passkey. Must be one of `required` or `preferred`. + UserVerification *string `pulumi:"userVerification"` +} + +// UserPoolWebAuthnConfigurationInput is an input type that accepts UserPoolWebAuthnConfigurationArgs and UserPoolWebAuthnConfigurationOutput values. +// You can construct a concrete instance of `UserPoolWebAuthnConfigurationInput` via: +// +// UserPoolWebAuthnConfigurationArgs{...} +type UserPoolWebAuthnConfigurationInput interface { + pulumi.Input + + ToUserPoolWebAuthnConfigurationOutput() UserPoolWebAuthnConfigurationOutput + ToUserPoolWebAuthnConfigurationOutputWithContext(context.Context) UserPoolWebAuthnConfigurationOutput +} + +type UserPoolWebAuthnConfigurationArgs struct { + // The authentication domain that passkeys providers use as a relying party. + RelyingPartyId pulumi.StringPtrInput `pulumi:"relyingPartyId"` + // If your user pool should require a passkey. Must be one of `required` or `preferred`. + UserVerification pulumi.StringPtrInput `pulumi:"userVerification"` +} + +func (UserPoolWebAuthnConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolWebAuthnConfiguration)(nil)).Elem() +} + +func (i UserPoolWebAuthnConfigurationArgs) ToUserPoolWebAuthnConfigurationOutput() UserPoolWebAuthnConfigurationOutput { + return i.ToUserPoolWebAuthnConfigurationOutputWithContext(context.Background()) +} + +func (i UserPoolWebAuthnConfigurationArgs) ToUserPoolWebAuthnConfigurationOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolWebAuthnConfigurationOutput) +} + +func (i UserPoolWebAuthnConfigurationArgs) ToUserPoolWebAuthnConfigurationPtrOutput() UserPoolWebAuthnConfigurationPtrOutput { + return i.ToUserPoolWebAuthnConfigurationPtrOutputWithContext(context.Background()) +} + +func (i UserPoolWebAuthnConfigurationArgs) ToUserPoolWebAuthnConfigurationPtrOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolWebAuthnConfigurationOutput).ToUserPoolWebAuthnConfigurationPtrOutputWithContext(ctx) +} + +// UserPoolWebAuthnConfigurationPtrInput is an input type that accepts UserPoolWebAuthnConfigurationArgs, UserPoolWebAuthnConfigurationPtr and UserPoolWebAuthnConfigurationPtrOutput values. +// You can construct a concrete instance of `UserPoolWebAuthnConfigurationPtrInput` via: +// +// UserPoolWebAuthnConfigurationArgs{...} +// +// or: +// +// nil +type UserPoolWebAuthnConfigurationPtrInput interface { + pulumi.Input + + ToUserPoolWebAuthnConfigurationPtrOutput() UserPoolWebAuthnConfigurationPtrOutput + ToUserPoolWebAuthnConfigurationPtrOutputWithContext(context.Context) UserPoolWebAuthnConfigurationPtrOutput +} + +type userPoolWebAuthnConfigurationPtrType UserPoolWebAuthnConfigurationArgs + +func UserPoolWebAuthnConfigurationPtr(v *UserPoolWebAuthnConfigurationArgs) UserPoolWebAuthnConfigurationPtrInput { + return (*userPoolWebAuthnConfigurationPtrType)(v) +} + +func (*userPoolWebAuthnConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolWebAuthnConfiguration)(nil)).Elem() +} + +func (i *userPoolWebAuthnConfigurationPtrType) ToUserPoolWebAuthnConfigurationPtrOutput() UserPoolWebAuthnConfigurationPtrOutput { + return i.ToUserPoolWebAuthnConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *userPoolWebAuthnConfigurationPtrType) ToUserPoolWebAuthnConfigurationPtrOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserPoolWebAuthnConfigurationPtrOutput) +} + +type UserPoolWebAuthnConfigurationOutput struct{ *pulumi.OutputState } + +func (UserPoolWebAuthnConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserPoolWebAuthnConfiguration)(nil)).Elem() +} + +func (o UserPoolWebAuthnConfigurationOutput) ToUserPoolWebAuthnConfigurationOutput() UserPoolWebAuthnConfigurationOutput { + return o +} + +func (o UserPoolWebAuthnConfigurationOutput) ToUserPoolWebAuthnConfigurationOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationOutput { + return o +} + +func (o UserPoolWebAuthnConfigurationOutput) ToUserPoolWebAuthnConfigurationPtrOutput() UserPoolWebAuthnConfigurationPtrOutput { + return o.ToUserPoolWebAuthnConfigurationPtrOutputWithContext(context.Background()) +} + +func (o UserPoolWebAuthnConfigurationOutput) ToUserPoolWebAuthnConfigurationPtrOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserPoolWebAuthnConfiguration) *UserPoolWebAuthnConfiguration { + return &v + }).(UserPoolWebAuthnConfigurationPtrOutput) +} + +// The authentication domain that passkeys providers use as a relying party. +func (o UserPoolWebAuthnConfigurationOutput) RelyingPartyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserPoolWebAuthnConfiguration) *string { return v.RelyingPartyId }).(pulumi.StringPtrOutput) +} + +// If your user pool should require a passkey. Must be one of `required` or `preferred`. +func (o UserPoolWebAuthnConfigurationOutput) UserVerification() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserPoolWebAuthnConfiguration) *string { return v.UserVerification }).(pulumi.StringPtrOutput) +} + +type UserPoolWebAuthnConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (UserPoolWebAuthnConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserPoolWebAuthnConfiguration)(nil)).Elem() +} + +func (o UserPoolWebAuthnConfigurationPtrOutput) ToUserPoolWebAuthnConfigurationPtrOutput() UserPoolWebAuthnConfigurationPtrOutput { + return o +} + +func (o UserPoolWebAuthnConfigurationPtrOutput) ToUserPoolWebAuthnConfigurationPtrOutputWithContext(ctx context.Context) UserPoolWebAuthnConfigurationPtrOutput { + return o +} + +func (o UserPoolWebAuthnConfigurationPtrOutput) Elem() UserPoolWebAuthnConfigurationOutput { + return o.ApplyT(func(v *UserPoolWebAuthnConfiguration) UserPoolWebAuthnConfiguration { + if v != nil { + return *v + } + var ret UserPoolWebAuthnConfiguration + return ret + }).(UserPoolWebAuthnConfigurationOutput) +} + +// The authentication domain that passkeys providers use as a relying party. +func (o UserPoolWebAuthnConfigurationPtrOutput) RelyingPartyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserPoolWebAuthnConfiguration) *string { + if v == nil { + return nil + } + return v.RelyingPartyId + }).(pulumi.StringPtrOutput) +} + +// If your user pool should require a passkey. Must be one of `required` or `preferred`. +func (o UserPoolWebAuthnConfigurationPtrOutput) UserVerification() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserPoolWebAuthnConfiguration) *string { + if v == nil { + return nil + } + return v.UserVerification + }).(pulumi.StringPtrOutput) +} + type GetIdentityPoolCognitoIdentityProvider struct { ClientId string `pulumi:"clientId"` ProviderName string `pulumi:"providerName"` @@ -8848,6 +9297,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*UserPoolDeviceConfigurationPtrInput)(nil)).Elem(), UserPoolDeviceConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolEmailConfigurationInput)(nil)).Elem(), UserPoolEmailConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolEmailConfigurationPtrInput)(nil)).Elem(), UserPoolEmailConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolEmailMfaConfigurationInput)(nil)).Elem(), UserPoolEmailMfaConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolEmailMfaConfigurationPtrInput)(nil)).Elem(), UserPoolEmailMfaConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolLambdaConfigInput)(nil)).Elem(), UserPoolLambdaConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolLambdaConfigPtrInput)(nil)).Elem(), UserPoolLambdaConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolLambdaConfigCustomEmailSenderInput)(nil)).Elem(), UserPoolLambdaConfigCustomEmailSenderArgs{}) @@ -8864,6 +9315,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSchemaNumberAttributeConstraintsPtrInput)(nil)).Elem(), UserPoolSchemaNumberAttributeConstraintsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSchemaStringAttributeConstraintsInput)(nil)).Elem(), UserPoolSchemaStringAttributeConstraintsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSchemaStringAttributeConstraintsPtrInput)(nil)).Elem(), UserPoolSchemaStringAttributeConstraintsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSignInPolicyInput)(nil)).Elem(), UserPoolSignInPolicyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSignInPolicyPtrInput)(nil)).Elem(), UserPoolSignInPolicyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSmsConfigurationInput)(nil)).Elem(), UserPoolSmsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSmsConfigurationPtrInput)(nil)).Elem(), UserPoolSmsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolSoftwareTokenMfaConfigurationInput)(nil)).Elem(), UserPoolSoftwareTokenMfaConfigurationArgs{}) @@ -8876,6 +9329,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*UserPoolUsernameConfigurationPtrInput)(nil)).Elem(), UserPoolUsernameConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolVerificationMessageTemplateInput)(nil)).Elem(), UserPoolVerificationMessageTemplateArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserPoolVerificationMessageTemplatePtrInput)(nil)).Elem(), UserPoolVerificationMessageTemplateArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolWebAuthnConfigurationInput)(nil)).Elem(), UserPoolWebAuthnConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserPoolWebAuthnConfigurationPtrInput)(nil)).Elem(), UserPoolWebAuthnConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetIdentityPoolCognitoIdentityProviderInput)(nil)).Elem(), GetIdentityPoolCognitoIdentityProviderArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetIdentityPoolCognitoIdentityProviderArrayInput)(nil)).Elem(), GetIdentityPoolCognitoIdentityProviderArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetUserGroupsGroupInput)(nil)).Elem(), GetUserGroupsGroupArgs{}) @@ -8962,6 +9417,8 @@ func init() { pulumi.RegisterOutputType(UserPoolDeviceConfigurationPtrOutput{}) pulumi.RegisterOutputType(UserPoolEmailConfigurationOutput{}) pulumi.RegisterOutputType(UserPoolEmailConfigurationPtrOutput{}) + pulumi.RegisterOutputType(UserPoolEmailMfaConfigurationOutput{}) + pulumi.RegisterOutputType(UserPoolEmailMfaConfigurationPtrOutput{}) pulumi.RegisterOutputType(UserPoolLambdaConfigOutput{}) pulumi.RegisterOutputType(UserPoolLambdaConfigPtrOutput{}) pulumi.RegisterOutputType(UserPoolLambdaConfigCustomEmailSenderOutput{}) @@ -8978,6 +9435,8 @@ func init() { pulumi.RegisterOutputType(UserPoolSchemaNumberAttributeConstraintsPtrOutput{}) pulumi.RegisterOutputType(UserPoolSchemaStringAttributeConstraintsOutput{}) pulumi.RegisterOutputType(UserPoolSchemaStringAttributeConstraintsPtrOutput{}) + pulumi.RegisterOutputType(UserPoolSignInPolicyOutput{}) + pulumi.RegisterOutputType(UserPoolSignInPolicyPtrOutput{}) pulumi.RegisterOutputType(UserPoolSmsConfigurationOutput{}) pulumi.RegisterOutputType(UserPoolSmsConfigurationPtrOutput{}) pulumi.RegisterOutputType(UserPoolSoftwareTokenMfaConfigurationOutput{}) @@ -8990,6 +9449,8 @@ func init() { pulumi.RegisterOutputType(UserPoolUsernameConfigurationPtrOutput{}) pulumi.RegisterOutputType(UserPoolVerificationMessageTemplateOutput{}) pulumi.RegisterOutputType(UserPoolVerificationMessageTemplatePtrOutput{}) + pulumi.RegisterOutputType(UserPoolWebAuthnConfigurationOutput{}) + pulumi.RegisterOutputType(UserPoolWebAuthnConfigurationPtrOutput{}) pulumi.RegisterOutputType(GetIdentityPoolCognitoIdentityProviderOutput{}) pulumi.RegisterOutputType(GetIdentityPoolCognitoIdentityProviderArrayOutput{}) pulumi.RegisterOutputType(GetUserGroupsGroupOutput{}) diff --git a/sdk/go/aws/cognito/userPool.go b/sdk/go/aws/cognito/userPool.go index 65b913ba406..6d650c160bf 100644 --- a/sdk/go/aws/cognito/userPool.go +++ b/sdk/go/aws/cognito/userPool.go @@ -146,6 +146,8 @@ type UserPool struct { Domain pulumi.StringOutput `pulumi:"domain"` // Configuration block for configuring email. Detailed below. EmailConfiguration UserPoolEmailConfigurationPtrOutput `pulumi:"emailConfiguration"` + // Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + EmailMfaConfiguration UserPoolEmailMfaConfigurationPtrOutput `pulumi:"emailMfaConfiguration"` // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. EmailVerificationMessage pulumi.StringOutput `pulumi:"emailVerificationMessage"` // String representing the email verification subject. Conflicts with `verificationMessageTemplate` configuration block `emailSubject` argument. @@ -168,6 +170,8 @@ type UserPool struct { PasswordPolicy UserPoolPasswordPolicyOutput `pulumi:"passwordPolicy"` // Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. Schemas UserPoolSchemaArrayOutput `pulumi:"schemas"` + // Configuration block for information about the user pool sign in policy. Detailed below. + SignInPolicy UserPoolSignInPolicyOutput `pulumi:"signInPolicy"` // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. SmsAuthenticationMessage pulumi.StringPtrOutput `pulumi:"smsAuthenticationMessage"` // Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. @@ -186,12 +190,16 @@ type UserPool struct { UserAttributeUpdateSettings UserPoolUserAttributeUpdateSettingsPtrOutput `pulumi:"userAttributeUpdateSettings"` // Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. UserPoolAddOns UserPoolUserPoolAddOnsPtrOutput `pulumi:"userPoolAddOns"` + // The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + UserPoolTier pulumi.StringOutput `pulumi:"userPoolTier"` // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. UsernameAttributes pulumi.StringArrayOutput `pulumi:"usernameAttributes"` // Configuration block for username configuration. Detailed below. UsernameConfiguration UserPoolUsernameConfigurationPtrOutput `pulumi:"usernameConfiguration"` // Configuration block for verification message templates. Detailed below. VerificationMessageTemplate UserPoolVerificationMessageTemplateOutput `pulumi:"verificationMessageTemplate"` + // Configuration block for web authn configuration. Detailed below. + WebAuthnConfiguration UserPoolWebAuthnConfigurationPtrOutput `pulumi:"webAuthnConfiguration"` } // NewUserPool registers a new resource with the given unique name, arguments, and options. @@ -246,6 +254,8 @@ type userPoolState struct { Domain *string `pulumi:"domain"` // Configuration block for configuring email. Detailed below. EmailConfiguration *UserPoolEmailConfiguration `pulumi:"emailConfiguration"` + // Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + EmailMfaConfiguration *UserPoolEmailMfaConfiguration `pulumi:"emailMfaConfiguration"` // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. EmailVerificationMessage *string `pulumi:"emailVerificationMessage"` // String representing the email verification subject. Conflicts with `verificationMessageTemplate` configuration block `emailSubject` argument. @@ -268,6 +278,8 @@ type userPoolState struct { PasswordPolicy *UserPoolPasswordPolicy `pulumi:"passwordPolicy"` // Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. Schemas []UserPoolSchema `pulumi:"schemas"` + // Configuration block for information about the user pool sign in policy. Detailed below. + SignInPolicy *UserPoolSignInPolicy `pulumi:"signInPolicy"` // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. SmsAuthenticationMessage *string `pulumi:"smsAuthenticationMessage"` // Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. @@ -286,12 +298,16 @@ type userPoolState struct { UserAttributeUpdateSettings *UserPoolUserAttributeUpdateSettings `pulumi:"userAttributeUpdateSettings"` // Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. UserPoolAddOns *UserPoolUserPoolAddOns `pulumi:"userPoolAddOns"` + // The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + UserPoolTier *string `pulumi:"userPoolTier"` // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. UsernameAttributes []string `pulumi:"usernameAttributes"` // Configuration block for username configuration. Detailed below. UsernameConfiguration *UserPoolUsernameConfiguration `pulumi:"usernameConfiguration"` // Configuration block for verification message templates. Detailed below. VerificationMessageTemplate *UserPoolVerificationMessageTemplate `pulumi:"verificationMessageTemplate"` + // Configuration block for web authn configuration. Detailed below. + WebAuthnConfiguration *UserPoolWebAuthnConfiguration `pulumi:"webAuthnConfiguration"` } type UserPoolState struct { @@ -317,6 +333,8 @@ type UserPoolState struct { Domain pulumi.StringPtrInput // Configuration block for configuring email. Detailed below. EmailConfiguration UserPoolEmailConfigurationPtrInput + // Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + EmailMfaConfiguration UserPoolEmailMfaConfigurationPtrInput // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. EmailVerificationMessage pulumi.StringPtrInput // String representing the email verification subject. Conflicts with `verificationMessageTemplate` configuration block `emailSubject` argument. @@ -339,6 +357,8 @@ type UserPoolState struct { PasswordPolicy UserPoolPasswordPolicyPtrInput // Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. Schemas UserPoolSchemaArrayInput + // Configuration block for information about the user pool sign in policy. Detailed below. + SignInPolicy UserPoolSignInPolicyPtrInput // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. SmsAuthenticationMessage pulumi.StringPtrInput // Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. @@ -357,12 +377,16 @@ type UserPoolState struct { UserAttributeUpdateSettings UserPoolUserAttributeUpdateSettingsPtrInput // Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. UserPoolAddOns UserPoolUserPoolAddOnsPtrInput + // The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + UserPoolTier pulumi.StringPtrInput // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. UsernameAttributes pulumi.StringArrayInput // Configuration block for username configuration. Detailed below. UsernameConfiguration UserPoolUsernameConfigurationPtrInput // Configuration block for verification message templates. Detailed below. VerificationMessageTemplate UserPoolVerificationMessageTemplatePtrInput + // Configuration block for web authn configuration. Detailed below. + WebAuthnConfiguration UserPoolWebAuthnConfigurationPtrInput } func (UserPoolState) ElementType() reflect.Type { @@ -384,6 +408,8 @@ type userPoolArgs struct { DeviceConfiguration *UserPoolDeviceConfiguration `pulumi:"deviceConfiguration"` // Configuration block for configuring email. Detailed below. EmailConfiguration *UserPoolEmailConfiguration `pulumi:"emailConfiguration"` + // Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + EmailMfaConfiguration *UserPoolEmailMfaConfiguration `pulumi:"emailMfaConfiguration"` // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. EmailVerificationMessage *string `pulumi:"emailVerificationMessage"` // String representing the email verification subject. Conflicts with `verificationMessageTemplate` configuration block `emailSubject` argument. @@ -400,6 +426,8 @@ type userPoolArgs struct { PasswordPolicy *UserPoolPasswordPolicy `pulumi:"passwordPolicy"` // Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. Schemas []UserPoolSchema `pulumi:"schemas"` + // Configuration block for information about the user pool sign in policy. Detailed below. + SignInPolicy *UserPoolSignInPolicy `pulumi:"signInPolicy"` // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. SmsAuthenticationMessage *string `pulumi:"smsAuthenticationMessage"` // Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. @@ -414,12 +442,16 @@ type userPoolArgs struct { UserAttributeUpdateSettings *UserPoolUserAttributeUpdateSettings `pulumi:"userAttributeUpdateSettings"` // Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. UserPoolAddOns *UserPoolUserPoolAddOns `pulumi:"userPoolAddOns"` + // The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + UserPoolTier *string `pulumi:"userPoolTier"` // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. UsernameAttributes []string `pulumi:"usernameAttributes"` // Configuration block for username configuration. Detailed below. UsernameConfiguration *UserPoolUsernameConfiguration `pulumi:"usernameConfiguration"` // Configuration block for verification message templates. Detailed below. VerificationMessageTemplate *UserPoolVerificationMessageTemplate `pulumi:"verificationMessageTemplate"` + // Configuration block for web authn configuration. Detailed below. + WebAuthnConfiguration *UserPoolWebAuthnConfiguration `pulumi:"webAuthnConfiguration"` } // The set of arguments for constructing a UserPool resource. @@ -438,6 +470,8 @@ type UserPoolArgs struct { DeviceConfiguration UserPoolDeviceConfigurationPtrInput // Configuration block for configuring email. Detailed below. EmailConfiguration UserPoolEmailConfigurationPtrInput + // Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + EmailMfaConfiguration UserPoolEmailMfaConfigurationPtrInput // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. EmailVerificationMessage pulumi.StringPtrInput // String representing the email verification subject. Conflicts with `verificationMessageTemplate` configuration block `emailSubject` argument. @@ -454,6 +488,8 @@ type UserPoolArgs struct { PasswordPolicy UserPoolPasswordPolicyPtrInput // Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. Schemas UserPoolSchemaArrayInput + // Configuration block for information about the user pool sign in policy. Detailed below. + SignInPolicy UserPoolSignInPolicyPtrInput // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. SmsAuthenticationMessage pulumi.StringPtrInput // Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. @@ -468,12 +504,16 @@ type UserPoolArgs struct { UserAttributeUpdateSettings UserPoolUserAttributeUpdateSettingsPtrInput // Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. UserPoolAddOns UserPoolUserPoolAddOnsPtrInput + // The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + UserPoolTier pulumi.StringPtrInput // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. UsernameAttributes pulumi.StringArrayInput // Configuration block for username configuration. Detailed below. UsernameConfiguration UserPoolUsernameConfigurationPtrInput // Configuration block for verification message templates. Detailed below. VerificationMessageTemplate UserPoolVerificationMessageTemplatePtrInput + // Configuration block for web authn configuration. Detailed below. + WebAuthnConfiguration UserPoolWebAuthnConfigurationPtrInput } func (UserPoolArgs) ElementType() reflect.Type { @@ -618,6 +658,11 @@ func (o UserPoolOutput) EmailConfiguration() UserPoolEmailConfigurationPtrOutput return o.ApplyT(func(v *UserPool) UserPoolEmailConfigurationPtrOutput { return v.EmailConfiguration }).(UserPoolEmailConfigurationPtrOutput) } +// Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. +func (o UserPoolOutput) EmailMfaConfiguration() UserPoolEmailMfaConfigurationPtrOutput { + return o.ApplyT(func(v *UserPool) UserPoolEmailMfaConfigurationPtrOutput { return v.EmailMfaConfiguration }).(UserPoolEmailMfaConfigurationPtrOutput) +} + // String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. func (o UserPoolOutput) EmailVerificationMessage() pulumi.StringOutput { return o.ApplyT(func(v *UserPool) pulumi.StringOutput { return v.EmailVerificationMessage }).(pulumi.StringOutput) @@ -670,6 +715,11 @@ func (o UserPoolOutput) Schemas() UserPoolSchemaArrayOutput { return o.ApplyT(func(v *UserPool) UserPoolSchemaArrayOutput { return v.Schemas }).(UserPoolSchemaArrayOutput) } +// Configuration block for information about the user pool sign in policy. Detailed below. +func (o UserPoolOutput) SignInPolicy() UserPoolSignInPolicyOutput { + return o.ApplyT(func(v *UserPool) UserPoolSignInPolicyOutput { return v.SignInPolicy }).(UserPoolSignInPolicyOutput) +} + // String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. func (o UserPoolOutput) SmsAuthenticationMessage() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserPool) pulumi.StringPtrOutput { return v.SmsAuthenticationMessage }).(pulumi.StringPtrOutput) @@ -714,6 +764,11 @@ func (o UserPoolOutput) UserPoolAddOns() UserPoolUserPoolAddOnsPtrOutput { return o.ApplyT(func(v *UserPool) UserPoolUserPoolAddOnsPtrOutput { return v.UserPoolAddOns }).(UserPoolUserPoolAddOnsPtrOutput) } +// The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. +func (o UserPoolOutput) UserPoolTier() pulumi.StringOutput { + return o.ApplyT(func(v *UserPool) pulumi.StringOutput { return v.UserPoolTier }).(pulumi.StringOutput) +} + // Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. func (o UserPoolOutput) UsernameAttributes() pulumi.StringArrayOutput { return o.ApplyT(func(v *UserPool) pulumi.StringArrayOutput { return v.UsernameAttributes }).(pulumi.StringArrayOutput) @@ -729,6 +784,11 @@ func (o UserPoolOutput) VerificationMessageTemplate() UserPoolVerificationMessag return o.ApplyT(func(v *UserPool) UserPoolVerificationMessageTemplateOutput { return v.VerificationMessageTemplate }).(UserPoolVerificationMessageTemplateOutput) } +// Configuration block for web authn configuration. Detailed below. +func (o UserPoolOutput) WebAuthnConfiguration() UserPoolWebAuthnConfigurationPtrOutput { + return o.ApplyT(func(v *UserPool) UserPoolWebAuthnConfigurationPtrOutput { return v.WebAuthnConfiguration }).(UserPoolWebAuthnConfigurationPtrOutput) +} + type UserPoolArrayOutput struct{ *pulumi.OutputState } func (UserPoolArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/aws/dms/pulumiTypes.go b/sdk/go/aws/dms/pulumiTypes.go index 32dba2724dd..1d2f268c1a6 100644 --- a/sdk/go/aws/dms/pulumiTypes.go +++ b/sdk/go/aws/dms/pulumiTypes.go @@ -247,6 +247,8 @@ type EndpointKafkaSettings struct { NoHexPrefix *bool `pulumi:"noHexPrefix"` // Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. PartitionIncludeSchemaTable *bool `pulumi:"partitionIncludeSchemaTable"` + // For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + SaslMechanism *string `pulumi:"saslMechanism"` // Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. SaslPassword *string `pulumi:"saslPassword"` // Secure user name you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. @@ -297,6 +299,8 @@ type EndpointKafkaSettingsArgs struct { NoHexPrefix pulumi.BoolPtrInput `pulumi:"noHexPrefix"` // Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. PartitionIncludeSchemaTable pulumi.BoolPtrInput `pulumi:"partitionIncludeSchemaTable"` + // For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + SaslMechanism pulumi.StringPtrInput `pulumi:"saslMechanism"` // Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. SaslPassword pulumi.StringPtrInput `pulumi:"saslPassword"` // Secure user name you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. @@ -442,6 +446,11 @@ func (o EndpointKafkaSettingsOutput) PartitionIncludeSchemaTable() pulumi.BoolPt return o.ApplyT(func(v EndpointKafkaSettings) *bool { return v.PartitionIncludeSchemaTable }).(pulumi.BoolPtrOutput) } +// For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. +func (o EndpointKafkaSettingsOutput) SaslMechanism() pulumi.StringPtrOutput { + return o.ApplyT(func(v EndpointKafkaSettings) *string { return v.SaslMechanism }).(pulumi.StringPtrOutput) +} + // Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. func (o EndpointKafkaSettingsOutput) SaslPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v EndpointKafkaSettings) *string { return v.SaslPassword }).(pulumi.StringPtrOutput) @@ -606,6 +615,16 @@ func (o EndpointKafkaSettingsPtrOutput) PartitionIncludeSchemaTable() pulumi.Boo }).(pulumi.BoolPtrOutput) } +// For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. +func (o EndpointKafkaSettingsPtrOutput) SaslMechanism() pulumi.StringPtrOutput { + return o.ApplyT(func(v *EndpointKafkaSettings) *string { + if v == nil { + return nil + } + return v.SaslMechanism + }).(pulumi.StringPtrOutput) +} + // Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. func (o EndpointKafkaSettingsPtrOutput) SaslPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v *EndpointKafkaSettings) *string { @@ -3365,6 +3384,7 @@ type GetEndpointKafkaSetting struct { MessageMaxBytes int `pulumi:"messageMaxBytes"` NoHexPrefix bool `pulumi:"noHexPrefix"` PartitionIncludeSchemaTable bool `pulumi:"partitionIncludeSchemaTable"` + SaslMechanism string `pulumi:"saslMechanism"` SaslPassword string `pulumi:"saslPassword"` SaslUsername string `pulumi:"saslUsername"` SecurityProtocol string `pulumi:"securityProtocol"` @@ -3397,6 +3417,7 @@ type GetEndpointKafkaSettingArgs struct { MessageMaxBytes pulumi.IntInput `pulumi:"messageMaxBytes"` NoHexPrefix pulumi.BoolInput `pulumi:"noHexPrefix"` PartitionIncludeSchemaTable pulumi.BoolInput `pulumi:"partitionIncludeSchemaTable"` + SaslMechanism pulumi.StringInput `pulumi:"saslMechanism"` SaslPassword pulumi.StringInput `pulumi:"saslPassword"` SaslUsername pulumi.StringInput `pulumi:"saslUsername"` SecurityProtocol pulumi.StringInput `pulumi:"securityProtocol"` @@ -3498,6 +3519,10 @@ func (o GetEndpointKafkaSettingOutput) PartitionIncludeSchemaTable() pulumi.Bool return o.ApplyT(func(v GetEndpointKafkaSetting) bool { return v.PartitionIncludeSchemaTable }).(pulumi.BoolOutput) } +func (o GetEndpointKafkaSettingOutput) SaslMechanism() pulumi.StringOutput { + return o.ApplyT(func(v GetEndpointKafkaSetting) string { return v.SaslMechanism }).(pulumi.StringOutput) +} + func (o GetEndpointKafkaSettingOutput) SaslPassword() pulumi.StringOutput { return o.ApplyT(func(v GetEndpointKafkaSetting) string { return v.SaslPassword }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/ec2/eipAssociation.go b/sdk/go/aws/ec2/eipAssociation.go index fe728d10b9b..4a62dc3521d 100644 --- a/sdk/go/aws/ec2/eipAssociation.go +++ b/sdk/go/aws/ec2/eipAssociation.go @@ -11,13 +11,11 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Provides an AWS EIP Association as a top level resource, to associate and -// disassociate Elastic IPs from AWS Instances and Network Interfaces. +// Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. // // > **NOTE:** Do not use this resource to associate an EIP to `lb.LoadBalancer` or `ec2.NatGateway` resources. Instead use the `allocationId` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. // -// > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either -// pre-existing or distributed to customers or users and therefore cannot be changed. +// > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. // // ## Example Usage // @@ -73,26 +71,24 @@ import ( type EipAssociation struct { pulumi.CustomResourceState - // The allocation ID. This is required for EC2-VPC. + // ID of the associated Elastic IP. + // This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. AllocationId pulumi.StringOutput `pulumi:"allocationId"` - // Whether to allow an Elastic IP to - // be re-associated. Defaults to `true` in VPC. + // Whether to allow an Elastic IP address to be re-associated. + // Defaults to `true`. AllowReassociation pulumi.BoolPtrOutput `pulumi:"allowReassociation"` - // The ID of the instance. This is required for - // EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - // network interface ID, but not both. The operation fails if you specify an - // instance ID unless exactly one network interface is attached. + // ID of the instance. + // The instance must have exactly one attached network interface. + // You can specify either the instance ID or the network interface ID, but not both. InstanceId pulumi.StringOutput `pulumi:"instanceId"` - // The ID of the network interface. If the - // instance has more than one network interface, you must specify a network - // interface ID. + // ID of the network interface. + // If the instance has more than one network interface, you must specify a network interface ID. + // You can specify either the instance ID or the network interface ID, but not both. NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"` - // The primary or secondary private IP address - // to associate with the Elastic IP address. If no private IP address is - // specified, the Elastic IP address is associated with the primary private IP - // address. + // Primary or secondary private IP address to associate with the Elastic IP address. + // If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"` - // The Elastic IP address. This is required for EC2-Classic. + // ) Address of the associated Elastic IP. PublicIp pulumi.StringOutput `pulumi:"publicIp"` } @@ -126,50 +122,46 @@ func GetEipAssociation(ctx *pulumi.Context, // Input properties used for looking up and filtering EipAssociation resources. type eipAssociationState struct { - // The allocation ID. This is required for EC2-VPC. + // ID of the associated Elastic IP. + // This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. AllocationId *string `pulumi:"allocationId"` - // Whether to allow an Elastic IP to - // be re-associated. Defaults to `true` in VPC. + // Whether to allow an Elastic IP address to be re-associated. + // Defaults to `true`. AllowReassociation *bool `pulumi:"allowReassociation"` - // The ID of the instance. This is required for - // EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - // network interface ID, but not both. The operation fails if you specify an - // instance ID unless exactly one network interface is attached. + // ID of the instance. + // The instance must have exactly one attached network interface. + // You can specify either the instance ID or the network interface ID, but not both. InstanceId *string `pulumi:"instanceId"` - // The ID of the network interface. If the - // instance has more than one network interface, you must specify a network - // interface ID. + // ID of the network interface. + // If the instance has more than one network interface, you must specify a network interface ID. + // You can specify either the instance ID or the network interface ID, but not both. NetworkInterfaceId *string `pulumi:"networkInterfaceId"` - // The primary or secondary private IP address - // to associate with the Elastic IP address. If no private IP address is - // specified, the Elastic IP address is associated with the primary private IP - // address. + // Primary or secondary private IP address to associate with the Elastic IP address. + // If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. PrivateIpAddress *string `pulumi:"privateIpAddress"` - // The Elastic IP address. This is required for EC2-Classic. + // ) Address of the associated Elastic IP. PublicIp *string `pulumi:"publicIp"` } type EipAssociationState struct { - // The allocation ID. This is required for EC2-VPC. + // ID of the associated Elastic IP. + // This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. AllocationId pulumi.StringPtrInput - // Whether to allow an Elastic IP to - // be re-associated. Defaults to `true` in VPC. + // Whether to allow an Elastic IP address to be re-associated. + // Defaults to `true`. AllowReassociation pulumi.BoolPtrInput - // The ID of the instance. This is required for - // EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - // network interface ID, but not both. The operation fails if you specify an - // instance ID unless exactly one network interface is attached. + // ID of the instance. + // The instance must have exactly one attached network interface. + // You can specify either the instance ID or the network interface ID, but not both. InstanceId pulumi.StringPtrInput - // The ID of the network interface. If the - // instance has more than one network interface, you must specify a network - // interface ID. + // ID of the network interface. + // If the instance has more than one network interface, you must specify a network interface ID. + // You can specify either the instance ID or the network interface ID, but not both. NetworkInterfaceId pulumi.StringPtrInput - // The primary or secondary private IP address - // to associate with the Elastic IP address. If no private IP address is - // specified, the Elastic IP address is associated with the primary private IP - // address. + // Primary or secondary private IP address to associate with the Elastic IP address. + // If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. PrivateIpAddress pulumi.StringPtrInput - // The Elastic IP address. This is required for EC2-Classic. + // ) Address of the associated Elastic IP. PublicIp pulumi.StringPtrInput } @@ -178,51 +170,47 @@ func (EipAssociationState) ElementType() reflect.Type { } type eipAssociationArgs struct { - // The allocation ID. This is required for EC2-VPC. + // ID of the associated Elastic IP. + // This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. AllocationId *string `pulumi:"allocationId"` - // Whether to allow an Elastic IP to - // be re-associated. Defaults to `true` in VPC. + // Whether to allow an Elastic IP address to be re-associated. + // Defaults to `true`. AllowReassociation *bool `pulumi:"allowReassociation"` - // The ID of the instance. This is required for - // EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - // network interface ID, but not both. The operation fails if you specify an - // instance ID unless exactly one network interface is attached. + // ID of the instance. + // The instance must have exactly one attached network interface. + // You can specify either the instance ID or the network interface ID, but not both. InstanceId *string `pulumi:"instanceId"` - // The ID of the network interface. If the - // instance has more than one network interface, you must specify a network - // interface ID. + // ID of the network interface. + // If the instance has more than one network interface, you must specify a network interface ID. + // You can specify either the instance ID or the network interface ID, but not both. NetworkInterfaceId *string `pulumi:"networkInterfaceId"` - // The primary or secondary private IP address - // to associate with the Elastic IP address. If no private IP address is - // specified, the Elastic IP address is associated with the primary private IP - // address. + // Primary or secondary private IP address to associate with the Elastic IP address. + // If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. PrivateIpAddress *string `pulumi:"privateIpAddress"` - // The Elastic IP address. This is required for EC2-Classic. + // ) Address of the associated Elastic IP. PublicIp *string `pulumi:"publicIp"` } // The set of arguments for constructing a EipAssociation resource. type EipAssociationArgs struct { - // The allocation ID. This is required for EC2-VPC. + // ID of the associated Elastic IP. + // This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. AllocationId pulumi.StringPtrInput - // Whether to allow an Elastic IP to - // be re-associated. Defaults to `true` in VPC. + // Whether to allow an Elastic IP address to be re-associated. + // Defaults to `true`. AllowReassociation pulumi.BoolPtrInput - // The ID of the instance. This is required for - // EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - // network interface ID, but not both. The operation fails if you specify an - // instance ID unless exactly one network interface is attached. + // ID of the instance. + // The instance must have exactly one attached network interface. + // You can specify either the instance ID or the network interface ID, but not both. InstanceId pulumi.StringPtrInput - // The ID of the network interface. If the - // instance has more than one network interface, you must specify a network - // interface ID. + // ID of the network interface. + // If the instance has more than one network interface, you must specify a network interface ID. + // You can specify either the instance ID or the network interface ID, but not both. NetworkInterfaceId pulumi.StringPtrInput - // The primary or secondary private IP address - // to associate with the Elastic IP address. If no private IP address is - // specified, the Elastic IP address is associated with the primary private IP - // address. + // Primary or secondary private IP address to associate with the Elastic IP address. + // If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. PrivateIpAddress pulumi.StringPtrInput - // The Elastic IP address. This is required for EC2-Classic. + // ) Address of the associated Elastic IP. PublicIp pulumi.StringPtrInput } @@ -313,41 +301,39 @@ func (o EipAssociationOutput) ToEipAssociationOutputWithContext(ctx context.Cont return o } -// The allocation ID. This is required for EC2-VPC. +// ID of the associated Elastic IP. +// This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. func (o EipAssociationOutput) AllocationId() pulumi.StringOutput { return o.ApplyT(func(v *EipAssociation) pulumi.StringOutput { return v.AllocationId }).(pulumi.StringOutput) } -// Whether to allow an Elastic IP to -// be re-associated. Defaults to `true` in VPC. +// Whether to allow an Elastic IP address to be re-associated. +// Defaults to `true`. func (o EipAssociationOutput) AllowReassociation() pulumi.BoolPtrOutput { return o.ApplyT(func(v *EipAssociation) pulumi.BoolPtrOutput { return v.AllowReassociation }).(pulumi.BoolPtrOutput) } -// The ID of the instance. This is required for -// EC2-Classic. For EC2-VPC, you can specify either the instance ID or the -// network interface ID, but not both. The operation fails if you specify an -// instance ID unless exactly one network interface is attached. +// ID of the instance. +// The instance must have exactly one attached network interface. +// You can specify either the instance ID or the network interface ID, but not both. func (o EipAssociationOutput) InstanceId() pulumi.StringOutput { return o.ApplyT(func(v *EipAssociation) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput) } -// The ID of the network interface. If the -// instance has more than one network interface, you must specify a network -// interface ID. +// ID of the network interface. +// If the instance has more than one network interface, you must specify a network interface ID. +// You can specify either the instance ID or the network interface ID, but not both. func (o EipAssociationOutput) NetworkInterfaceId() pulumi.StringOutput { return o.ApplyT(func(v *EipAssociation) pulumi.StringOutput { return v.NetworkInterfaceId }).(pulumi.StringOutput) } -// The primary or secondary private IP address -// to associate with the Elastic IP address. If no private IP address is -// specified, the Elastic IP address is associated with the primary private IP -// address. +// Primary or secondary private IP address to associate with the Elastic IP address. +// If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. func (o EipAssociationOutput) PrivateIpAddress() pulumi.StringOutput { return o.ApplyT(func(v *EipAssociation) pulumi.StringOutput { return v.PrivateIpAddress }).(pulumi.StringOutput) } -// The Elastic IP address. This is required for EC2-Classic. +// ) Address of the associated Elastic IP. func (o EipAssociationOutput) PublicIp() pulumi.StringOutput { return o.ApplyT(func(v *EipAssociation) pulumi.StringOutput { return v.PublicIp }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/ec2/getVpcEndpointService.go b/sdk/go/aws/ec2/getVpcEndpointService.go index ce93f1e78d3..8d98ab3d336 100644 --- a/sdk/go/aws/ec2/getVpcEndpointService.go +++ b/sdk/go/aws/ec2/getVpcEndpointService.go @@ -135,6 +135,8 @@ type LookupVpcEndpointServiceArgs struct { Service *string `pulumi:"service"` // Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). ServiceName *string `pulumi:"serviceName"` + // AWS regions in which to look for services. + ServiceRegions []string `pulumi:"serviceRegions"` // Service type, `Gateway` or `Interface`. ServiceType *string `pulumi:"serviceType"` // Map of tags, each pair of which must exactly match a pair on the desired VPC Endpoint Service. @@ -149,7 +151,7 @@ type LookupVpcEndpointServiceResult struct { AcceptanceRequired bool `pulumi:"acceptanceRequired"` // ARN of the VPC endpoint service. Arn string `pulumi:"arn"` - // Availability Zones in which the service is available. + // Availability Zones in which the service is available. Not available for endpoint services in other regions. AvailabilityZones []string `pulumi:"availabilityZones"` // The DNS names for the service. BaseEndpointDnsNames []string `pulumi:"baseEndpointDnsNames"` @@ -164,11 +166,14 @@ type LookupVpcEndpointServiceResult struct { PrivateDnsName string `pulumi:"privateDnsName"` // Private DNS names assigned to the VPC endpoint service. PrivateDnsNames []string `pulumi:"privateDnsNames"` - Service *string `pulumi:"service"` + // Region of the endpoint service. + Region string `pulumi:"region"` + Service *string `pulumi:"service"` // ID of the endpoint service. - ServiceId string `pulumi:"serviceId"` - ServiceName string `pulumi:"serviceName"` - ServiceType string `pulumi:"serviceType"` + ServiceId string `pulumi:"serviceId"` + ServiceName string `pulumi:"serviceName"` + ServiceRegions []string `pulumi:"serviceRegions"` + ServiceType string `pulumi:"serviceType"` // The supported IP address types. SupportedIpAddressTypes []string `pulumi:"supportedIpAddressTypes"` // Map of tags assigned to the resource. @@ -194,6 +199,8 @@ type LookupVpcEndpointServiceOutputArgs struct { Service pulumi.StringPtrInput `pulumi:"service"` // Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). ServiceName pulumi.StringPtrInput `pulumi:"serviceName"` + // AWS regions in which to look for services. + ServiceRegions pulumi.StringArrayInput `pulumi:"serviceRegions"` // Service type, `Gateway` or `Interface`. ServiceType pulumi.StringPtrInput `pulumi:"serviceType"` // Map of tags, each pair of which must exactly match a pair on the desired VPC Endpoint Service. @@ -231,7 +238,7 @@ func (o LookupVpcEndpointServiceResultOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v LookupVpcEndpointServiceResult) string { return v.Arn }).(pulumi.StringOutput) } -// Availability Zones in which the service is available. +// Availability Zones in which the service is available. Not available for endpoint services in other regions. func (o LookupVpcEndpointServiceResultOutput) AvailabilityZones() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupVpcEndpointServiceResult) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) } @@ -270,6 +277,11 @@ func (o LookupVpcEndpointServiceResultOutput) PrivateDnsNames() pulumi.StringArr return o.ApplyT(func(v LookupVpcEndpointServiceResult) []string { return v.PrivateDnsNames }).(pulumi.StringArrayOutput) } +// Region of the endpoint service. +func (o LookupVpcEndpointServiceResultOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v LookupVpcEndpointServiceResult) string { return v.Region }).(pulumi.StringOutput) +} + func (o LookupVpcEndpointServiceResultOutput) Service() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupVpcEndpointServiceResult) *string { return v.Service }).(pulumi.StringPtrOutput) } @@ -283,6 +295,10 @@ func (o LookupVpcEndpointServiceResultOutput) ServiceName() pulumi.StringOutput return o.ApplyT(func(v LookupVpcEndpointServiceResult) string { return v.ServiceName }).(pulumi.StringOutput) } +func (o LookupVpcEndpointServiceResultOutput) ServiceRegions() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupVpcEndpointServiceResult) []string { return v.ServiceRegions }).(pulumi.StringArrayOutput) +} + func (o LookupVpcEndpointServiceResultOutput) ServiceType() pulumi.StringOutput { return o.ApplyT(func(v LookupVpcEndpointServiceResult) string { return v.ServiceType }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/ec2/peeringConnectionOptions.go b/sdk/go/aws/ec2/peeringConnectionOptions.go index 4699e2bd5b4..a8584566a12 100644 --- a/sdk/go/aws/ec2/peeringConnectionOptions.go +++ b/sdk/go/aws/ec2/peeringConnectionOptions.go @@ -167,9 +167,9 @@ import ( type PeeringConnectionOptions struct { pulumi.CustomResourceState - // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). Accepter PeeringConnectionOptionsAccepterOutput `pulumi:"accepter"` - // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). Requester PeeringConnectionOptionsRequesterOutput `pulumi:"requester"` // The ID of the requester VPC peering connection. VpcPeeringConnectionId pulumi.StringOutput `pulumi:"vpcPeeringConnectionId"` @@ -208,18 +208,18 @@ func GetPeeringConnectionOptions(ctx *pulumi.Context, // Input properties used for looking up and filtering PeeringConnectionOptions resources. type peeringConnectionOptionsState struct { - // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). Accepter *PeeringConnectionOptionsAccepter `pulumi:"accepter"` - // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). Requester *PeeringConnectionOptionsRequester `pulumi:"requester"` // The ID of the requester VPC peering connection. VpcPeeringConnectionId *string `pulumi:"vpcPeeringConnectionId"` } type PeeringConnectionOptionsState struct { - // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). Accepter PeeringConnectionOptionsAccepterPtrInput - // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). Requester PeeringConnectionOptionsRequesterPtrInput // The ID of the requester VPC peering connection. VpcPeeringConnectionId pulumi.StringPtrInput @@ -230,9 +230,9 @@ func (PeeringConnectionOptionsState) ElementType() reflect.Type { } type peeringConnectionOptionsArgs struct { - // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). Accepter *PeeringConnectionOptionsAccepter `pulumi:"accepter"` - // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). Requester *PeeringConnectionOptionsRequester `pulumi:"requester"` // The ID of the requester VPC peering connection. VpcPeeringConnectionId string `pulumi:"vpcPeeringConnectionId"` @@ -240,9 +240,9 @@ type peeringConnectionOptionsArgs struct { // The set of arguments for constructing a PeeringConnectionOptions resource. type PeeringConnectionOptionsArgs struct { - // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + // An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). Accepter PeeringConnectionOptionsAccepterPtrInput - // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + // A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). Requester PeeringConnectionOptionsRequesterPtrInput // The ID of the requester VPC peering connection. VpcPeeringConnectionId pulumi.StringInput @@ -335,12 +335,12 @@ func (o PeeringConnectionOptionsOutput) ToPeeringConnectionOptionsOutputWithCont return o } -// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). +// An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). func (o PeeringConnectionOptionsOutput) Accepter() PeeringConnectionOptionsAccepterOutput { return o.ApplyT(func(v *PeeringConnectionOptions) PeeringConnectionOptionsAccepterOutput { return v.Accepter }).(PeeringConnectionOptionsAccepterOutput) } -// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). +// A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). func (o PeeringConnectionOptionsOutput) Requester() PeeringConnectionOptionsRequesterOutput { return o.ApplyT(func(v *PeeringConnectionOptions) PeeringConnectionOptionsRequesterOutput { return v.Requester }).(PeeringConnectionOptionsRequesterOutput) } diff --git a/sdk/go/aws/ecr/accountSetting.go b/sdk/go/aws/ecr/accountSetting.go index 0816c6059a4..7a8ed6ee55a 100644 --- a/sdk/go/aws/ecr/accountSetting.go +++ b/sdk/go/aws/ecr/accountSetting.go @@ -16,6 +16,8 @@ import ( // // ## Example Usage // +// ### Configuring Basic Scanning +// // ```go // package main // @@ -28,9 +30,36 @@ import ( // // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := ecr.NewAccountSetting(ctx, "foo", &ecr.AccountSettingArgs{ +// _, err := ecr.NewAccountSetting(ctx, "basic_scan_type_version", &ecr.AccountSettingArgs{ // Name: pulumi.String("BASIC_SCAN_TYPE_VERSION"), -// Value: pulumi.String("CLAIR"), +// Value: pulumi.String("AWS_NATIVE"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Configuring Registry Policy Scope +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := ecr.NewAccountSetting(ctx, "registry_policy_scope", &ecr.AccountSettingArgs{ +// Name: pulumi.String("REGISTRY_POLICY_SCOPE"), +// Value: pulumi.String("V2"), // }) // if err != nil { // return err @@ -43,7 +72,7 @@ import ( // // ## Import // -// Using `pulumi import`, import EMR Security Configurations using the `name`. For example: +// Using `pulumi import`, import EMR Security Configurations using the account setting name. For example: // // ```sh // $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION @@ -51,9 +80,11 @@ import ( type AccountSetting struct { pulumi.CustomResourceState - // The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + // Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. Name pulumi.StringOutput `pulumi:"name"` - // The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + // Setting value that is specified. Valid values are: + // * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + // * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. Value pulumi.StringOutput `pulumi:"value"` } @@ -90,16 +121,20 @@ func GetAccountSetting(ctx *pulumi.Context, // Input properties used for looking up and filtering AccountSetting resources. type accountSettingState struct { - // The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + // Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. Name *string `pulumi:"name"` - // The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + // Setting value that is specified. Valid values are: + // * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + // * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. Value *string `pulumi:"value"` } type AccountSettingState struct { - // The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + // Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. Name pulumi.StringPtrInput - // The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + // Setting value that is specified. Valid values are: + // * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + // * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. Value pulumi.StringPtrInput } @@ -108,17 +143,21 @@ func (AccountSettingState) ElementType() reflect.Type { } type accountSettingArgs struct { - // The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + // Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. Name *string `pulumi:"name"` - // The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + // Setting value that is specified. Valid values are: + // * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + // * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. Value string `pulumi:"value"` } // The set of arguments for constructing a AccountSetting resource. type AccountSettingArgs struct { - // The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + // Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. Name pulumi.StringPtrInput - // The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + // Setting value that is specified. Valid values are: + // * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + // * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. Value pulumi.StringInput } @@ -209,12 +248,14 @@ func (o AccountSettingOutput) ToAccountSettingOutputWithContext(ctx context.Cont return o } -// The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. +// Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. func (o AccountSettingOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *AccountSetting) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. +// Setting value that is specified. Valid values are: +// * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. +// * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. func (o AccountSettingOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v *AccountSetting) pulumi.StringOutput { return v.Value }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/ecs/getClusters.go b/sdk/go/aws/ecs/getClusters.go new file mode 100644 index 00000000000..7ec2208d177 --- /dev/null +++ b/sdk/go/aws/ecs/getClusters.go @@ -0,0 +1,93 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package ecs + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Data source for managing an AWS ECS (Elastic Container) Clusters. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecs" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := ecs.GetClusters(ctx, map[string]interface{}{}, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetClusters(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetClustersResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetClustersResult + err := ctx.Invoke("aws:ecs/getClusters:getClusters", nil, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of values returned by getClusters. +type GetClustersResult struct { + // List of ECS cluster ARNs associated with the account. + ClusterArns []string `pulumi:"clusterArns"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` +} + +func GetClustersOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetClustersResultOutput { + return pulumi.ToOutput(0).ApplyT(func(int) (GetClustersResultOutput, error) { + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws:ecs/getClusters:getClusters", nil, GetClustersResultOutput{}, options).(GetClustersResultOutput), nil + }).(GetClustersResultOutput) +} + +// A collection of values returned by getClusters. +type GetClustersResultOutput struct{ *pulumi.OutputState } + +func (GetClustersResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetClustersResult)(nil)).Elem() +} + +func (o GetClustersResultOutput) ToGetClustersResultOutput() GetClustersResultOutput { + return o +} + +func (o GetClustersResultOutput) ToGetClustersResultOutputWithContext(ctx context.Context) GetClustersResultOutput { + return o +} + +// List of ECS cluster ARNs associated with the account. +func (o GetClustersResultOutput) ClusterArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetClustersResult) []string { return v.ClusterArns }).(pulumi.StringArrayOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetClustersResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetClustersResult) string { return v.Id }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetClustersResultOutput{}) +} diff --git a/sdk/go/aws/eks/nodeGroup.go b/sdk/go/aws/eks/nodeGroup.go index 0a2deb062ec..64725a0ac05 100644 --- a/sdk/go/aws/eks/nodeGroup.go +++ b/sdk/go/aws/eks/nodeGroup.go @@ -242,6 +242,8 @@ type NodeGroup struct { NodeGroupName pulumi.StringOutput `pulumi:"nodeGroupName"` // Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. NodeGroupNamePrefix pulumi.StringOutput `pulumi:"nodeGroupNamePrefix"` + // The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + NodeRepairConfig NodeGroupNodeRepairConfigOutput `pulumi:"nodeRepairConfig"` // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. NodeRoleArn pulumi.StringOutput `pulumi:"nodeRoleArn"` // AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. @@ -336,6 +338,8 @@ type nodeGroupState struct { NodeGroupName *string `pulumi:"nodeGroupName"` // Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. NodeGroupNamePrefix *string `pulumi:"nodeGroupNamePrefix"` + // The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + NodeRepairConfig *NodeGroupNodeRepairConfig `pulumi:"nodeRepairConfig"` // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. NodeRoleArn *string `pulumi:"nodeRoleArn"` // AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. @@ -389,6 +393,8 @@ type NodeGroupState struct { NodeGroupName pulumi.StringPtrInput // Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. NodeGroupNamePrefix pulumi.StringPtrInput + // The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + NodeRepairConfig NodeGroupNodeRepairConfigPtrInput // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. NodeRoleArn pulumi.StringPtrInput // AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. @@ -444,6 +450,8 @@ type nodeGroupArgs struct { NodeGroupName *string `pulumi:"nodeGroupName"` // Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. NodeGroupNamePrefix *string `pulumi:"nodeGroupNamePrefix"` + // The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + NodeRepairConfig *NodeGroupNodeRepairConfig `pulumi:"nodeRepairConfig"` // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. NodeRoleArn string `pulumi:"nodeRoleArn"` // AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. @@ -488,6 +496,8 @@ type NodeGroupArgs struct { NodeGroupName pulumi.StringPtrInput // Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. NodeGroupNamePrefix pulumi.StringPtrInput + // The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + NodeRepairConfig NodeGroupNodeRepairConfigPtrInput // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. NodeRoleArn pulumi.StringInput // AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. @@ -652,6 +662,11 @@ func (o NodeGroupOutput) NodeGroupNamePrefix() pulumi.StringOutput { return o.ApplyT(func(v *NodeGroup) pulumi.StringOutput { return v.NodeGroupNamePrefix }).(pulumi.StringOutput) } +// The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. +func (o NodeGroupOutput) NodeRepairConfig() NodeGroupNodeRepairConfigOutput { + return o.ApplyT(func(v *NodeGroup) NodeGroupNodeRepairConfigOutput { return v.NodeRepairConfig }).(NodeGroupNodeRepairConfigOutput) +} + // Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. func (o NodeGroupOutput) NodeRoleArn() pulumi.StringOutput { return o.ApplyT(func(v *NodeGroup) pulumi.StringOutput { return v.NodeRoleArn }).(pulumi.StringOutput) diff --git a/sdk/go/aws/eks/pulumiTypes.go b/sdk/go/aws/eks/pulumiTypes.go index 61d37eb4166..09092f85e84 100644 --- a/sdk/go/aws/eks/pulumiTypes.go +++ b/sdk/go/aws/eks/pulumiTypes.go @@ -3764,6 +3764,143 @@ func (o NodeGroupLaunchTemplatePtrOutput) Version() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type NodeGroupNodeRepairConfig struct { + // Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + Enabled *bool `pulumi:"enabled"` +} + +// NodeGroupNodeRepairConfigInput is an input type that accepts NodeGroupNodeRepairConfigArgs and NodeGroupNodeRepairConfigOutput values. +// You can construct a concrete instance of `NodeGroupNodeRepairConfigInput` via: +// +// NodeGroupNodeRepairConfigArgs{...} +type NodeGroupNodeRepairConfigInput interface { + pulumi.Input + + ToNodeGroupNodeRepairConfigOutput() NodeGroupNodeRepairConfigOutput + ToNodeGroupNodeRepairConfigOutputWithContext(context.Context) NodeGroupNodeRepairConfigOutput +} + +type NodeGroupNodeRepairConfigArgs struct { + // Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +} + +func (NodeGroupNodeRepairConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*NodeGroupNodeRepairConfig)(nil)).Elem() +} + +func (i NodeGroupNodeRepairConfigArgs) ToNodeGroupNodeRepairConfigOutput() NodeGroupNodeRepairConfigOutput { + return i.ToNodeGroupNodeRepairConfigOutputWithContext(context.Background()) +} + +func (i NodeGroupNodeRepairConfigArgs) ToNodeGroupNodeRepairConfigOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(NodeGroupNodeRepairConfigOutput) +} + +func (i NodeGroupNodeRepairConfigArgs) ToNodeGroupNodeRepairConfigPtrOutput() NodeGroupNodeRepairConfigPtrOutput { + return i.ToNodeGroupNodeRepairConfigPtrOutputWithContext(context.Background()) +} + +func (i NodeGroupNodeRepairConfigArgs) ToNodeGroupNodeRepairConfigPtrOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NodeGroupNodeRepairConfigOutput).ToNodeGroupNodeRepairConfigPtrOutputWithContext(ctx) +} + +// NodeGroupNodeRepairConfigPtrInput is an input type that accepts NodeGroupNodeRepairConfigArgs, NodeGroupNodeRepairConfigPtr and NodeGroupNodeRepairConfigPtrOutput values. +// You can construct a concrete instance of `NodeGroupNodeRepairConfigPtrInput` via: +// +// NodeGroupNodeRepairConfigArgs{...} +// +// or: +// +// nil +type NodeGroupNodeRepairConfigPtrInput interface { + pulumi.Input + + ToNodeGroupNodeRepairConfigPtrOutput() NodeGroupNodeRepairConfigPtrOutput + ToNodeGroupNodeRepairConfigPtrOutputWithContext(context.Context) NodeGroupNodeRepairConfigPtrOutput +} + +type nodeGroupNodeRepairConfigPtrType NodeGroupNodeRepairConfigArgs + +func NodeGroupNodeRepairConfigPtr(v *NodeGroupNodeRepairConfigArgs) NodeGroupNodeRepairConfigPtrInput { + return (*nodeGroupNodeRepairConfigPtrType)(v) +} + +func (*nodeGroupNodeRepairConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**NodeGroupNodeRepairConfig)(nil)).Elem() +} + +func (i *nodeGroupNodeRepairConfigPtrType) ToNodeGroupNodeRepairConfigPtrOutput() NodeGroupNodeRepairConfigPtrOutput { + return i.ToNodeGroupNodeRepairConfigPtrOutputWithContext(context.Background()) +} + +func (i *nodeGroupNodeRepairConfigPtrType) ToNodeGroupNodeRepairConfigPtrOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NodeGroupNodeRepairConfigPtrOutput) +} + +type NodeGroupNodeRepairConfigOutput struct{ *pulumi.OutputState } + +func (NodeGroupNodeRepairConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NodeGroupNodeRepairConfig)(nil)).Elem() +} + +func (o NodeGroupNodeRepairConfigOutput) ToNodeGroupNodeRepairConfigOutput() NodeGroupNodeRepairConfigOutput { + return o +} + +func (o NodeGroupNodeRepairConfigOutput) ToNodeGroupNodeRepairConfigOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigOutput { + return o +} + +func (o NodeGroupNodeRepairConfigOutput) ToNodeGroupNodeRepairConfigPtrOutput() NodeGroupNodeRepairConfigPtrOutput { + return o.ToNodeGroupNodeRepairConfigPtrOutputWithContext(context.Background()) +} + +func (o NodeGroupNodeRepairConfigOutput) ToNodeGroupNodeRepairConfigPtrOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NodeGroupNodeRepairConfig) *NodeGroupNodeRepairConfig { + return &v + }).(NodeGroupNodeRepairConfigPtrOutput) +} + +// Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. +func (o NodeGroupNodeRepairConfigOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v NodeGroupNodeRepairConfig) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type NodeGroupNodeRepairConfigPtrOutput struct{ *pulumi.OutputState } + +func (NodeGroupNodeRepairConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NodeGroupNodeRepairConfig)(nil)).Elem() +} + +func (o NodeGroupNodeRepairConfigPtrOutput) ToNodeGroupNodeRepairConfigPtrOutput() NodeGroupNodeRepairConfigPtrOutput { + return o +} + +func (o NodeGroupNodeRepairConfigPtrOutput) ToNodeGroupNodeRepairConfigPtrOutputWithContext(ctx context.Context) NodeGroupNodeRepairConfigPtrOutput { + return o +} + +func (o NodeGroupNodeRepairConfigPtrOutput) Elem() NodeGroupNodeRepairConfigOutput { + return o.ApplyT(func(v *NodeGroupNodeRepairConfig) NodeGroupNodeRepairConfig { + if v != nil { + return *v + } + var ret NodeGroupNodeRepairConfig + return ret + }).(NodeGroupNodeRepairConfigOutput) +} + +// Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. +func (o NodeGroupNodeRepairConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *NodeGroupNodeRepairConfig) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + type NodeGroupRemoteAccess struct { // EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify `sourceSecurityGroupIds` when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes. Ec2SshKey *string `pulumi:"ec2SshKey"` @@ -7126,6 +7263,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*IdentityProviderConfigOidcPtrInput)(nil)).Elem(), IdentityProviderConfigOidcArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupLaunchTemplateInput)(nil)).Elem(), NodeGroupLaunchTemplateArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupLaunchTemplatePtrInput)(nil)).Elem(), NodeGroupLaunchTemplateArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupNodeRepairConfigInput)(nil)).Elem(), NodeGroupNodeRepairConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupNodeRepairConfigPtrInput)(nil)).Elem(), NodeGroupNodeRepairConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupRemoteAccessInput)(nil)).Elem(), NodeGroupRemoteAccessArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupRemoteAccessPtrInput)(nil)).Elem(), NodeGroupRemoteAccessArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NodeGroupResourceInput)(nil)).Elem(), NodeGroupResourceArgs{}) @@ -7234,6 +7373,8 @@ func init() { pulumi.RegisterOutputType(IdentityProviderConfigOidcPtrOutput{}) pulumi.RegisterOutputType(NodeGroupLaunchTemplateOutput{}) pulumi.RegisterOutputType(NodeGroupLaunchTemplatePtrOutput{}) + pulumi.RegisterOutputType(NodeGroupNodeRepairConfigOutput{}) + pulumi.RegisterOutputType(NodeGroupNodeRepairConfigPtrOutput{}) pulumi.RegisterOutputType(NodeGroupRemoteAccessOutput{}) pulumi.RegisterOutputType(NodeGroupRemoteAccessPtrOutput{}) pulumi.RegisterOutputType(NodeGroupResourceOutput{}) diff --git a/sdk/go/aws/elasticache/user.go b/sdk/go/aws/elasticache/user.go index 3de4240ac3b..671c3563d44 100644 --- a/sdk/go/aws/elasticache/user.go +++ b/sdk/go/aws/elasticache/user.go @@ -127,7 +127,7 @@ type User struct { Arn pulumi.StringOutput `pulumi:"arn"` // Denotes the user's authentication properties. Detailed below. AuthenticationMode UserAuthenticationModeOutput `pulumi:"authenticationMode"` - // The current supported value is `REDIS`. + // The current supported values are `REDIS`, `VALKEY`. Engine pulumi.StringOutput `pulumi:"engine"` // Indicates a password is not required for this user. NoPasswordRequired pulumi.BoolPtrOutput `pulumi:"noPasswordRequired"` @@ -200,7 +200,7 @@ type userState struct { Arn *string `pulumi:"arn"` // Denotes the user's authentication properties. Detailed below. AuthenticationMode *UserAuthenticationMode `pulumi:"authenticationMode"` - // The current supported value is `REDIS`. + // The current supported values are `REDIS`, `VALKEY`. Engine *string `pulumi:"engine"` // Indicates a password is not required for this user. NoPasswordRequired *bool `pulumi:"noPasswordRequired"` @@ -225,7 +225,7 @@ type UserState struct { Arn pulumi.StringPtrInput // Denotes the user's authentication properties. Detailed below. AuthenticationMode UserAuthenticationModePtrInput - // The current supported value is `REDIS`. + // The current supported values are `REDIS`, `VALKEY`. Engine pulumi.StringPtrInput // Indicates a password is not required for this user. NoPasswordRequired pulumi.BoolPtrInput @@ -252,7 +252,7 @@ type userArgs struct { AccessString string `pulumi:"accessString"` // Denotes the user's authentication properties. Detailed below. AuthenticationMode *UserAuthenticationMode `pulumi:"authenticationMode"` - // The current supported value is `REDIS`. + // The current supported values are `REDIS`, `VALKEY`. Engine string `pulumi:"engine"` // Indicates a password is not required for this user. NoPasswordRequired *bool `pulumi:"noPasswordRequired"` @@ -274,7 +274,7 @@ type UserArgs struct { AccessString pulumi.StringInput // Denotes the user's authentication properties. Detailed below. AuthenticationMode UserAuthenticationModePtrInput - // The current supported value is `REDIS`. + // The current supported values are `REDIS`, `VALKEY`. Engine pulumi.StringInput // Indicates a password is not required for this user. NoPasswordRequired pulumi.BoolPtrInput @@ -392,7 +392,7 @@ func (o UserOutput) AuthenticationMode() UserAuthenticationModeOutput { return o.ApplyT(func(v *User) UserAuthenticationModeOutput { return v.AuthenticationMode }).(UserAuthenticationModeOutput) } -// The current supported value is `REDIS`. +// The current supported values are `REDIS`, `VALKEY`. func (o UserOutput) Engine() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.Engine }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/elasticache/userGroup.go b/sdk/go/aws/elasticache/userGroup.go index 7e1171544d5..6cc04931252 100644 --- a/sdk/go/aws/elasticache/userGroup.go +++ b/sdk/go/aws/elasticache/userGroup.go @@ -68,7 +68,7 @@ type UserGroup struct { // The ARN that identifies the user group. Arn pulumi.StringOutput `pulumi:"arn"` - // The current supported value is `REDIS`. + // The current supported value are `REDIS`, `VALKEY`. Engine pulumi.StringOutput `pulumi:"engine"` // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapOutput `pulumi:"tags"` @@ -122,7 +122,7 @@ func GetUserGroup(ctx *pulumi.Context, type userGroupState struct { // The ARN that identifies the user group. Arn *string `pulumi:"arn"` - // The current supported value is `REDIS`. + // The current supported value are `REDIS`, `VALKEY`. Engine *string `pulumi:"engine"` // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags map[string]string `pulumi:"tags"` @@ -141,7 +141,7 @@ type userGroupState struct { type UserGroupState struct { // The ARN that identifies the user group. Arn pulumi.StringPtrInput - // The current supported value is `REDIS`. + // The current supported value are `REDIS`, `VALKEY`. Engine pulumi.StringPtrInput // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapInput @@ -162,7 +162,7 @@ func (UserGroupState) ElementType() reflect.Type { } type userGroupArgs struct { - // The current supported value is `REDIS`. + // The current supported value are `REDIS`, `VALKEY`. Engine string `pulumi:"engine"` // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags map[string]string `pulumi:"tags"` @@ -176,7 +176,7 @@ type userGroupArgs struct { // The set of arguments for constructing a UserGroup resource. type UserGroupArgs struct { - // The current supported value is `REDIS`. + // The current supported value are `REDIS`, `VALKEY`. Engine pulumi.StringInput // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapInput @@ -280,7 +280,7 @@ func (o UserGroupOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *UserGroup) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// The current supported value is `REDIS`. +// The current supported value are `REDIS`, `VALKEY`. func (o UserGroupOutput) Engine() pulumi.StringOutput { return o.ApplyT(func(v *UserGroup) pulumi.StringOutput { return v.Engine }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/emr/studio.go b/sdk/go/aws/emr/studio.go index 21fc1348ad1..96447a0a99a 100644 --- a/sdk/go/aws/emr/studio.go +++ b/sdk/go/aws/emr/studio.go @@ -70,6 +70,8 @@ type Studio struct { DefaultS3Location pulumi.StringOutput `pulumi:"defaultS3Location"` // A detailed description of the Amazon EMR Studio. Description pulumi.StringPtrOutput `pulumi:"description"` + // The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + EncryptionKeyArn pulumi.StringPtrOutput `pulumi:"encryptionKeyArn"` // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. EngineSecurityGroupId pulumi.StringOutput `pulumi:"engineSecurityGroupId"` // The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. @@ -157,6 +159,8 @@ type studioState struct { DefaultS3Location *string `pulumi:"defaultS3Location"` // A detailed description of the Amazon EMR Studio. Description *string `pulumi:"description"` + // The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + EncryptionKeyArn *string `pulumi:"encryptionKeyArn"` // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. EngineSecurityGroupId *string `pulumi:"engineSecurityGroupId"` // The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. @@ -194,6 +198,8 @@ type StudioState struct { DefaultS3Location pulumi.StringPtrInput // A detailed description of the Amazon EMR Studio. Description pulumi.StringPtrInput + // The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + EncryptionKeyArn pulumi.StringPtrInput // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. EngineSecurityGroupId pulumi.StringPtrInput // The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. @@ -233,6 +239,8 @@ type studioArgs struct { DefaultS3Location string `pulumi:"defaultS3Location"` // A detailed description of the Amazon EMR Studio. Description *string `pulumi:"description"` + // The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + EncryptionKeyArn *string `pulumi:"encryptionKeyArn"` // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. EngineSecurityGroupId string `pulumi:"engineSecurityGroupId"` // The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. @@ -265,6 +273,8 @@ type StudioArgs struct { DefaultS3Location pulumi.StringInput // A detailed description of the Amazon EMR Studio. Description pulumi.StringPtrInput + // The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + EncryptionKeyArn pulumi.StringPtrInput // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. EngineSecurityGroupId pulumi.StringInput // The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. @@ -396,6 +406,11 @@ func (o StudioOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. +func (o StudioOutput) EncryptionKeyArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.EncryptionKeyArn }).(pulumi.StringPtrOutput) +} + // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. func (o StudioOutput) EngineSecurityGroupId() pulumi.StringOutput { return o.ApplyT(func(v *Studio) pulumi.StringOutput { return v.EngineSecurityGroupId }).(pulumi.StringOutput) diff --git a/sdk/go/aws/fsx/windowsFileSystem.go b/sdk/go/aws/fsx/windowsFileSystem.go index f872088c603..1febb5073f5 100644 --- a/sdk/go/aws/fsx/windowsFileSystem.go +++ b/sdk/go/aws/fsx/windowsFileSystem.go @@ -37,11 +37,11 @@ import ( // _, err := fsx.NewWindowsFileSystem(ctx, "example", &fsx.WindowsFileSystemArgs{ // ActiveDirectoryId: pulumi.Any(exampleAwsDirectoryServiceDirectory.Id), // KmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn), -// StorageCapacity: pulumi.Int(300), +// StorageCapacity: pulumi.Int(32), // SubnetIds: pulumi.StringArray{ // exampleAwsSubnet.Id, // }, -// ThroughputCapacity: pulumi.Int(1024), +// ThroughputCapacity: pulumi.Int(32), // }) // if err != nil { // return err @@ -70,11 +70,11 @@ import ( // pulumi.Run(func(ctx *pulumi.Context) error { // _, err := fsx.NewWindowsFileSystem(ctx, "example", &fsx.WindowsFileSystemArgs{ // KmsKeyId: pulumi.Any(exampleAwsKmsKey.Arn), -// StorageCapacity: pulumi.Int(300), +// StorageCapacity: pulumi.Int(32), // SubnetIds: pulumi.StringArray{ // exampleAwsSubnet.Id, // }, -// ThroughputCapacity: pulumi.Int(1024), +// ThroughputCapacity: pulumi.Int(32), // SelfManagedActiveDirectory: &fsx.WindowsFileSystemSelfManagedActiveDirectoryArgs{ // DnsIps: pulumi.StringArray{ // pulumi.String("10.0.0.111"), diff --git a/sdk/go/aws/guardduty/organizationConfiguration.go b/sdk/go/aws/guardduty/organizationConfiguration.go index 13eb40ded4e..432c90e0c59 100644 --- a/sdk/go/aws/guardduty/organizationConfiguration.go +++ b/sdk/go/aws/guardduty/organizationConfiguration.go @@ -82,7 +82,7 @@ type OrganizationConfiguration struct { AutoEnable pulumi.BoolOutput `pulumi:"autoEnable"` // Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. AutoEnableOrganizationMembers pulumi.StringOutput `pulumi:"autoEnableOrganizationMembers"` - // Configuration for the collected datasources. + // Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. Datasources OrganizationConfigurationDatasourcesOutput `pulumi:"datasources"` // The detector ID of the GuardDuty account. DetectorId pulumi.StringOutput `pulumi:"detectorId"` @@ -127,7 +127,7 @@ type organizationConfigurationState struct { AutoEnable *bool `pulumi:"autoEnable"` // Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. AutoEnableOrganizationMembers *string `pulumi:"autoEnableOrganizationMembers"` - // Configuration for the collected datasources. + // Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. Datasources *OrganizationConfigurationDatasources `pulumi:"datasources"` // The detector ID of the GuardDuty account. DetectorId *string `pulumi:"detectorId"` @@ -140,7 +140,7 @@ type OrganizationConfigurationState struct { AutoEnable pulumi.BoolPtrInput // Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. AutoEnableOrganizationMembers pulumi.StringPtrInput - // Configuration for the collected datasources. + // Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. Datasources OrganizationConfigurationDatasourcesPtrInput // The detector ID of the GuardDuty account. DetectorId pulumi.StringPtrInput @@ -157,7 +157,7 @@ type organizationConfigurationArgs struct { AutoEnable *bool `pulumi:"autoEnable"` // Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. AutoEnableOrganizationMembers *string `pulumi:"autoEnableOrganizationMembers"` - // Configuration for the collected datasources. + // Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. Datasources *OrganizationConfigurationDatasources `pulumi:"datasources"` // The detector ID of the GuardDuty account. DetectorId string `pulumi:"detectorId"` @@ -171,7 +171,7 @@ type OrganizationConfigurationArgs struct { AutoEnable pulumi.BoolPtrInput // Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. AutoEnableOrganizationMembers pulumi.StringPtrInput - // Configuration for the collected datasources. + // Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. Datasources OrganizationConfigurationDatasourcesPtrInput // The detector ID of the GuardDuty account. DetectorId pulumi.StringInput @@ -276,7 +276,7 @@ func (o OrganizationConfigurationOutput) AutoEnableOrganizationMembers() pulumi. return o.ApplyT(func(v *OrganizationConfiguration) pulumi.StringOutput { return v.AutoEnableOrganizationMembers }).(pulumi.StringOutput) } -// Configuration for the collected datasources. +// Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. func (o OrganizationConfigurationOutput) Datasources() OrganizationConfigurationDatasourcesOutput { return o.ApplyT(func(v *OrganizationConfiguration) OrganizationConfigurationDatasourcesOutput { return v.Datasources }).(OrganizationConfigurationDatasourcesOutput) } diff --git a/sdk/go/aws/lb/trustStore.go b/sdk/go/aws/lb/trustStore.go index c395962e7b4..c77a7347344 100644 --- a/sdk/go/aws/lb/trustStore.go +++ b/sdk/go/aws/lb/trustStore.go @@ -16,6 +16,50 @@ import ( // // ## Example Usage // +// ### Trust Store Load Balancer Listener +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lb" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// test, err := lb.NewTrustStore(ctx, "test", &lb.TrustStoreArgs{ +// Name: pulumi.String("tf-example-lb-ts"), +// CaCertificatesBundleS3Bucket: pulumi.String("..."), +// CaCertificatesBundleS3Key: pulumi.String("..."), +// }) +// if err != nil { +// return err +// } +// _, err = lb.NewListener(ctx, "example", &lb.ListenerArgs{ +// LoadBalancerArn: pulumi.Any(exampleAwsLb.Id), +// DefaultActions: lb.ListenerDefaultActionArray{ +// &lb.ListenerDefaultActionArgs{ +// TargetGroupArn: pulumi.Any(exampleAwsLbTargetGroup.Id), +// Type: pulumi.String("forward"), +// }, +// }, +// MutualAuthentication: &lb.ListenerMutualAuthenticationArgs{ +// Mode: pulumi.String("verify"), +// TrustStoreArn: test.Arn, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// // ## Import // // Using `pulumi import`, import Target Groups using their ARN. For example: diff --git a/sdk/go/aws/msk/pulumiTypes.go b/sdk/go/aws/msk/pulumiTypes.go index 97dfc3a3858..27250f72910 100644 --- a/sdk/go/aws/msk/pulumiTypes.go +++ b/sdk/go/aws/msk/pulumiTypes.go @@ -4330,7 +4330,8 @@ type ReplicatorReplicationInfoListTopicReplication struct { // Whether to periodically check for new topics and partitions. DetectAndCopyNewTopics *bool `pulumi:"detectAndCopyNewTopics"` // Configuration for specifying the position in the topics to start replicating from. - StartingPosition *ReplicatorReplicationInfoListTopicReplicationStartingPosition `pulumi:"startingPosition"` + StartingPosition *ReplicatorReplicationInfoListTopicReplicationStartingPosition `pulumi:"startingPosition"` + // Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. TopicNameConfiguration *ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration `pulumi:"topicNameConfiguration"` // List of regular expression patterns indicating the topics that should not be replica. TopicsToExcludes []string `pulumi:"topicsToExcludes"` @@ -4357,7 +4358,8 @@ type ReplicatorReplicationInfoListTopicReplicationArgs struct { // Whether to periodically check for new topics and partitions. DetectAndCopyNewTopics pulumi.BoolPtrInput `pulumi:"detectAndCopyNewTopics"` // Configuration for specifying the position in the topics to start replicating from. - StartingPosition ReplicatorReplicationInfoListTopicReplicationStartingPositionPtrInput `pulumi:"startingPosition"` + StartingPosition ReplicatorReplicationInfoListTopicReplicationStartingPositionPtrInput `pulumi:"startingPosition"` + // Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. TopicNameConfiguration ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationPtrInput `pulumi:"topicNameConfiguration"` // List of regular expression patterns indicating the topics that should not be replica. TopicsToExcludes pulumi.StringArrayInput `pulumi:"topicsToExcludes"` @@ -4438,6 +4440,7 @@ func (o ReplicatorReplicationInfoListTopicReplicationOutput) StartingPosition() }).(ReplicatorReplicationInfoListTopicReplicationStartingPositionPtrOutput) } +// Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. func (o ReplicatorReplicationInfoListTopicReplicationOutput) TopicNameConfiguration() ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationPtrOutput { return o.ApplyT(func(v ReplicatorReplicationInfoListTopicReplication) *ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration { return v.TopicNameConfiguration @@ -4612,6 +4615,7 @@ func (o ReplicatorReplicationInfoListTopicReplicationStartingPositionPtrOutput) } type ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration struct { + // The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. Type *string `pulumi:"type"` } @@ -4627,6 +4631,7 @@ type ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationInput in } type ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs struct { + // The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. Type pulumi.StringPtrInput `pulumi:"type"` } @@ -4707,6 +4712,7 @@ func (o ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationOutpu }).(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationPtrOutput) } +// The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. func (o ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationOutput) Type() pulumi.StringPtrOutput { return o.ApplyT(func(v ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration) *string { return v.Type }).(pulumi.StringPtrOutput) } @@ -4735,6 +4741,7 @@ func (o ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationPtrOu }).(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationOutput) } +// The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. func (o ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationPtrOutput) Type() pulumi.StringPtrOutput { return o.ApplyT(func(v *ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration) *string { if v == nil { diff --git a/sdk/go/aws/msk/replicator.go b/sdk/go/aws/msk/replicator.go index 3733fc5d497..a93924f12f0 100644 --- a/sdk/go/aws/msk/replicator.go +++ b/sdk/go/aws/msk/replicator.go @@ -16,6 +16,81 @@ import ( // // ## Example Usage // +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/msk" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := msk.NewReplicator(ctx, "test", &msk.ReplicatorArgs{ +// ReplicatorName: pulumi.String("test-name"), +// Description: pulumi.String("test-description"), +// ServiceExecutionRoleArn: pulumi.Any(sourceAwsIamRole.Arn), +// KafkaClusters: msk.ReplicatorKafkaClusterArray{ +// &msk.ReplicatorKafkaClusterArgs{ +// AmazonMskCluster: &msk.ReplicatorKafkaClusterAmazonMskClusterArgs{ +// MskClusterArn: pulumi.Any(source.Arn), +// }, +// VpcConfig: &msk.ReplicatorKafkaClusterVpcConfigArgs{ +// SubnetIds: []pulumi.String(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:9,27-48)), +// SecurityGroupsIds: pulumi.StringArray{ +// sourceAwsSecurityGroup.Id, +// }, +// }, +// }, +// &msk.ReplicatorKafkaClusterArgs{ +// AmazonMskCluster: &msk.ReplicatorKafkaClusterAmazonMskClusterArgs{ +// MskClusterArn: pulumi.Any(target.Arn), +// }, +// VpcConfig: &msk.ReplicatorKafkaClusterVpcConfigArgs{ +// SubnetIds: []pulumi.String(%!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ example.pp:17,27-48)), +// SecurityGroupsIds: pulumi.StringArray{ +// targetAwsSecurityGroup.Id, +// }, +// }, +// }, +// }, +// ReplicationInfoList: &msk.ReplicatorReplicationInfoListArgs{ +// SourceKafkaClusterArn: pulumi.Any(source.Arn), +// TargetKafkaClusterArn: pulumi.Any(target.Arn), +// TargetCompressionType: pulumi.String("NONE"), +// TopicReplications: msk.ReplicatorReplicationInfoListTopicReplicationArray{ +// &msk.ReplicatorReplicationInfoListTopicReplicationArgs{ +// TopicNameConfiguration: &msk.ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs{ +// Type: pulumi.String("PREFIXED_WITH_SOURCE_CLUSTER_ALIAS"), +// }, +// TopicsToReplicates: pulumi.StringArray{ +// pulumi.String(".*"), +// }, +// StartingPosition: &msk.ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs{ +// Type: pulumi.String("LATEST"), +// }, +// }, +// }, +// ConsumerGroupReplications: msk.ReplicatorReplicationInfoListConsumerGroupReplicationArray{ +// &msk.ReplicatorReplicationInfoListConsumerGroupReplicationArgs{ +// ConsumerGroupsToReplicates: pulumi.StringArray{ +// pulumi.String(".*"), +// }, +// }, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// ``` +// // ## Import // // Using `pulumi import`, import MSK replicators using the replicator ARN. For example: diff --git a/sdk/go/aws/quicksight/user.go b/sdk/go/aws/quicksight/user.go index b74ebd724b8..0761346f6c2 100644 --- a/sdk/go/aws/quicksight/user.go +++ b/sdk/go/aws/quicksight/user.go @@ -16,6 +16,8 @@ import ( // // ## Example Usage // +// ### Create User With IAM Identity Type Using an IAM Role +// // ```go // package main // @@ -29,12 +31,70 @@ import ( // func main() { // pulumi.Run(func(ctx *pulumi.Context) error { // _, err := quicksight.NewUser(ctx, "example", &quicksight.UserArgs{ -// SessionName: pulumi.String("an-author"), -// Email: pulumi.String("author@example.com"), -// Namespace: pulumi.String("foo"), +// Email: pulumi.String("author1@example.com"), // IdentityType: pulumi.String("IAM"), -// IamArn: pulumi.String("arn:aws:iam::123456789012:user/Example"), // UserRole: pulumi.String("AUTHOR"), +// IamArn: pulumi.String("arn:aws:iam::123456789012:role/AuthorRole"), +// SessionName: pulumi.String("author1"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Create User With IAM Identity Type Using an IAM User +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := quicksight.NewUser(ctx, "example", &quicksight.UserArgs{ +// Email: pulumi.String("authorpro1@example.com"), +// IdentityType: pulumi.String("IAM"), +// UserRole: pulumi.String("AUTHOR_PRO"), +// IamArn: pulumi.String("arn:aws:iam::123456789012:user/authorpro1"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Create User With QuickSight Identity Type in Non-Default Namespace +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := quicksight.NewUser(ctx, "example", &quicksight.UserArgs{ +// Email: pulumi.String("reader1@example.com"), +// IdentityType: pulumi.String("QUICKSIGHT"), +// UserRole: pulumi.String("READER"), +// Namespace: pulumi.String("example"), +// UserName: pulumi.String("reader1"), // }) // if err != nil { // return err @@ -51,23 +111,27 @@ import ( type User struct { pulumi.CustomResourceState - // Amazon Resource Name (ARN) of the user + // Amazon Resource Name (ARN) for the user. Arn pulumi.StringOutput `pulumi:"arn"` - // The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + // ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"` - // The email address of the user that you want to register. + // Email address of the user that you want to register. Email pulumi.StringOutput `pulumi:"email"` - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. IamArn pulumi.StringPtrOutput `pulumi:"iamArn"` - // Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + // Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. IdentityType pulumi.StringOutput `pulumi:"identityType"` // The Amazon Quicksight namespace to create the user in. Defaults to `default`. Namespace pulumi.StringPtrOutput `pulumi:"namespace"` - // The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + // Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. SessionName pulumi.StringPtrOutput `pulumi:"sessionName"` - // The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + // URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + UserInvitationUrl pulumi.StringOutput `pulumi:"userInvitationUrl"` + // Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. UserName pulumi.StringPtrOutput `pulumi:"userName"` - // The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + // Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + // + // The following arguments are optional: UserRole pulumi.StringOutput `pulumi:"userRole"` } @@ -110,44 +174,52 @@ func GetUser(ctx *pulumi.Context, // Input properties used for looking up and filtering User resources. type userState struct { - // Amazon Resource Name (ARN) of the user + // Amazon Resource Name (ARN) for the user. Arn *string `pulumi:"arn"` - // The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + // ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. AwsAccountId *string `pulumi:"awsAccountId"` - // The email address of the user that you want to register. + // Email address of the user that you want to register. Email *string `pulumi:"email"` - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. IamArn *string `pulumi:"iamArn"` - // Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + // Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. IdentityType *string `pulumi:"identityType"` // The Amazon Quicksight namespace to create the user in. Defaults to `default`. Namespace *string `pulumi:"namespace"` - // The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + // Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. SessionName *string `pulumi:"sessionName"` - // The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + // URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + UserInvitationUrl *string `pulumi:"userInvitationUrl"` + // Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. UserName *string `pulumi:"userName"` - // The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + // Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + // + // The following arguments are optional: UserRole *string `pulumi:"userRole"` } type UserState struct { - // Amazon Resource Name (ARN) of the user + // Amazon Resource Name (ARN) for the user. Arn pulumi.StringPtrInput - // The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + // ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. AwsAccountId pulumi.StringPtrInput - // The email address of the user that you want to register. + // Email address of the user that you want to register. Email pulumi.StringPtrInput - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. IamArn pulumi.StringPtrInput - // Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + // Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. IdentityType pulumi.StringPtrInput // The Amazon Quicksight namespace to create the user in. Defaults to `default`. Namespace pulumi.StringPtrInput - // The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + // Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. SessionName pulumi.StringPtrInput - // The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + // URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + UserInvitationUrl pulumi.StringPtrInput + // Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. UserName pulumi.StringPtrInput - // The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + // Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + // + // The following arguments are optional: UserRole pulumi.StringPtrInput } @@ -156,41 +228,45 @@ func (UserState) ElementType() reflect.Type { } type userArgs struct { - // The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + // ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. AwsAccountId *string `pulumi:"awsAccountId"` - // The email address of the user that you want to register. + // Email address of the user that you want to register. Email string `pulumi:"email"` - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. IamArn *string `pulumi:"iamArn"` - // Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + // Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. IdentityType string `pulumi:"identityType"` // The Amazon Quicksight namespace to create the user in. Defaults to `default`. Namespace *string `pulumi:"namespace"` - // The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + // Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. SessionName *string `pulumi:"sessionName"` - // The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + // Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. UserName *string `pulumi:"userName"` - // The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + // Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + // + // The following arguments are optional: UserRole string `pulumi:"userRole"` } // The set of arguments for constructing a User resource. type UserArgs struct { - // The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + // ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. AwsAccountId pulumi.StringPtrInput - // The email address of the user that you want to register. + // Email address of the user that you want to register. Email pulumi.StringInput - // The ARN of the IAM user or role that you are registering with Amazon QuickSight. + // ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. IamArn pulumi.StringPtrInput - // Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + // Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. IdentityType pulumi.StringInput // The Amazon Quicksight namespace to create the user in. Defaults to `default`. Namespace pulumi.StringPtrInput - // The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + // Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. SessionName pulumi.StringPtrInput - // The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + // Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. UserName pulumi.StringPtrInput - // The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + // Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + // + // The following arguments are optional: UserRole pulumi.StringInput } @@ -281,27 +357,27 @@ func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput { return o } -// Amazon Resource Name (ARN) of the user +// Amazon Resource Name (ARN) for the user. func (o UserOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. +// ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. func (o UserOutput) AwsAccountId() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.AwsAccountId }).(pulumi.StringOutput) } -// The email address of the user that you want to register. +// Email address of the user that you want to register. func (o UserOutput) Email() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.Email }).(pulumi.StringOutput) } -// The ARN of the IAM user or role that you are registering with Amazon QuickSight. +// ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. func (o UserOutput) IamArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *User) pulumi.StringPtrOutput { return v.IamArn }).(pulumi.StringPtrOutput) } -// Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. +// Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. func (o UserOutput) IdentityType() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.IdentityType }).(pulumi.StringOutput) } @@ -311,17 +387,24 @@ func (o UserOutput) Namespace() pulumi.StringPtrOutput { return o.ApplyT(func(v *User) pulumi.StringPtrOutput { return v.Namespace }).(pulumi.StringPtrOutput) } -// The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. +// Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. func (o UserOutput) SessionName() pulumi.StringPtrOutput { return o.ApplyT(func(v *User) pulumi.StringPtrOutput { return v.SessionName }).(pulumi.StringPtrOutput) } -// The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. +// URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. +func (o UserOutput) UserInvitationUrl() pulumi.StringOutput { + return o.ApplyT(func(v *User) pulumi.StringOutput { return v.UserInvitationUrl }).(pulumi.StringOutput) +} + +// Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. func (o UserOutput) UserName() pulumi.StringPtrOutput { return o.ApplyT(func(v *User) pulumi.StringPtrOutput { return v.UserName }).(pulumi.StringPtrOutput) } -// The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. +// Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. +// +// The following arguments are optional: func (o UserOutput) UserRole() pulumi.StringOutput { return o.ApplyT(func(v *User) pulumi.StringOutput { return v.UserRole }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/rds/cluster.go b/sdk/go/aws/rds/cluster.go index 0ed0916f857..2f78577fd28 100644 --- a/sdk/go/aws/rds/cluster.go +++ b/sdk/go/aws/rds/cluster.go @@ -464,7 +464,7 @@ type Cluster struct { MasterUsername pulumi.StringOutput `pulumi:"masterUsername"` // Network type of the cluster. Valid values: `IPV4`, `DUAL`. NetworkType pulumi.StringOutput `pulumi:"networkType"` - // Enables Performance Insights for the RDS Cluster + // Enables Performance Insights. PerformanceInsightsEnabled pulumi.BoolPtrOutput `pulumi:"performanceInsightsEnabled"` // Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). PerformanceInsightsKmsKeyId pulumi.StringOutput `pulumi:"performanceInsightsKmsKeyId"` @@ -648,7 +648,7 @@ type clusterState struct { MasterUsername *string `pulumi:"masterUsername"` // Network type of the cluster. Valid values: `IPV4`, `DUAL`. NetworkType *string `pulumi:"networkType"` - // Enables Performance Insights for the RDS Cluster + // Enables Performance Insights. PerformanceInsightsEnabled *bool `pulumi:"performanceInsightsEnabled"` // Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). PerformanceInsightsKmsKeyId *string `pulumi:"performanceInsightsKmsKeyId"` @@ -793,7 +793,7 @@ type ClusterState struct { MasterUsername pulumi.StringPtrInput // Network type of the cluster. Valid values: `IPV4`, `DUAL`. NetworkType pulumi.StringPtrInput - // Enables Performance Insights for the RDS Cluster + // Enables Performance Insights. PerformanceInsightsEnabled pulumi.BoolPtrInput // Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). PerformanceInsightsKmsKeyId pulumi.StringPtrInput @@ -928,7 +928,7 @@ type clusterArgs struct { MasterUsername *string `pulumi:"masterUsername"` // Network type of the cluster. Valid values: `IPV4`, `DUAL`. NetworkType *string `pulumi:"networkType"` - // Enables Performance Insights for the RDS Cluster + // Enables Performance Insights. PerformanceInsightsEnabled *bool `pulumi:"performanceInsightsEnabled"` // Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). PerformanceInsightsKmsKeyId *string `pulumi:"performanceInsightsKmsKeyId"` @@ -1053,7 +1053,7 @@ type ClusterArgs struct { MasterUsername pulumi.StringPtrInput // Network type of the cluster. Valid values: `IPV4`, `DUAL`. NetworkType pulumi.StringPtrInput - // Enables Performance Insights for the RDS Cluster + // Enables Performance Insights. PerformanceInsightsEnabled pulumi.BoolPtrInput // Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). PerformanceInsightsKmsKeyId pulumi.StringPtrInput @@ -1418,7 +1418,7 @@ func (o ClusterOutput) NetworkType() pulumi.StringOutput { return o.ApplyT(func(v *Cluster) pulumi.StringOutput { return v.NetworkType }).(pulumi.StringOutput) } -// Enables Performance Insights for the RDS Cluster +// Enables Performance Insights. func (o ClusterOutput) PerformanceInsightsEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Cluster) pulumi.BoolPtrOutput { return v.PerformanceInsightsEnabled }).(pulumi.BoolPtrOutput) } diff --git a/sdk/go/aws/rds/clusterInstance.go b/sdk/go/aws/rds/clusterInstance.go index 42c7c42330b..1ca67f26009 100644 --- a/sdk/go/aws/rds/clusterInstance.go +++ b/sdk/go/aws/rds/clusterInstance.go @@ -138,7 +138,7 @@ type ClusterInstance struct { MonitoringRoleArn pulumi.StringOutput `pulumi:"monitoringRoleArn"` // Network type of the DB instance. NetworkType pulumi.StringOutput `pulumi:"networkType"` - // Specifies whether Performance Insights is enabled or not. + // Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. PerformanceInsightsEnabled pulumi.BoolOutput `pulumi:"performanceInsightsEnabled"` // ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. PerformanceInsightsKmsKeyId pulumi.StringOutput `pulumi:"performanceInsightsKmsKeyId"` @@ -252,7 +252,7 @@ type clusterInstanceState struct { MonitoringRoleArn *string `pulumi:"monitoringRoleArn"` // Network type of the DB instance. NetworkType *string `pulumi:"networkType"` - // Specifies whether Performance Insights is enabled or not. + // Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. PerformanceInsightsEnabled *bool `pulumi:"performanceInsightsEnabled"` // ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. PerformanceInsightsKmsKeyId *string `pulumi:"performanceInsightsKmsKeyId"` @@ -328,7 +328,7 @@ type ClusterInstanceState struct { MonitoringRoleArn pulumi.StringPtrInput // Network type of the DB instance. NetworkType pulumi.StringPtrInput - // Specifies whether Performance Insights is enabled or not. + // Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. PerformanceInsightsEnabled pulumi.BoolPtrInput // ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. PerformanceInsightsKmsKeyId pulumi.StringPtrInput @@ -396,7 +396,7 @@ type clusterInstanceArgs struct { MonitoringInterval *int `pulumi:"monitoringInterval"` // ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. MonitoringRoleArn *string `pulumi:"monitoringRoleArn"` - // Specifies whether Performance Insights is enabled or not. + // Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. PerformanceInsightsEnabled *bool `pulumi:"performanceInsightsEnabled"` // ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. PerformanceInsightsKmsKeyId *string `pulumi:"performanceInsightsKmsKeyId"` @@ -451,7 +451,7 @@ type ClusterInstanceArgs struct { MonitoringInterval pulumi.IntPtrInput // ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. MonitoringRoleArn pulumi.StringPtrInput - // Specifies whether Performance Insights is enabled or not. + // Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. PerformanceInsightsEnabled pulumi.BoolPtrInput // ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true. PerformanceInsightsKmsKeyId pulumi.StringPtrInput @@ -672,7 +672,7 @@ func (o ClusterInstanceOutput) NetworkType() pulumi.StringOutput { return o.ApplyT(func(v *ClusterInstance) pulumi.StringOutput { return v.NetworkType }).(pulumi.StringOutput) } -// Specifies whether Performance Insights is enabled or not. +// Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. func (o ClusterInstanceOutput) PerformanceInsightsEnabled() pulumi.BoolOutput { return o.ApplyT(func(v *ClusterInstance) pulumi.BoolOutput { return v.PerformanceInsightsEnabled }).(pulumi.BoolOutput) } diff --git a/sdk/go/aws/rds/getCertificate.go b/sdk/go/aws/rds/getCertificate.go index a92d15e463b..9ddaac4a90b 100644 --- a/sdk/go/aws/rds/getCertificate.go +++ b/sdk/go/aws/rds/getCertificate.go @@ -50,6 +50,8 @@ func LookupCertificate(ctx *pulumi.Context, args *LookupCertificateArgs, opts .. // A collection of arguments for invoking getCertificate. type LookupCertificateArgs struct { + // When enabled, returns the default certificate for new RDS instances. + DefaultForNewLaunches *bool `pulumi:"defaultForNewLaunches"` // Certificate identifier. For example, `rds-ca-2019`. Id *string `pulumi:"id"` // When enabled, returns the certificate with the latest `ValidTill`. @@ -66,6 +68,7 @@ type LookupCertificateResult struct { CustomerOverride bool `pulumi:"customerOverride"` // If there is an override for the default certificate identifier, when the override expires. CustomerOverrideValidTill string `pulumi:"customerOverrideValidTill"` + DefaultForNewLaunches *bool `pulumi:"defaultForNewLaunches"` Id string `pulumi:"id"` LatestValidTill *bool `pulumi:"latestValidTill"` // Thumbprint of the certificate. @@ -87,6 +90,8 @@ func LookupCertificateOutput(ctx *pulumi.Context, args LookupCertificateOutputAr // A collection of arguments for invoking getCertificate. type LookupCertificateOutputArgs struct { + // When enabled, returns the default certificate for new RDS instances. + DefaultForNewLaunches pulumi.BoolPtrInput `pulumi:"defaultForNewLaunches"` // Certificate identifier. For example, `rds-ca-2019`. Id pulumi.StringPtrInput `pulumi:"id"` // When enabled, returns the certificate with the latest `ValidTill`. @@ -132,6 +137,10 @@ func (o LookupCertificateResultOutput) CustomerOverrideValidTill() pulumi.String return o.ApplyT(func(v LookupCertificateResult) string { return v.CustomerOverrideValidTill }).(pulumi.StringOutput) } +func (o LookupCertificateResultOutput) DefaultForNewLaunches() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupCertificateResult) *bool { return v.DefaultForNewLaunches }).(pulumi.BoolPtrOutput) +} + func (o LookupCertificateResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupCertificateResult) string { return v.Id }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/rds/getEngineVersion.go b/sdk/go/aws/rds/getEngineVersion.go index 7ab225002e3..a0f75c2ca0a 100644 --- a/sdk/go/aws/rds/getEngineVersion.go +++ b/sdk/go/aws/rds/getEngineVersion.go @@ -150,10 +150,16 @@ type GetEngineVersionResult struct { SupportedModes []string `pulumi:"supportedModes"` // Set of the time zones supported by the engine version. SupportedTimezones []string `pulumi:"supportedTimezones"` + // Whether the certificates can be rotated without restarting the Aurora instance. + SupportsCertificateRotationWithoutRestart bool `pulumi:"supportsCertificateRotationWithoutRestart"` // Whether you can use Aurora global databases with the engine version. SupportsGlobalDatabases bool `pulumi:"supportsGlobalDatabases"` + // Whether the engine version supports integrations with other AWS services. + SupportsIntegrations bool `pulumi:"supportsIntegrations"` // Whether the engine version supports Aurora Limitless Database. SupportsLimitlessDatabase bool `pulumi:"supportsLimitlessDatabase"` + // Whether the engine version supports local write forwarding or not. + SupportsLocalWriteForwarding bool `pulumi:"supportsLocalWriteForwarding"` // Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. SupportsLogExportsToCloudwatch bool `pulumi:"supportsLogExportsToCloudwatch"` // Whether you can use Aurora parallel query with the engine version. @@ -319,16 +325,31 @@ func (o GetEngineVersionResultOutput) SupportedTimezones() pulumi.StringArrayOut return o.ApplyT(func(v GetEngineVersionResult) []string { return v.SupportedTimezones }).(pulumi.StringArrayOutput) } +// Whether the certificates can be rotated without restarting the Aurora instance. +func (o GetEngineVersionResultOutput) SupportsCertificateRotationWithoutRestart() pulumi.BoolOutput { + return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsCertificateRotationWithoutRestart }).(pulumi.BoolOutput) +} + // Whether you can use Aurora global databases with the engine version. func (o GetEngineVersionResultOutput) SupportsGlobalDatabases() pulumi.BoolOutput { return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsGlobalDatabases }).(pulumi.BoolOutput) } +// Whether the engine version supports integrations with other AWS services. +func (o GetEngineVersionResultOutput) SupportsIntegrations() pulumi.BoolOutput { + return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsIntegrations }).(pulumi.BoolOutput) +} + // Whether the engine version supports Aurora Limitless Database. func (o GetEngineVersionResultOutput) SupportsLimitlessDatabase() pulumi.BoolOutput { return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsLimitlessDatabase }).(pulumi.BoolOutput) } +// Whether the engine version supports local write forwarding or not. +func (o GetEngineVersionResultOutput) SupportsLocalWriteForwarding() pulumi.BoolOutput { + return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsLocalWriteForwarding }).(pulumi.BoolOutput) +} + // Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. func (o GetEngineVersionResultOutput) SupportsLogExportsToCloudwatch() pulumi.BoolOutput { return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsLogExportsToCloudwatch }).(pulumi.BoolOutput) diff --git a/sdk/go/aws/rds/integration.go b/sdk/go/aws/rds/integration.go index 07b5cbb3956..1980b5fa1f5 100644 --- a/sdk/go/aws/rds/integration.go +++ b/sdk/go/aws/rds/integration.go @@ -168,13 +168,23 @@ import ( type Integration struct { pulumi.CustomResourceState - // Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + // Set of non-secret key–value pairs that contains additional contextual information about the data. + // For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + // You can only include this parameter if you specify the `kmsKeyId` parameter. AdditionalEncryptionContext pulumi.StringMapOutput `pulumi:"additionalEncryptionContext"` // ARN of the Integration. Arn pulumi.StringOutput `pulumi:"arn"` + // Data filters for the integration. + // These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + // The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + // Multiple expressions are separated by a comma. + // See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + DataFilter pulumi.StringOutput `pulumi:"dataFilter"` // Name of the integration. IntegrationName pulumi.StringOutput `pulumi:"integrationName"` - // KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + // KMS key identifier for the key to use to encrypt the integration. + // If you don't specify an encryption key, RDS uses a default AWS owned key. + // If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"` // ARN of the database to use as the source for replication. SourceArn pulumi.StringOutput `pulumi:"sourceArn"` @@ -230,13 +240,23 @@ func GetIntegration(ctx *pulumi.Context, // Input properties used for looking up and filtering Integration resources. type integrationState struct { - // Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + // Set of non-secret key–value pairs that contains additional contextual information about the data. + // For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + // You can only include this parameter if you specify the `kmsKeyId` parameter. AdditionalEncryptionContext map[string]string `pulumi:"additionalEncryptionContext"` // ARN of the Integration. Arn *string `pulumi:"arn"` + // Data filters for the integration. + // These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + // The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + // Multiple expressions are separated by a comma. + // See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + DataFilter *string `pulumi:"dataFilter"` // Name of the integration. IntegrationName *string `pulumi:"integrationName"` - // KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + // KMS key identifier for the key to use to encrypt the integration. + // If you don't specify an encryption key, RDS uses a default AWS owned key. + // If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. KmsKeyId *string `pulumi:"kmsKeyId"` // ARN of the database to use as the source for replication. SourceArn *string `pulumi:"sourceArn"` @@ -254,13 +274,23 @@ type integrationState struct { } type IntegrationState struct { - // Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + // Set of non-secret key–value pairs that contains additional contextual information about the data. + // For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + // You can only include this parameter if you specify the `kmsKeyId` parameter. AdditionalEncryptionContext pulumi.StringMapInput // ARN of the Integration. Arn pulumi.StringPtrInput + // Data filters for the integration. + // These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + // The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + // Multiple expressions are separated by a comma. + // See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + DataFilter pulumi.StringPtrInput // Name of the integration. IntegrationName pulumi.StringPtrInput - // KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + // KMS key identifier for the key to use to encrypt the integration. + // If you don't specify an encryption key, RDS uses a default AWS owned key. + // If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. KmsKeyId pulumi.StringPtrInput // ARN of the database to use as the source for replication. SourceArn pulumi.StringPtrInput @@ -282,11 +312,21 @@ func (IntegrationState) ElementType() reflect.Type { } type integrationArgs struct { - // Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + // Set of non-secret key–value pairs that contains additional contextual information about the data. + // For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + // You can only include this parameter if you specify the `kmsKeyId` parameter. AdditionalEncryptionContext map[string]string `pulumi:"additionalEncryptionContext"` + // Data filters for the integration. + // These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + // The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + // Multiple expressions are separated by a comma. + // See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + DataFilter *string `pulumi:"dataFilter"` // Name of the integration. IntegrationName string `pulumi:"integrationName"` - // KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + // KMS key identifier for the key to use to encrypt the integration. + // If you don't specify an encryption key, RDS uses a default AWS owned key. + // If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. KmsKeyId *string `pulumi:"kmsKeyId"` // ARN of the database to use as the source for replication. SourceArn string `pulumi:"sourceArn"` @@ -301,11 +341,21 @@ type integrationArgs struct { // The set of arguments for constructing a Integration resource. type IntegrationArgs struct { - // Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + // Set of non-secret key–value pairs that contains additional contextual information about the data. + // For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + // You can only include this parameter if you specify the `kmsKeyId` parameter. AdditionalEncryptionContext pulumi.StringMapInput + // Data filters for the integration. + // These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + // The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + // Multiple expressions are separated by a comma. + // See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + DataFilter pulumi.StringPtrInput // Name of the integration. IntegrationName pulumi.StringInput - // KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + // KMS key identifier for the key to use to encrypt the integration. + // If you don't specify an encryption key, RDS uses a default AWS owned key. + // If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. KmsKeyId pulumi.StringPtrInput // ARN of the database to use as the source for replication. SourceArn pulumi.StringInput @@ -405,7 +455,9 @@ func (o IntegrationOutput) ToIntegrationOutputWithContext(ctx context.Context) I return o } -// Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. +// Set of non-secret key–value pairs that contains additional contextual information about the data. +// For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). +// You can only include this parameter if you specify the `kmsKeyId` parameter. func (o IntegrationOutput) AdditionalEncryptionContext() pulumi.StringMapOutput { return o.ApplyT(func(v *Integration) pulumi.StringMapOutput { return v.AdditionalEncryptionContext }).(pulumi.StringMapOutput) } @@ -415,12 +467,23 @@ func (o IntegrationOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Integration) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } +// Data filters for the integration. +// These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. +// The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. +// Multiple expressions are separated by a comma. +// See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. +func (o IntegrationOutput) DataFilter() pulumi.StringOutput { + return o.ApplyT(func(v *Integration) pulumi.StringOutput { return v.DataFilter }).(pulumi.StringOutput) +} + // Name of the integration. func (o IntegrationOutput) IntegrationName() pulumi.StringOutput { return o.ApplyT(func(v *Integration) pulumi.StringOutput { return v.IntegrationName }).(pulumi.StringOutput) } -// KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. +// KMS key identifier for the key to use to encrypt the integration. +// If you don't specify an encryption key, RDS uses a default AWS owned key. +// If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. func (o IntegrationOutput) KmsKeyId() pulumi.StringOutput { return o.ApplyT(func(v *Integration) pulumi.StringOutput { return v.KmsKeyId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/rds/pulumiTypes.go b/sdk/go/aws/rds/pulumiTypes.go index dbb7083f7e4..cfc5d87e4ea 100644 --- a/sdk/go/aws/rds/pulumiTypes.go +++ b/sdk/go/aws/rds/pulumiTypes.go @@ -3037,7 +3037,7 @@ func (o ParameterGroupParameterArrayOutput) Index(i pulumi.IntInput) ParameterGr type ProxyAuth struct { // The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`. AuthScheme *string `pulumi:"authScheme"` - // The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + // The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. ClientPasswordAuthType *string `pulumi:"clientPasswordAuthType"` // A user-specified description about the authentication used by a proxy to log in as a specific database user. Description *string `pulumi:"description"` @@ -3063,7 +3063,7 @@ type ProxyAuthInput interface { type ProxyAuthArgs struct { // The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`. AuthScheme pulumi.StringPtrInput `pulumi:"authScheme"` - // The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + // The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. ClientPasswordAuthType pulumi.StringPtrInput `pulumi:"clientPasswordAuthType"` // A user-specified description about the authentication used by a proxy to log in as a specific database user. Description pulumi.StringPtrInput `pulumi:"description"` @@ -3131,7 +3131,7 @@ func (o ProxyAuthOutput) AuthScheme() pulumi.StringPtrOutput { return o.ApplyT(func(v ProxyAuth) *string { return v.AuthScheme }).(pulumi.StringPtrOutput) } -// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. +// The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. func (o ProxyAuthOutput) ClientPasswordAuthType() pulumi.StringPtrOutput { return o.ApplyT(func(v ProxyAuth) *string { return v.ClientPasswordAuthType }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/route53/getRecords.go b/sdk/go/aws/route53/getRecords.go new file mode 100644 index 00000000000..903a52f6a7c --- /dev/null +++ b/sdk/go/aws/route53/getRecords.go @@ -0,0 +1,172 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package route53 + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Use this data source to get the details of resource records in a Route 53 hosted zone. +// +// ## Example Usage +// +// ### Basic Usage +// +// Return all records in the zone. +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// selected, err := route53.LookupZone(ctx, &route53.LookupZoneArgs{ +// Name: pulumi.StringRef("test.com."), +// PrivateZone: pulumi.BoolRef(true), +// }, nil) +// if err != nil { +// return err +// } +// _, err = route53.GetRecords(ctx, &route53.GetRecordsArgs{ +// ZoneId: selected.ZoneId, +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Basic Usage with filter +// +// Return the records that starts with `www`. +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// selected, err := route53.LookupZone(ctx, &route53.LookupZoneArgs{ +// Name: pulumi.StringRef("test.com."), +// PrivateZone: pulumi.BoolRef(true), +// }, nil) +// if err != nil { +// return err +// } +// _, err = route53.GetRecords(ctx, &route53.GetRecordsArgs{ +// ZoneId: selected.ZoneId, +// NameRegex: pulumi.StringRef("^www"), +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetRecords(ctx *pulumi.Context, args *GetRecordsArgs, opts ...pulumi.InvokeOption) (*GetRecordsResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetRecordsResult + err := ctx.Invoke("aws:route53/getRecords:getRecords", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getRecords. +type GetRecordsArgs struct { + // Regex string to apply to the resource record names returned by AWS. + NameRegex *string `pulumi:"nameRegex"` + // The ID of the hosted zone that contains the resource record sets that you want to list. + ZoneId string `pulumi:"zoneId"` +} + +// A collection of values returned by getRecords. +type GetRecordsResult struct { + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + NameRegex *string `pulumi:"nameRegex"` + // The resource records sets. + ResourceRecordSets []GetRecordsResourceRecordSet `pulumi:"resourceRecordSets"` + ZoneId string `pulumi:"zoneId"` +} + +func GetRecordsOutput(ctx *pulumi.Context, args GetRecordsOutputArgs, opts ...pulumi.InvokeOption) GetRecordsResultOutput { + return pulumi.ToOutputWithContext(ctx.Context(), args). + ApplyT(func(v interface{}) (GetRecordsResultOutput, error) { + args := v.(GetRecordsArgs) + options := pulumi.InvokeOutputOptions{InvokeOptions: internal.PkgInvokeDefaultOpts(opts)} + return ctx.InvokeOutput("aws:route53/getRecords:getRecords", args, GetRecordsResultOutput{}, options).(GetRecordsResultOutput), nil + }).(GetRecordsResultOutput) +} + +// A collection of arguments for invoking getRecords. +type GetRecordsOutputArgs struct { + // Regex string to apply to the resource record names returned by AWS. + NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"` + // The ID of the hosted zone that contains the resource record sets that you want to list. + ZoneId pulumi.StringInput `pulumi:"zoneId"` +} + +func (GetRecordsOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsArgs)(nil)).Elem() +} + +// A collection of values returned by getRecords. +type GetRecordsResultOutput struct{ *pulumi.OutputState } + +func (GetRecordsResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResult)(nil)).Elem() +} + +func (o GetRecordsResultOutput) ToGetRecordsResultOutput() GetRecordsResultOutput { + return o +} + +func (o GetRecordsResultOutput) ToGetRecordsResultOutputWithContext(ctx context.Context) GetRecordsResultOutput { + return o +} + +// The provider-assigned unique ID for this managed resource. +func (o GetRecordsResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResult) string { return v.Id }).(pulumi.StringOutput) +} + +func (o GetRecordsResultOutput) NameRegex() pulumi.StringPtrOutput { + return o.ApplyT(func(v GetRecordsResult) *string { return v.NameRegex }).(pulumi.StringPtrOutput) +} + +// The resource records sets. +func (o GetRecordsResultOutput) ResourceRecordSets() GetRecordsResourceRecordSetArrayOutput { + return o.ApplyT(func(v GetRecordsResult) []GetRecordsResourceRecordSet { return v.ResourceRecordSets }).(GetRecordsResourceRecordSetArrayOutput) +} + +func (o GetRecordsResultOutput) ZoneId() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResult) string { return v.ZoneId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetRecordsResultOutput{}) +} diff --git a/sdk/go/aws/route53/pulumiTypes.go b/sdk/go/aws/route53/pulumiTypes.go index 3c169df4a74..3e568a705d0 100644 --- a/sdk/go/aws/route53/pulumiTypes.go +++ b/sdk/go/aws/route53/pulumiTypes.go @@ -2089,6 +2089,675 @@ func (o GetQueryLogConfigFilterArrayOutput) Index(i pulumi.IntInput) GetQueryLog }).(GetQueryLogConfigFilterOutput) } +type GetRecordsResourceRecordSet struct { + // Information about the AWS resource traffic is routed to. + AliasTarget GetRecordsResourceRecordSetAliasTarget `pulumi:"aliasTarget"` + // Information about the CIDR location traffic is routed to. + CidrRoutingConfig GetRecordsResourceRecordSetCidrRoutingConfig `pulumi:"cidrRoutingConfig"` + // `PRIMARY` or `SECONDARY`. + Failover string `pulumi:"failover"` + // Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + Geolocation GetRecordsResourceRecordSetGeolocation `pulumi:"geolocation"` + // Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + GeoproximityLocation GetRecordsResourceRecordSetGeoproximityLocation `pulumi:"geoproximityLocation"` + // ID of any applicable health check. + HealthCheckId string `pulumi:"healthCheckId"` + // Traffic is routed approximately randomly to multiple resources. + MultiValueAnswer bool `pulumi:"multiValueAnswer"` + // The name of the record. + Name string `pulumi:"name"` + // The Amazon EC2 Region of the resource that this resource record set refers to. + Region string `pulumi:"region"` + // The resource records. + ResourceRecords []GetRecordsResourceRecordSetResourceRecord `pulumi:"resourceRecords"` + // An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + SetIdentifier string `pulumi:"setIdentifier"` + // The ID of any traffic policy instance that Route 53 created this resource record set for. + TrafficPolicyInstanceId string `pulumi:"trafficPolicyInstanceId"` + // The resource record cache time to live (TTL), in seconds. + Ttl int `pulumi:"ttl"` + // The DNS record type. + Type string `pulumi:"type"` + // Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + Weight int `pulumi:"weight"` +} + +// GetRecordsResourceRecordSetInput is an input type that accepts GetRecordsResourceRecordSetArgs and GetRecordsResourceRecordSetOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetInput` via: +// +// GetRecordsResourceRecordSetArgs{...} +type GetRecordsResourceRecordSetInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetOutput() GetRecordsResourceRecordSetOutput + ToGetRecordsResourceRecordSetOutputWithContext(context.Context) GetRecordsResourceRecordSetOutput +} + +type GetRecordsResourceRecordSetArgs struct { + // Information about the AWS resource traffic is routed to. + AliasTarget GetRecordsResourceRecordSetAliasTargetInput `pulumi:"aliasTarget"` + // Information about the CIDR location traffic is routed to. + CidrRoutingConfig GetRecordsResourceRecordSetCidrRoutingConfigInput `pulumi:"cidrRoutingConfig"` + // `PRIMARY` or `SECONDARY`. + Failover pulumi.StringInput `pulumi:"failover"` + // Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + Geolocation GetRecordsResourceRecordSetGeolocationInput `pulumi:"geolocation"` + // Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + GeoproximityLocation GetRecordsResourceRecordSetGeoproximityLocationInput `pulumi:"geoproximityLocation"` + // ID of any applicable health check. + HealthCheckId pulumi.StringInput `pulumi:"healthCheckId"` + // Traffic is routed approximately randomly to multiple resources. + MultiValueAnswer pulumi.BoolInput `pulumi:"multiValueAnswer"` + // The name of the record. + Name pulumi.StringInput `pulumi:"name"` + // The Amazon EC2 Region of the resource that this resource record set refers to. + Region pulumi.StringInput `pulumi:"region"` + // The resource records. + ResourceRecords GetRecordsResourceRecordSetResourceRecordArrayInput `pulumi:"resourceRecords"` + // An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + SetIdentifier pulumi.StringInput `pulumi:"setIdentifier"` + // The ID of any traffic policy instance that Route 53 created this resource record set for. + TrafficPolicyInstanceId pulumi.StringInput `pulumi:"trafficPolicyInstanceId"` + // The resource record cache time to live (TTL), in seconds. + Ttl pulumi.IntInput `pulumi:"ttl"` + // The DNS record type. + Type pulumi.StringInput `pulumi:"type"` + // Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + Weight pulumi.IntInput `pulumi:"weight"` +} + +func (GetRecordsResourceRecordSetArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSet)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetArgs) ToGetRecordsResourceRecordSetOutput() GetRecordsResourceRecordSetOutput { + return i.ToGetRecordsResourceRecordSetOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetArgs) ToGetRecordsResourceRecordSetOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetOutput) +} + +// GetRecordsResourceRecordSetArrayInput is an input type that accepts GetRecordsResourceRecordSetArray and GetRecordsResourceRecordSetArrayOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetArrayInput` via: +// +// GetRecordsResourceRecordSetArray{ GetRecordsResourceRecordSetArgs{...} } +type GetRecordsResourceRecordSetArrayInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetArrayOutput() GetRecordsResourceRecordSetArrayOutput + ToGetRecordsResourceRecordSetArrayOutputWithContext(context.Context) GetRecordsResourceRecordSetArrayOutput +} + +type GetRecordsResourceRecordSetArray []GetRecordsResourceRecordSetInput + +func (GetRecordsResourceRecordSetArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRecordsResourceRecordSet)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetArray) ToGetRecordsResourceRecordSetArrayOutput() GetRecordsResourceRecordSetArrayOutput { + return i.ToGetRecordsResourceRecordSetArrayOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetArray) ToGetRecordsResourceRecordSetArrayOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetArrayOutput) +} + +type GetRecordsResourceRecordSetOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSet)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetOutput) ToGetRecordsResourceRecordSetOutput() GetRecordsResourceRecordSetOutput { + return o +} + +func (o GetRecordsResourceRecordSetOutput) ToGetRecordsResourceRecordSetOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetOutput { + return o +} + +// Information about the AWS resource traffic is routed to. +func (o GetRecordsResourceRecordSetOutput) AliasTarget() GetRecordsResourceRecordSetAliasTargetOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) GetRecordsResourceRecordSetAliasTarget { return v.AliasTarget }).(GetRecordsResourceRecordSetAliasTargetOutput) +} + +// Information about the CIDR location traffic is routed to. +func (o GetRecordsResourceRecordSetOutput) CidrRoutingConfig() GetRecordsResourceRecordSetCidrRoutingConfigOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) GetRecordsResourceRecordSetCidrRoutingConfig { + return v.CidrRoutingConfig + }).(GetRecordsResourceRecordSetCidrRoutingConfigOutput) +} + +// `PRIMARY` or `SECONDARY`. +func (o GetRecordsResourceRecordSetOutput) Failover() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.Failover }).(pulumi.StringOutput) +} + +// Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. +func (o GetRecordsResourceRecordSetOutput) Geolocation() GetRecordsResourceRecordSetGeolocationOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) GetRecordsResourceRecordSetGeolocation { return v.Geolocation }).(GetRecordsResourceRecordSetGeolocationOutput) +} + +// Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. +func (o GetRecordsResourceRecordSetOutput) GeoproximityLocation() GetRecordsResourceRecordSetGeoproximityLocationOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) GetRecordsResourceRecordSetGeoproximityLocation { + return v.GeoproximityLocation + }).(GetRecordsResourceRecordSetGeoproximityLocationOutput) +} + +// ID of any applicable health check. +func (o GetRecordsResourceRecordSetOutput) HealthCheckId() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.HealthCheckId }).(pulumi.StringOutput) +} + +// Traffic is routed approximately randomly to multiple resources. +func (o GetRecordsResourceRecordSetOutput) MultiValueAnswer() pulumi.BoolOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) bool { return v.MultiValueAnswer }).(pulumi.BoolOutput) +} + +// The name of the record. +func (o GetRecordsResourceRecordSetOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.Name }).(pulumi.StringOutput) +} + +// The Amazon EC2 Region of the resource that this resource record set refers to. +func (o GetRecordsResourceRecordSetOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.Region }).(pulumi.StringOutput) +} + +// The resource records. +func (o GetRecordsResourceRecordSetOutput) ResourceRecords() GetRecordsResourceRecordSetResourceRecordArrayOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) []GetRecordsResourceRecordSetResourceRecord { + return v.ResourceRecords + }).(GetRecordsResourceRecordSetResourceRecordArrayOutput) +} + +// An identifier that differentiates among multiple resource record sets that have the same combination of name and type. +func (o GetRecordsResourceRecordSetOutput) SetIdentifier() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.SetIdentifier }).(pulumi.StringOutput) +} + +// The ID of any traffic policy instance that Route 53 created this resource record set for. +func (o GetRecordsResourceRecordSetOutput) TrafficPolicyInstanceId() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.TrafficPolicyInstanceId }).(pulumi.StringOutput) +} + +// The resource record cache time to live (TTL), in seconds. +func (o GetRecordsResourceRecordSetOutput) Ttl() pulumi.IntOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) int { return v.Ttl }).(pulumi.IntOutput) +} + +// The DNS record type. +func (o GetRecordsResourceRecordSetOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) string { return v.Type }).(pulumi.StringOutput) +} + +// Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. +func (o GetRecordsResourceRecordSetOutput) Weight() pulumi.IntOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSet) int { return v.Weight }).(pulumi.IntOutput) +} + +type GetRecordsResourceRecordSetArrayOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRecordsResourceRecordSet)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetArrayOutput) ToGetRecordsResourceRecordSetArrayOutput() GetRecordsResourceRecordSetArrayOutput { + return o +} + +func (o GetRecordsResourceRecordSetArrayOutput) ToGetRecordsResourceRecordSetArrayOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetArrayOutput { + return o +} + +func (o GetRecordsResourceRecordSetArrayOutput) Index(i pulumi.IntInput) GetRecordsResourceRecordSetOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRecordsResourceRecordSet { + return vs[0].([]GetRecordsResourceRecordSet)[vs[1].(int)] + }).(GetRecordsResourceRecordSetOutput) +} + +type GetRecordsResourceRecordSetAliasTarget struct { + // Target DNS name. + DnsName string `pulumi:"dnsName"` + // Whether an alias resource record set inherits the health of the referenced AWS resource. + EvaluateTargetHealth bool `pulumi:"evaluateTargetHealth"` + // Target hosted zone ID. + HostedZoneId string `pulumi:"hostedZoneId"` +} + +// GetRecordsResourceRecordSetAliasTargetInput is an input type that accepts GetRecordsResourceRecordSetAliasTargetArgs and GetRecordsResourceRecordSetAliasTargetOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetAliasTargetInput` via: +// +// GetRecordsResourceRecordSetAliasTargetArgs{...} +type GetRecordsResourceRecordSetAliasTargetInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetAliasTargetOutput() GetRecordsResourceRecordSetAliasTargetOutput + ToGetRecordsResourceRecordSetAliasTargetOutputWithContext(context.Context) GetRecordsResourceRecordSetAliasTargetOutput +} + +type GetRecordsResourceRecordSetAliasTargetArgs struct { + // Target DNS name. + DnsName pulumi.StringInput `pulumi:"dnsName"` + // Whether an alias resource record set inherits the health of the referenced AWS resource. + EvaluateTargetHealth pulumi.BoolInput `pulumi:"evaluateTargetHealth"` + // Target hosted zone ID. + HostedZoneId pulumi.StringInput `pulumi:"hostedZoneId"` +} + +func (GetRecordsResourceRecordSetAliasTargetArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetAliasTarget)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetAliasTargetArgs) ToGetRecordsResourceRecordSetAliasTargetOutput() GetRecordsResourceRecordSetAliasTargetOutput { + return i.ToGetRecordsResourceRecordSetAliasTargetOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetAliasTargetArgs) ToGetRecordsResourceRecordSetAliasTargetOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetAliasTargetOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetAliasTargetOutput) +} + +type GetRecordsResourceRecordSetAliasTargetOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetAliasTargetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetAliasTarget)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetAliasTargetOutput) ToGetRecordsResourceRecordSetAliasTargetOutput() GetRecordsResourceRecordSetAliasTargetOutput { + return o +} + +func (o GetRecordsResourceRecordSetAliasTargetOutput) ToGetRecordsResourceRecordSetAliasTargetOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetAliasTargetOutput { + return o +} + +// Target DNS name. +func (o GetRecordsResourceRecordSetAliasTargetOutput) DnsName() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetAliasTarget) string { return v.DnsName }).(pulumi.StringOutput) +} + +// Whether an alias resource record set inherits the health of the referenced AWS resource. +func (o GetRecordsResourceRecordSetAliasTargetOutput) EvaluateTargetHealth() pulumi.BoolOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetAliasTarget) bool { return v.EvaluateTargetHealth }).(pulumi.BoolOutput) +} + +// Target hosted zone ID. +func (o GetRecordsResourceRecordSetAliasTargetOutput) HostedZoneId() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetAliasTarget) string { return v.HostedZoneId }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetCidrRoutingConfig struct { + // The CIDR collection ID. + CollectionId string `pulumi:"collectionId"` + // The CIDR collection location name. + LocationName string `pulumi:"locationName"` +} + +// GetRecordsResourceRecordSetCidrRoutingConfigInput is an input type that accepts GetRecordsResourceRecordSetCidrRoutingConfigArgs and GetRecordsResourceRecordSetCidrRoutingConfigOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetCidrRoutingConfigInput` via: +// +// GetRecordsResourceRecordSetCidrRoutingConfigArgs{...} +type GetRecordsResourceRecordSetCidrRoutingConfigInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetCidrRoutingConfigOutput() GetRecordsResourceRecordSetCidrRoutingConfigOutput + ToGetRecordsResourceRecordSetCidrRoutingConfigOutputWithContext(context.Context) GetRecordsResourceRecordSetCidrRoutingConfigOutput +} + +type GetRecordsResourceRecordSetCidrRoutingConfigArgs struct { + // The CIDR collection ID. + CollectionId pulumi.StringInput `pulumi:"collectionId"` + // The CIDR collection location name. + LocationName pulumi.StringInput `pulumi:"locationName"` +} + +func (GetRecordsResourceRecordSetCidrRoutingConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetCidrRoutingConfig)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetCidrRoutingConfigArgs) ToGetRecordsResourceRecordSetCidrRoutingConfigOutput() GetRecordsResourceRecordSetCidrRoutingConfigOutput { + return i.ToGetRecordsResourceRecordSetCidrRoutingConfigOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetCidrRoutingConfigArgs) ToGetRecordsResourceRecordSetCidrRoutingConfigOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetCidrRoutingConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetCidrRoutingConfigOutput) +} + +type GetRecordsResourceRecordSetCidrRoutingConfigOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetCidrRoutingConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetCidrRoutingConfig)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetCidrRoutingConfigOutput) ToGetRecordsResourceRecordSetCidrRoutingConfigOutput() GetRecordsResourceRecordSetCidrRoutingConfigOutput { + return o +} + +func (o GetRecordsResourceRecordSetCidrRoutingConfigOutput) ToGetRecordsResourceRecordSetCidrRoutingConfigOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetCidrRoutingConfigOutput { + return o +} + +// The CIDR collection ID. +func (o GetRecordsResourceRecordSetCidrRoutingConfigOutput) CollectionId() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetCidrRoutingConfig) string { return v.CollectionId }).(pulumi.StringOutput) +} + +// The CIDR collection location name. +func (o GetRecordsResourceRecordSetCidrRoutingConfigOutput) LocationName() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetCidrRoutingConfig) string { return v.LocationName }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetGeolocation struct { + // The two-letter code for the continent. + ContinentCode string `pulumi:"continentCode"` + // The two-letter code for a country. + CountryCode string `pulumi:"countryCode"` + // The two-letter code for a state of the United States. + SubdivisionCode string `pulumi:"subdivisionCode"` +} + +// GetRecordsResourceRecordSetGeolocationInput is an input type that accepts GetRecordsResourceRecordSetGeolocationArgs and GetRecordsResourceRecordSetGeolocationOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetGeolocationInput` via: +// +// GetRecordsResourceRecordSetGeolocationArgs{...} +type GetRecordsResourceRecordSetGeolocationInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetGeolocationOutput() GetRecordsResourceRecordSetGeolocationOutput + ToGetRecordsResourceRecordSetGeolocationOutputWithContext(context.Context) GetRecordsResourceRecordSetGeolocationOutput +} + +type GetRecordsResourceRecordSetGeolocationArgs struct { + // The two-letter code for the continent. + ContinentCode pulumi.StringInput `pulumi:"continentCode"` + // The two-letter code for a country. + CountryCode pulumi.StringInput `pulumi:"countryCode"` + // The two-letter code for a state of the United States. + SubdivisionCode pulumi.StringInput `pulumi:"subdivisionCode"` +} + +func (GetRecordsResourceRecordSetGeolocationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeolocation)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetGeolocationArgs) ToGetRecordsResourceRecordSetGeolocationOutput() GetRecordsResourceRecordSetGeolocationOutput { + return i.ToGetRecordsResourceRecordSetGeolocationOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetGeolocationArgs) ToGetRecordsResourceRecordSetGeolocationOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeolocationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetGeolocationOutput) +} + +type GetRecordsResourceRecordSetGeolocationOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetGeolocationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeolocation)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetGeolocationOutput) ToGetRecordsResourceRecordSetGeolocationOutput() GetRecordsResourceRecordSetGeolocationOutput { + return o +} + +func (o GetRecordsResourceRecordSetGeolocationOutput) ToGetRecordsResourceRecordSetGeolocationOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeolocationOutput { + return o +} + +// The two-letter code for the continent. +func (o GetRecordsResourceRecordSetGeolocationOutput) ContinentCode() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeolocation) string { return v.ContinentCode }).(pulumi.StringOutput) +} + +// The two-letter code for a country. +func (o GetRecordsResourceRecordSetGeolocationOutput) CountryCode() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeolocation) string { return v.CountryCode }).(pulumi.StringOutput) +} + +// The two-letter code for a state of the United States. +func (o GetRecordsResourceRecordSetGeolocationOutput) SubdivisionCode() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeolocation) string { return v.SubdivisionCode }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetGeoproximityLocation struct { + // The AWS Region the resource you are directing DNS traffic to, is in. + AwsRegion string `pulumi:"awsRegion"` + // The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + Bias int `pulumi:"bias"` + // Contains the longitude and latitude for a geographic region. + Coordinates GetRecordsResourceRecordSetGeoproximityLocationCoordinates `pulumi:"coordinates"` + // An AWS Local Zone Group. + LocalZoneGroup string `pulumi:"localZoneGroup"` +} + +// GetRecordsResourceRecordSetGeoproximityLocationInput is an input type that accepts GetRecordsResourceRecordSetGeoproximityLocationArgs and GetRecordsResourceRecordSetGeoproximityLocationOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetGeoproximityLocationInput` via: +// +// GetRecordsResourceRecordSetGeoproximityLocationArgs{...} +type GetRecordsResourceRecordSetGeoproximityLocationInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetGeoproximityLocationOutput() GetRecordsResourceRecordSetGeoproximityLocationOutput + ToGetRecordsResourceRecordSetGeoproximityLocationOutputWithContext(context.Context) GetRecordsResourceRecordSetGeoproximityLocationOutput +} + +type GetRecordsResourceRecordSetGeoproximityLocationArgs struct { + // The AWS Region the resource you are directing DNS traffic to, is in. + AwsRegion pulumi.StringInput `pulumi:"awsRegion"` + // The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + Bias pulumi.IntInput `pulumi:"bias"` + // Contains the longitude and latitude for a geographic region. + Coordinates GetRecordsResourceRecordSetGeoproximityLocationCoordinatesInput `pulumi:"coordinates"` + // An AWS Local Zone Group. + LocalZoneGroup pulumi.StringInput `pulumi:"localZoneGroup"` +} + +func (GetRecordsResourceRecordSetGeoproximityLocationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocation)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetGeoproximityLocationArgs) ToGetRecordsResourceRecordSetGeoproximityLocationOutput() GetRecordsResourceRecordSetGeoproximityLocationOutput { + return i.ToGetRecordsResourceRecordSetGeoproximityLocationOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetGeoproximityLocationArgs) ToGetRecordsResourceRecordSetGeoproximityLocationOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeoproximityLocationOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetGeoproximityLocationOutput) +} + +type GetRecordsResourceRecordSetGeoproximityLocationOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetGeoproximityLocationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocation)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) ToGetRecordsResourceRecordSetGeoproximityLocationOutput() GetRecordsResourceRecordSetGeoproximityLocationOutput { + return o +} + +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) ToGetRecordsResourceRecordSetGeoproximityLocationOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeoproximityLocationOutput { + return o +} + +// The AWS Region the resource you are directing DNS traffic to, is in. +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) AwsRegion() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocation) string { return v.AwsRegion }).(pulumi.StringOutput) +} + +// The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) Bias() pulumi.IntOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocation) int { return v.Bias }).(pulumi.IntOutput) +} + +// Contains the longitude and latitude for a geographic region. +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) Coordinates() GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocation) GetRecordsResourceRecordSetGeoproximityLocationCoordinates { + return v.Coordinates + }).(GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) +} + +// An AWS Local Zone Group. +func (o GetRecordsResourceRecordSetGeoproximityLocationOutput) LocalZoneGroup() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocation) string { return v.LocalZoneGroup }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetGeoproximityLocationCoordinates struct { + // Latitude. + Latitude string `pulumi:"latitude"` + // Longitude. + Longitude string `pulumi:"longitude"` +} + +// GetRecordsResourceRecordSetGeoproximityLocationCoordinatesInput is an input type that accepts GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs and GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetGeoproximityLocationCoordinatesInput` via: +// +// GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs{...} +type GetRecordsResourceRecordSetGeoproximityLocationCoordinatesInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput() GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput + ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutputWithContext(context.Context) GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput +} + +type GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs struct { + // Latitude. + Latitude pulumi.StringInput `pulumi:"latitude"` + // Longitude. + Longitude pulumi.StringInput `pulumi:"longitude"` +} + +func (GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocationCoordinates)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs) ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput() GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput { + return i.ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs) ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) +} + +type GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocationCoordinates)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput() GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput { + return o +} + +func (o GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) ToGetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput { + return o +} + +// Latitude. +func (o GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) Latitude() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocationCoordinates) string { return v.Latitude }).(pulumi.StringOutput) +} + +// Longitude. +func (o GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput) Longitude() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetGeoproximityLocationCoordinates) string { return v.Longitude }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetResourceRecord struct { + // The DNS record value. + Value string `pulumi:"value"` +} + +// GetRecordsResourceRecordSetResourceRecordInput is an input type that accepts GetRecordsResourceRecordSetResourceRecordArgs and GetRecordsResourceRecordSetResourceRecordOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetResourceRecordInput` via: +// +// GetRecordsResourceRecordSetResourceRecordArgs{...} +type GetRecordsResourceRecordSetResourceRecordInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetResourceRecordOutput() GetRecordsResourceRecordSetResourceRecordOutput + ToGetRecordsResourceRecordSetResourceRecordOutputWithContext(context.Context) GetRecordsResourceRecordSetResourceRecordOutput +} + +type GetRecordsResourceRecordSetResourceRecordArgs struct { + // The DNS record value. + Value pulumi.StringInput `pulumi:"value"` +} + +func (GetRecordsResourceRecordSetResourceRecordArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetResourceRecord)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetResourceRecordArgs) ToGetRecordsResourceRecordSetResourceRecordOutput() GetRecordsResourceRecordSetResourceRecordOutput { + return i.ToGetRecordsResourceRecordSetResourceRecordOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetResourceRecordArgs) ToGetRecordsResourceRecordSetResourceRecordOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetResourceRecordOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetResourceRecordOutput) +} + +// GetRecordsResourceRecordSetResourceRecordArrayInput is an input type that accepts GetRecordsResourceRecordSetResourceRecordArray and GetRecordsResourceRecordSetResourceRecordArrayOutput values. +// You can construct a concrete instance of `GetRecordsResourceRecordSetResourceRecordArrayInput` via: +// +// GetRecordsResourceRecordSetResourceRecordArray{ GetRecordsResourceRecordSetResourceRecordArgs{...} } +type GetRecordsResourceRecordSetResourceRecordArrayInput interface { + pulumi.Input + + ToGetRecordsResourceRecordSetResourceRecordArrayOutput() GetRecordsResourceRecordSetResourceRecordArrayOutput + ToGetRecordsResourceRecordSetResourceRecordArrayOutputWithContext(context.Context) GetRecordsResourceRecordSetResourceRecordArrayOutput +} + +type GetRecordsResourceRecordSetResourceRecordArray []GetRecordsResourceRecordSetResourceRecordInput + +func (GetRecordsResourceRecordSetResourceRecordArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRecordsResourceRecordSetResourceRecord)(nil)).Elem() +} + +func (i GetRecordsResourceRecordSetResourceRecordArray) ToGetRecordsResourceRecordSetResourceRecordArrayOutput() GetRecordsResourceRecordSetResourceRecordArrayOutput { + return i.ToGetRecordsResourceRecordSetResourceRecordArrayOutputWithContext(context.Background()) +} + +func (i GetRecordsResourceRecordSetResourceRecordArray) ToGetRecordsResourceRecordSetResourceRecordArrayOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetResourceRecordArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(GetRecordsResourceRecordSetResourceRecordArrayOutput) +} + +type GetRecordsResourceRecordSetResourceRecordOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetResourceRecordOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetRecordsResourceRecordSetResourceRecord)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetResourceRecordOutput) ToGetRecordsResourceRecordSetResourceRecordOutput() GetRecordsResourceRecordSetResourceRecordOutput { + return o +} + +func (o GetRecordsResourceRecordSetResourceRecordOutput) ToGetRecordsResourceRecordSetResourceRecordOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetResourceRecordOutput { + return o +} + +// The DNS record value. +func (o GetRecordsResourceRecordSetResourceRecordOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v GetRecordsResourceRecordSetResourceRecord) string { return v.Value }).(pulumi.StringOutput) +} + +type GetRecordsResourceRecordSetResourceRecordArrayOutput struct{ *pulumi.OutputState } + +func (GetRecordsResourceRecordSetResourceRecordArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]GetRecordsResourceRecordSetResourceRecord)(nil)).Elem() +} + +func (o GetRecordsResourceRecordSetResourceRecordArrayOutput) ToGetRecordsResourceRecordSetResourceRecordArrayOutput() GetRecordsResourceRecordSetResourceRecordArrayOutput { + return o +} + +func (o GetRecordsResourceRecordSetResourceRecordArrayOutput) ToGetRecordsResourceRecordSetResourceRecordArrayOutputWithContext(ctx context.Context) GetRecordsResourceRecordSetResourceRecordArrayOutput { + return o +} + +func (o GetRecordsResourceRecordSetResourceRecordArrayOutput) Index(i pulumi.IntInput) GetRecordsResourceRecordSetResourceRecordOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) GetRecordsResourceRecordSetResourceRecord { + return vs[0].([]GetRecordsResourceRecordSetResourceRecord)[vs[1].(int)] + }).(GetRecordsResourceRecordSetResourceRecordOutput) +} + type GetResolverEndpointFilter struct { Name string `pulumi:"name"` Values []string `pulumi:"values"` @@ -3626,6 +4295,15 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*GetProfilesProfilesProfileArrayInput)(nil)).Elem(), GetProfilesProfilesProfileArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetQueryLogConfigFilterInput)(nil)).Elem(), GetQueryLogConfigFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetQueryLogConfigFilterArrayInput)(nil)).Elem(), GetQueryLogConfigFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetInput)(nil)).Elem(), GetRecordsResourceRecordSetArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetArrayInput)(nil)).Elem(), GetRecordsResourceRecordSetArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetAliasTargetInput)(nil)).Elem(), GetRecordsResourceRecordSetAliasTargetArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetCidrRoutingConfigInput)(nil)).Elem(), GetRecordsResourceRecordSetCidrRoutingConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetGeolocationInput)(nil)).Elem(), GetRecordsResourceRecordSetGeolocationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocationInput)(nil)).Elem(), GetRecordsResourceRecordSetGeoproximityLocationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetGeoproximityLocationCoordinatesInput)(nil)).Elem(), GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetResourceRecordInput)(nil)).Elem(), GetRecordsResourceRecordSetResourceRecordArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*GetRecordsResourceRecordSetResourceRecordArrayInput)(nil)).Elem(), GetRecordsResourceRecordSetResourceRecordArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetResolverEndpointFilterInput)(nil)).Elem(), GetResolverEndpointFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*GetResolverEndpointFilterArrayInput)(nil)).Elem(), GetResolverEndpointFilterArray{}) pulumi.RegisterInputType(reflect.TypeOf((*GetResolverFirewallRulesFirewallRuleInput)(nil)).Elem(), GetResolverFirewallRulesFirewallRuleArgs{}) @@ -3678,6 +4356,15 @@ func init() { pulumi.RegisterOutputType(GetProfilesProfilesProfileArrayOutput{}) pulumi.RegisterOutputType(GetQueryLogConfigFilterOutput{}) pulumi.RegisterOutputType(GetQueryLogConfigFilterArrayOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetArrayOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetAliasTargetOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetCidrRoutingConfigOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetGeolocationOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetGeoproximityLocationOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetGeoproximityLocationCoordinatesOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetResourceRecordOutput{}) + pulumi.RegisterOutputType(GetRecordsResourceRecordSetResourceRecordArrayOutput{}) pulumi.RegisterOutputType(GetResolverEndpointFilterOutput{}) pulumi.RegisterOutputType(GetResolverEndpointFilterArrayOutput{}) pulumi.RegisterOutputType(GetResolverFirewallRulesFirewallRuleOutput{}) diff --git a/sdk/go/aws/route53/record.go b/sdk/go/aws/route53/record.go index 71162934c4e..e845bd566a5 100644 --- a/sdk/go/aws/route53/record.go +++ b/sdk/go/aws/route53/record.go @@ -269,12 +269,12 @@ import ( // Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): // // ```sh -// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS +// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS // ``` // If the record also contains a set identifier, append it: // // ```sh -// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev +// $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev // ``` type Record struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/s3/objectCopy.go b/sdk/go/aws/s3/objectCopy.go index 78aefba6bf7..982610a652a 100644 --- a/sdk/go/aws/s3/objectCopy.go +++ b/sdk/go/aws/s3/objectCopy.go @@ -50,6 +50,42 @@ import ( // } // // ``` +// +// ### Ignoring Provider `defaultTags` +// +// S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). +// If the resource's own `tags` and the provider-level `defaultTags` would together lead to more than 10 tags on an S3 object copy, use the `overrideProvider` configuration block to suppress any provider-level `defaultTags`. +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := s3.NewObjectCopy(ctx, "test", &s3.ObjectCopyArgs{ +// Bucket: pulumi.String("destination_bucket"), +// Key: pulumi.String("destination_key"), +// Source: pulumi.String("source_bucket/source_key"), +// OverrideProvider: &s3.ObjectCopyOverrideProviderArgs{ +// DefaultTags: &s3.ObjectCopyOverrideProviderDefaultTagsArgs{ +// Tags: pulumi.StringMap{}, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` type ObjectCopy struct { pulumi.CustomResourceState @@ -125,7 +161,8 @@ type ObjectCopy struct { // Object lock [retention mode](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-modes) that you want to apply to this object. Valid values are `GOVERNANCE` and `COMPLIANCE`. ObjectLockMode pulumi.StringOutput `pulumi:"objectLockMode"` // Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). - ObjectLockRetainUntilDate pulumi.StringOutput `pulumi:"objectLockRetainUntilDate"` + ObjectLockRetainUntilDate pulumi.StringOutput `pulumi:"objectLockRetainUntilDate"` + OverrideProvider ObjectCopyOverrideProviderPtrOutput `pulumi:"overrideProvider"` // If present, indicates that the requester was successfully charged for the request. RequestCharged pulumi.BoolOutput `pulumi:"requestCharged"` // Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. @@ -290,7 +327,8 @@ type objectCopyState struct { // Object lock [retention mode](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-modes) that you want to apply to this object. Valid values are `GOVERNANCE` and `COMPLIANCE`. ObjectLockMode *string `pulumi:"objectLockMode"` // Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). - ObjectLockRetainUntilDate *string `pulumi:"objectLockRetainUntilDate"` + ObjectLockRetainUntilDate *string `pulumi:"objectLockRetainUntilDate"` + OverrideProvider *ObjectCopyOverrideProvider `pulumi:"overrideProvider"` // If present, indicates that the requester was successfully charged for the request. RequestCharged *bool `pulumi:"requestCharged"` // Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. @@ -399,6 +437,7 @@ type ObjectCopyState struct { ObjectLockMode pulumi.StringPtrInput // Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). ObjectLockRetainUntilDate pulumi.StringPtrInput + OverrideProvider ObjectCopyOverrideProviderPtrInput // If present, indicates that the requester was successfully charged for the request. RequestCharged pulumi.BoolPtrInput // Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. @@ -494,7 +533,8 @@ type objectCopyArgs struct { // Object lock [retention mode](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-modes) that you want to apply to this object. Valid values are `GOVERNANCE` and `COMPLIANCE`. ObjectLockMode *string `pulumi:"objectLockMode"` // Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). - ObjectLockRetainUntilDate *string `pulumi:"objectLockRetainUntilDate"` + ObjectLockRetainUntilDate *string `pulumi:"objectLockRetainUntilDate"` + OverrideProvider *ObjectCopyOverrideProvider `pulumi:"overrideProvider"` // Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. RequestPayer *string `pulumi:"requestPayer"` // Specifies server-side encryption of the object in S3. Valid values are `AES256` and `aws:kms`. @@ -578,6 +618,7 @@ type ObjectCopyArgs struct { ObjectLockMode pulumi.StringPtrInput // Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). ObjectLockRetainUntilDate pulumi.StringPtrInput + OverrideProvider ObjectCopyOverrideProviderPtrInput // Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. RequestPayer pulumi.StringPtrInput // Specifies server-side encryption of the object in S3. Valid values are `AES256` and `aws:kms`. @@ -873,6 +914,10 @@ func (o ObjectCopyOutput) ObjectLockRetainUntilDate() pulumi.StringOutput { return o.ApplyT(func(v *ObjectCopy) pulumi.StringOutput { return v.ObjectLockRetainUntilDate }).(pulumi.StringOutput) } +func (o ObjectCopyOutput) OverrideProvider() ObjectCopyOverrideProviderPtrOutput { + return o.ApplyT(func(v *ObjectCopy) ObjectCopyOverrideProviderPtrOutput { return v.OverrideProvider }).(ObjectCopyOverrideProviderPtrOutput) +} + // If present, indicates that the requester was successfully charged for the request. func (o ObjectCopyOutput) RequestCharged() pulumi.BoolOutput { return o.ApplyT(func(v *ObjectCopy) pulumi.BoolOutput { return v.RequestCharged }).(pulumi.BoolOutput) diff --git a/sdk/go/aws/s3/pulumiTypes.go b/sdk/go/aws/s3/pulumiTypes.go index ec6052c09d9..504da182ed7 100644 --- a/sdk/go/aws/s3/pulumiTypes.go +++ b/sdk/go/aws/s3/pulumiTypes.go @@ -17156,6 +17156,280 @@ func (o ObjectCopyGrantArrayOutput) Index(i pulumi.IntInput) ObjectCopyGrantOutp }).(ObjectCopyGrantOutput) } +type ObjectCopyOverrideProvider struct { + // Override the provider `defaultTags` configuration block. + DefaultTags *ObjectCopyOverrideProviderDefaultTags `pulumi:"defaultTags"` +} + +// ObjectCopyOverrideProviderInput is an input type that accepts ObjectCopyOverrideProviderArgs and ObjectCopyOverrideProviderOutput values. +// You can construct a concrete instance of `ObjectCopyOverrideProviderInput` via: +// +// ObjectCopyOverrideProviderArgs{...} +type ObjectCopyOverrideProviderInput interface { + pulumi.Input + + ToObjectCopyOverrideProviderOutput() ObjectCopyOverrideProviderOutput + ToObjectCopyOverrideProviderOutputWithContext(context.Context) ObjectCopyOverrideProviderOutput +} + +type ObjectCopyOverrideProviderArgs struct { + // Override the provider `defaultTags` configuration block. + DefaultTags ObjectCopyOverrideProviderDefaultTagsPtrInput `pulumi:"defaultTags"` +} + +func (ObjectCopyOverrideProviderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ObjectCopyOverrideProvider)(nil)).Elem() +} + +func (i ObjectCopyOverrideProviderArgs) ToObjectCopyOverrideProviderOutput() ObjectCopyOverrideProviderOutput { + return i.ToObjectCopyOverrideProviderOutputWithContext(context.Background()) +} + +func (i ObjectCopyOverrideProviderArgs) ToObjectCopyOverrideProviderOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderOutput) +} + +func (i ObjectCopyOverrideProviderArgs) ToObjectCopyOverrideProviderPtrOutput() ObjectCopyOverrideProviderPtrOutput { + return i.ToObjectCopyOverrideProviderPtrOutputWithContext(context.Background()) +} + +func (i ObjectCopyOverrideProviderArgs) ToObjectCopyOverrideProviderPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderOutput).ToObjectCopyOverrideProviderPtrOutputWithContext(ctx) +} + +// ObjectCopyOverrideProviderPtrInput is an input type that accepts ObjectCopyOverrideProviderArgs, ObjectCopyOverrideProviderPtr and ObjectCopyOverrideProviderPtrOutput values. +// You can construct a concrete instance of `ObjectCopyOverrideProviderPtrInput` via: +// +// ObjectCopyOverrideProviderArgs{...} +// +// or: +// +// nil +type ObjectCopyOverrideProviderPtrInput interface { + pulumi.Input + + ToObjectCopyOverrideProviderPtrOutput() ObjectCopyOverrideProviderPtrOutput + ToObjectCopyOverrideProviderPtrOutputWithContext(context.Context) ObjectCopyOverrideProviderPtrOutput +} + +type objectCopyOverrideProviderPtrType ObjectCopyOverrideProviderArgs + +func ObjectCopyOverrideProviderPtr(v *ObjectCopyOverrideProviderArgs) ObjectCopyOverrideProviderPtrInput { + return (*objectCopyOverrideProviderPtrType)(v) +} + +func (*objectCopyOverrideProviderPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ObjectCopyOverrideProvider)(nil)).Elem() +} + +func (i *objectCopyOverrideProviderPtrType) ToObjectCopyOverrideProviderPtrOutput() ObjectCopyOverrideProviderPtrOutput { + return i.ToObjectCopyOverrideProviderPtrOutputWithContext(context.Background()) +} + +func (i *objectCopyOverrideProviderPtrType) ToObjectCopyOverrideProviderPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderPtrOutput) +} + +type ObjectCopyOverrideProviderOutput struct{ *pulumi.OutputState } + +func (ObjectCopyOverrideProviderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ObjectCopyOverrideProvider)(nil)).Elem() +} + +func (o ObjectCopyOverrideProviderOutput) ToObjectCopyOverrideProviderOutput() ObjectCopyOverrideProviderOutput { + return o +} + +func (o ObjectCopyOverrideProviderOutput) ToObjectCopyOverrideProviderOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderOutput { + return o +} + +func (o ObjectCopyOverrideProviderOutput) ToObjectCopyOverrideProviderPtrOutput() ObjectCopyOverrideProviderPtrOutput { + return o.ToObjectCopyOverrideProviderPtrOutputWithContext(context.Background()) +} + +func (o ObjectCopyOverrideProviderOutput) ToObjectCopyOverrideProviderPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ObjectCopyOverrideProvider) *ObjectCopyOverrideProvider { + return &v + }).(ObjectCopyOverrideProviderPtrOutput) +} + +// Override the provider `defaultTags` configuration block. +func (o ObjectCopyOverrideProviderOutput) DefaultTags() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o.ApplyT(func(v ObjectCopyOverrideProvider) *ObjectCopyOverrideProviderDefaultTags { return v.DefaultTags }).(ObjectCopyOverrideProviderDefaultTagsPtrOutput) +} + +type ObjectCopyOverrideProviderPtrOutput struct{ *pulumi.OutputState } + +func (ObjectCopyOverrideProviderPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ObjectCopyOverrideProvider)(nil)).Elem() +} + +func (o ObjectCopyOverrideProviderPtrOutput) ToObjectCopyOverrideProviderPtrOutput() ObjectCopyOverrideProviderPtrOutput { + return o +} + +func (o ObjectCopyOverrideProviderPtrOutput) ToObjectCopyOverrideProviderPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderPtrOutput { + return o +} + +func (o ObjectCopyOverrideProviderPtrOutput) Elem() ObjectCopyOverrideProviderOutput { + return o.ApplyT(func(v *ObjectCopyOverrideProvider) ObjectCopyOverrideProvider { + if v != nil { + return *v + } + var ret ObjectCopyOverrideProvider + return ret + }).(ObjectCopyOverrideProviderOutput) +} + +// Override the provider `defaultTags` configuration block. +func (o ObjectCopyOverrideProviderPtrOutput) DefaultTags() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o.ApplyT(func(v *ObjectCopyOverrideProvider) *ObjectCopyOverrideProviderDefaultTags { + if v == nil { + return nil + } + return v.DefaultTags + }).(ObjectCopyOverrideProviderDefaultTagsPtrOutput) +} + +type ObjectCopyOverrideProviderDefaultTags struct { + // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` +} + +// ObjectCopyOverrideProviderDefaultTagsInput is an input type that accepts ObjectCopyOverrideProviderDefaultTagsArgs and ObjectCopyOverrideProviderDefaultTagsOutput values. +// You can construct a concrete instance of `ObjectCopyOverrideProviderDefaultTagsInput` via: +// +// ObjectCopyOverrideProviderDefaultTagsArgs{...} +type ObjectCopyOverrideProviderDefaultTagsInput interface { + pulumi.Input + + ToObjectCopyOverrideProviderDefaultTagsOutput() ObjectCopyOverrideProviderDefaultTagsOutput + ToObjectCopyOverrideProviderDefaultTagsOutputWithContext(context.Context) ObjectCopyOverrideProviderDefaultTagsOutput +} + +type ObjectCopyOverrideProviderDefaultTagsArgs struct { + // Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput `pulumi:"tags"` +} + +func (ObjectCopyOverrideProviderDefaultTagsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ObjectCopyOverrideProviderDefaultTags)(nil)).Elem() +} + +func (i ObjectCopyOverrideProviderDefaultTagsArgs) ToObjectCopyOverrideProviderDefaultTagsOutput() ObjectCopyOverrideProviderDefaultTagsOutput { + return i.ToObjectCopyOverrideProviderDefaultTagsOutputWithContext(context.Background()) +} + +func (i ObjectCopyOverrideProviderDefaultTagsArgs) ToObjectCopyOverrideProviderDefaultTagsOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderDefaultTagsOutput) +} + +func (i ObjectCopyOverrideProviderDefaultTagsArgs) ToObjectCopyOverrideProviderDefaultTagsPtrOutput() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return i.ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(context.Background()) +} + +func (i ObjectCopyOverrideProviderDefaultTagsArgs) ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderDefaultTagsOutput).ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(ctx) +} + +// ObjectCopyOverrideProviderDefaultTagsPtrInput is an input type that accepts ObjectCopyOverrideProviderDefaultTagsArgs, ObjectCopyOverrideProviderDefaultTagsPtr and ObjectCopyOverrideProviderDefaultTagsPtrOutput values. +// You can construct a concrete instance of `ObjectCopyOverrideProviderDefaultTagsPtrInput` via: +// +// ObjectCopyOverrideProviderDefaultTagsArgs{...} +// +// or: +// +// nil +type ObjectCopyOverrideProviderDefaultTagsPtrInput interface { + pulumi.Input + + ToObjectCopyOverrideProviderDefaultTagsPtrOutput() ObjectCopyOverrideProviderDefaultTagsPtrOutput + ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(context.Context) ObjectCopyOverrideProviderDefaultTagsPtrOutput +} + +type objectCopyOverrideProviderDefaultTagsPtrType ObjectCopyOverrideProviderDefaultTagsArgs + +func ObjectCopyOverrideProviderDefaultTagsPtr(v *ObjectCopyOverrideProviderDefaultTagsArgs) ObjectCopyOverrideProviderDefaultTagsPtrInput { + return (*objectCopyOverrideProviderDefaultTagsPtrType)(v) +} + +func (*objectCopyOverrideProviderDefaultTagsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ObjectCopyOverrideProviderDefaultTags)(nil)).Elem() +} + +func (i *objectCopyOverrideProviderDefaultTagsPtrType) ToObjectCopyOverrideProviderDefaultTagsPtrOutput() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return i.ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(context.Background()) +} + +func (i *objectCopyOverrideProviderDefaultTagsPtrType) ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ObjectCopyOverrideProviderDefaultTagsPtrOutput) +} + +type ObjectCopyOverrideProviderDefaultTagsOutput struct{ *pulumi.OutputState } + +func (ObjectCopyOverrideProviderDefaultTagsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ObjectCopyOverrideProviderDefaultTags)(nil)).Elem() +} + +func (o ObjectCopyOverrideProviderDefaultTagsOutput) ToObjectCopyOverrideProviderDefaultTagsOutput() ObjectCopyOverrideProviderDefaultTagsOutput { + return o +} + +func (o ObjectCopyOverrideProviderDefaultTagsOutput) ToObjectCopyOverrideProviderDefaultTagsOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsOutput { + return o +} + +func (o ObjectCopyOverrideProviderDefaultTagsOutput) ToObjectCopyOverrideProviderDefaultTagsPtrOutput() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o.ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(context.Background()) +} + +func (o ObjectCopyOverrideProviderDefaultTagsOutput) ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ObjectCopyOverrideProviderDefaultTags) *ObjectCopyOverrideProviderDefaultTags { + return &v + }).(ObjectCopyOverrideProviderDefaultTagsPtrOutput) +} + +// Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o ObjectCopyOverrideProviderDefaultTagsOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v ObjectCopyOverrideProviderDefaultTags) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +type ObjectCopyOverrideProviderDefaultTagsPtrOutput struct{ *pulumi.OutputState } + +func (ObjectCopyOverrideProviderDefaultTagsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ObjectCopyOverrideProviderDefaultTags)(nil)).Elem() +} + +func (o ObjectCopyOverrideProviderDefaultTagsPtrOutput) ToObjectCopyOverrideProviderDefaultTagsPtrOutput() ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o +} + +func (o ObjectCopyOverrideProviderDefaultTagsPtrOutput) ToObjectCopyOverrideProviderDefaultTagsPtrOutputWithContext(ctx context.Context) ObjectCopyOverrideProviderDefaultTagsPtrOutput { + return o +} + +func (o ObjectCopyOverrideProviderDefaultTagsPtrOutput) Elem() ObjectCopyOverrideProviderDefaultTagsOutput { + return o.ApplyT(func(v *ObjectCopyOverrideProviderDefaultTags) ObjectCopyOverrideProviderDefaultTags { + if v != nil { + return *v + } + var ret ObjectCopyOverrideProviderDefaultTags + return ret + }).(ObjectCopyOverrideProviderDefaultTagsOutput) +} + +// Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o ObjectCopyOverrideProviderDefaultTagsPtrOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *ObjectCopyOverrideProviderDefaultTags) map[string]string { + if v == nil { + return nil + } + return v.Tags + }).(pulumi.StringMapOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*AccessPointPublicAccessBlockConfigurationInput)(nil)).Elem(), AccessPointPublicAccessBlockConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AccessPointPublicAccessBlockConfigurationPtrInput)(nil)).Elem(), AccessPointPublicAccessBlockConfigurationArgs{}) @@ -17395,6 +17669,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*InventorySchedulePtrInput)(nil)).Elem(), InventoryScheduleArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyGrantInput)(nil)).Elem(), ObjectCopyGrantArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyGrantArrayInput)(nil)).Elem(), ObjectCopyGrantArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyOverrideProviderInput)(nil)).Elem(), ObjectCopyOverrideProviderArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyOverrideProviderPtrInput)(nil)).Elem(), ObjectCopyOverrideProviderArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyOverrideProviderDefaultTagsInput)(nil)).Elem(), ObjectCopyOverrideProviderDefaultTagsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ObjectCopyOverrideProviderDefaultTagsPtrInput)(nil)).Elem(), ObjectCopyOverrideProviderDefaultTagsArgs{}) pulumi.RegisterOutputType(AccessPointPublicAccessBlockConfigurationOutput{}) pulumi.RegisterOutputType(AccessPointPublicAccessBlockConfigurationPtrOutput{}) pulumi.RegisterOutputType(AccessPointVpcConfigurationOutput{}) @@ -17633,4 +17911,8 @@ func init() { pulumi.RegisterOutputType(InventorySchedulePtrOutput{}) pulumi.RegisterOutputType(ObjectCopyGrantOutput{}) pulumi.RegisterOutputType(ObjectCopyGrantArrayOutput{}) + pulumi.RegisterOutputType(ObjectCopyOverrideProviderOutput{}) + pulumi.RegisterOutputType(ObjectCopyOverrideProviderPtrOutput{}) + pulumi.RegisterOutputType(ObjectCopyOverrideProviderDefaultTagsOutput{}) + pulumi.RegisterOutputType(ObjectCopyOverrideProviderDefaultTagsPtrOutput{}) } diff --git a/sdk/go/aws/s3tables/table.go b/sdk/go/aws/s3tables/table.go index 764055aba4c..299f04a4e62 100644 --- a/sdk/go/aws/s3tables/table.go +++ b/sdk/go/aws/s3tables/table.go @@ -45,7 +45,7 @@ import ( // } // _, err = s3tables.NewTable(ctx, "example", &s3tables.TableArgs{ // Name: pulumi.String("example-table"), -// Namespace: exampleNamespace, +// Namespace: exampleNamespace.Namespace, // TableBucketArn: exampleNamespace.TableBucketArn, // Format: pulumi.String("ICEBERG"), // }) diff --git a/sdk/go/aws/ssmincidents/getReplicationSet.go b/sdk/go/aws/ssmincidents/getReplicationSet.go index 2c1a3fad142..d0c9ce8ec45 100644 --- a/sdk/go/aws/ssmincidents/getReplicationSet.go +++ b/sdk/go/aws/ssmincidents/getReplicationSet.go @@ -58,7 +58,7 @@ type LookupReplicationSetArgs struct { // A collection of values returned by getReplicationSet. type LookupReplicationSetResult struct { - // The Amazon Resouce Name (ARN) of the replication set. + // The Amazon Resource Name (ARN) of the replication set. Arn string `pulumi:"arn"` // The ARN of the user who created the replication set. CreatedBy string `pulumi:"createdBy"` @@ -110,7 +110,7 @@ func (o LookupReplicationSetResultOutput) ToLookupReplicationSetResultOutputWith return o } -// The Amazon Resouce Name (ARN) of the replication set. +// The Amazon Resource Name (ARN) of the replication set. func (o LookupReplicationSetResultOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v LookupReplicationSetResult) string { return v.Arn }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/ssoadmin/managedPolicyAttachment.go b/sdk/go/aws/ssoadmin/managedPolicyAttachment.go index 054af0d9e3b..83264f83af1 100644 --- a/sdk/go/aws/ssoadmin/managedPolicyAttachment.go +++ b/sdk/go/aws/ssoadmin/managedPolicyAttachment.go @@ -93,7 +93,7 @@ import ( // if err != nil { // return err // } -// _, err = ssoadmin.NewAccountAssignment(ctx, "account_assignment", &ssoadmin.AccountAssignmentArgs{ +// exampleAccountAssignment, err := ssoadmin.NewAccountAssignment(ctx, "example", &ssoadmin.AccountAssignmentArgs{ // InstanceArn: pulumi.String(example.Arns[0]), // PermissionSetArn: examplePermissionSet.Arn, // PrincipalId: exampleGroup.GroupId, @@ -109,7 +109,7 @@ import ( // ManagedPolicyArn: pulumi.String("arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup"), // PermissionSetArn: examplePermissionSet.Arn, // }, pulumi.DependsOn([]pulumi.Resource{ -// exampleAwsSsoadminAccountAssignment, +// exampleAccountAssignment, // })) // if err != nil { // return err diff --git a/sdk/go/aws/transfer/pulumiTypes.go b/sdk/go/aws/transfer/pulumiTypes.go index c9319e05986..9f332cb9133 100644 --- a/sdk/go/aws/transfer/pulumiTypes.go +++ b/sdk/go/aws/transfer/pulumiTypes.go @@ -6464,7 +6464,7 @@ func (o GetConnectorAs2ConfigArrayOutput) Index(i pulumi.IntInput) GetConnectorA type GetConnectorSftpConfig struct { // List of the public portions of the host keys that are used to identify the servers the connector is connected to. TrustedHostKeys []string `pulumi:"trustedHostKeys"` - // Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + // Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. UserSecretId string `pulumi:"userSecretId"` } @@ -6482,7 +6482,7 @@ type GetConnectorSftpConfigInput interface { type GetConnectorSftpConfigArgs struct { // List of the public portions of the host keys that are used to identify the servers the connector is connected to. TrustedHostKeys pulumi.StringArrayInput `pulumi:"trustedHostKeys"` - // Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + // Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. UserSecretId pulumi.StringInput `pulumi:"userSecretId"` } @@ -6542,7 +6542,7 @@ func (o GetConnectorSftpConfigOutput) TrustedHostKeys() pulumi.StringArrayOutput return o.ApplyT(func(v GetConnectorSftpConfig) []string { return v.TrustedHostKeys }).(pulumi.StringArrayOutput) } -// Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. +// Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. func (o GetConnectorSftpConfigOutput) UserSecretId() pulumi.StringOutput { return o.ApplyT(func(v GetConnectorSftpConfig) string { return v.UserSecretId }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/vpclattice/init.go b/sdk/go/aws/vpclattice/init.go index df7f7a6a093..ed4b35b675d 100644 --- a/sdk/go/aws/vpclattice/init.go +++ b/sdk/go/aws/vpclattice/init.go @@ -29,6 +29,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &Listener{} case "aws:vpclattice/listenerRule:ListenerRule": r = &ListenerRule{} + case "aws:vpclattice/resourceGateway:ResourceGateway": + r = &ResourceGateway{} case "aws:vpclattice/resourcePolicy:ResourcePolicy": r = &ResourcePolicy{} case "aws:vpclattice/service:Service": @@ -76,6 +78,11 @@ func init() { "vpclattice/listenerRule", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "vpclattice/resourceGateway", + &module{version}, + ) pulumi.RegisterResourceModule( "aws", "vpclattice/resourcePolicy", diff --git a/sdk/go/aws/vpclattice/pulumiTypes.go b/sdk/go/aws/vpclattice/pulumiTypes.go index 5f88206c188..de7a5bb14cb 100644 --- a/sdk/go/aws/vpclattice/pulumiTypes.go +++ b/sdk/go/aws/vpclattice/pulumiTypes.go @@ -1865,6 +1865,181 @@ func (o ListenerRuleMatchHttpMatchPathMatchMatchPtrOutput) Prefix() pulumi.Strin }).(pulumi.StringPtrOutput) } +type ResourceGatewayTimeouts struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create *string `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete *string `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update *string `pulumi:"update"` +} + +// ResourceGatewayTimeoutsInput is an input type that accepts ResourceGatewayTimeoutsArgs and ResourceGatewayTimeoutsOutput values. +// You can construct a concrete instance of `ResourceGatewayTimeoutsInput` via: +// +// ResourceGatewayTimeoutsArgs{...} +type ResourceGatewayTimeoutsInput interface { + pulumi.Input + + ToResourceGatewayTimeoutsOutput() ResourceGatewayTimeoutsOutput + ToResourceGatewayTimeoutsOutputWithContext(context.Context) ResourceGatewayTimeoutsOutput +} + +type ResourceGatewayTimeoutsArgs struct { + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Create pulumi.StringPtrInput `pulumi:"create"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + Delete pulumi.StringPtrInput `pulumi:"delete"` + // A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + Update pulumi.StringPtrInput `pulumi:"update"` +} + +func (ResourceGatewayTimeoutsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ResourceGatewayTimeouts)(nil)).Elem() +} + +func (i ResourceGatewayTimeoutsArgs) ToResourceGatewayTimeoutsOutput() ResourceGatewayTimeoutsOutput { + return i.ToResourceGatewayTimeoutsOutputWithContext(context.Background()) +} + +func (i ResourceGatewayTimeoutsArgs) ToResourceGatewayTimeoutsOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayTimeoutsOutput) +} + +func (i ResourceGatewayTimeoutsArgs) ToResourceGatewayTimeoutsPtrOutput() ResourceGatewayTimeoutsPtrOutput { + return i.ToResourceGatewayTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i ResourceGatewayTimeoutsArgs) ToResourceGatewayTimeoutsPtrOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayTimeoutsOutput).ToResourceGatewayTimeoutsPtrOutputWithContext(ctx) +} + +// ResourceGatewayTimeoutsPtrInput is an input type that accepts ResourceGatewayTimeoutsArgs, ResourceGatewayTimeoutsPtr and ResourceGatewayTimeoutsPtrOutput values. +// You can construct a concrete instance of `ResourceGatewayTimeoutsPtrInput` via: +// +// ResourceGatewayTimeoutsArgs{...} +// +// or: +// +// nil +type ResourceGatewayTimeoutsPtrInput interface { + pulumi.Input + + ToResourceGatewayTimeoutsPtrOutput() ResourceGatewayTimeoutsPtrOutput + ToResourceGatewayTimeoutsPtrOutputWithContext(context.Context) ResourceGatewayTimeoutsPtrOutput +} + +type resourceGatewayTimeoutsPtrType ResourceGatewayTimeoutsArgs + +func ResourceGatewayTimeoutsPtr(v *ResourceGatewayTimeoutsArgs) ResourceGatewayTimeoutsPtrInput { + return (*resourceGatewayTimeoutsPtrType)(v) +} + +func (*resourceGatewayTimeoutsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ResourceGatewayTimeouts)(nil)).Elem() +} + +func (i *resourceGatewayTimeoutsPtrType) ToResourceGatewayTimeoutsPtrOutput() ResourceGatewayTimeoutsPtrOutput { + return i.ToResourceGatewayTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i *resourceGatewayTimeoutsPtrType) ToResourceGatewayTimeoutsPtrOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayTimeoutsPtrOutput) +} + +type ResourceGatewayTimeoutsOutput struct{ *pulumi.OutputState } + +func (ResourceGatewayTimeoutsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ResourceGatewayTimeouts)(nil)).Elem() +} + +func (o ResourceGatewayTimeoutsOutput) ToResourceGatewayTimeoutsOutput() ResourceGatewayTimeoutsOutput { + return o +} + +func (o ResourceGatewayTimeoutsOutput) ToResourceGatewayTimeoutsOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsOutput { + return o +} + +func (o ResourceGatewayTimeoutsOutput) ToResourceGatewayTimeoutsPtrOutput() ResourceGatewayTimeoutsPtrOutput { + return o.ToResourceGatewayTimeoutsPtrOutputWithContext(context.Background()) +} + +func (o ResourceGatewayTimeoutsOutput) ToResourceGatewayTimeoutsPtrOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ResourceGatewayTimeouts) *ResourceGatewayTimeouts { + return &v + }).(ResourceGatewayTimeoutsPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o ResourceGatewayTimeoutsOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v ResourceGatewayTimeouts) *string { return v.Create }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o ResourceGatewayTimeoutsOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v ResourceGatewayTimeouts) *string { return v.Delete }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o ResourceGatewayTimeoutsOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v ResourceGatewayTimeouts) *string { return v.Update }).(pulumi.StringPtrOutput) +} + +type ResourceGatewayTimeoutsPtrOutput struct{ *pulumi.OutputState } + +func (ResourceGatewayTimeoutsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ResourceGatewayTimeouts)(nil)).Elem() +} + +func (o ResourceGatewayTimeoutsPtrOutput) ToResourceGatewayTimeoutsPtrOutput() ResourceGatewayTimeoutsPtrOutput { + return o +} + +func (o ResourceGatewayTimeoutsPtrOutput) ToResourceGatewayTimeoutsPtrOutputWithContext(ctx context.Context) ResourceGatewayTimeoutsPtrOutput { + return o +} + +func (o ResourceGatewayTimeoutsPtrOutput) Elem() ResourceGatewayTimeoutsOutput { + return o.ApplyT(func(v *ResourceGatewayTimeouts) ResourceGatewayTimeouts { + if v != nil { + return *v + } + var ret ResourceGatewayTimeouts + return ret + }).(ResourceGatewayTimeoutsOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o ResourceGatewayTimeoutsPtrOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ResourceGatewayTimeouts) *string { + if v == nil { + return nil + } + return v.Create + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. +func (o ResourceGatewayTimeoutsPtrOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ResourceGatewayTimeouts) *string { + if v == nil { + return nil + } + return v.Delete + }).(pulumi.StringPtrOutput) +} + +// A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). +func (o ResourceGatewayTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ResourceGatewayTimeouts) *string { + if v == nil { + return nil + } + return v.Update + }).(pulumi.StringPtrOutput) +} + type ServiceDnsEntry struct { DomainName *string `pulumi:"domainName"` HostedZoneId *string `pulumi:"hostedZoneId"` @@ -3441,6 +3616,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ListenerRuleMatchHttpMatchPathMatchPtrInput)(nil)).Elem(), ListenerRuleMatchHttpMatchPathMatchArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ListenerRuleMatchHttpMatchPathMatchMatchInput)(nil)).Elem(), ListenerRuleMatchHttpMatchPathMatchMatchArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ListenerRuleMatchHttpMatchPathMatchMatchPtrInput)(nil)).Elem(), ListenerRuleMatchHttpMatchPathMatchMatchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ResourceGatewayTimeoutsInput)(nil)).Elem(), ResourceGatewayTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ResourceGatewayTimeoutsPtrInput)(nil)).Elem(), ResourceGatewayTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceDnsEntryInput)(nil)).Elem(), ServiceDnsEntryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceDnsEntryArrayInput)(nil)).Elem(), ServiceDnsEntryArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceNetworkServiceAssociationDnsEntryInput)(nil)).Elem(), ServiceNetworkServiceAssociationDnsEntryArgs{}) @@ -3490,6 +3667,8 @@ func init() { pulumi.RegisterOutputType(ListenerRuleMatchHttpMatchPathMatchPtrOutput{}) pulumi.RegisterOutputType(ListenerRuleMatchHttpMatchPathMatchMatchOutput{}) pulumi.RegisterOutputType(ListenerRuleMatchHttpMatchPathMatchMatchPtrOutput{}) + pulumi.RegisterOutputType(ResourceGatewayTimeoutsOutput{}) + pulumi.RegisterOutputType(ResourceGatewayTimeoutsPtrOutput{}) pulumi.RegisterOutputType(ServiceDnsEntryOutput{}) pulumi.RegisterOutputType(ServiceDnsEntryArrayOutput{}) pulumi.RegisterOutputType(ServiceNetworkServiceAssociationDnsEntryOutput{}) diff --git a/sdk/go/aws/vpclattice/resourceGateway.go b/sdk/go/aws/vpclattice/resourceGateway.go new file mode 100644 index 00000000000..87b9f8c6cb7 --- /dev/null +++ b/sdk/go/aws/vpclattice/resourceGateway.go @@ -0,0 +1,469 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package vpclattice + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Resource for managing an AWS VPC Lattice Resource Gateway. +// +// ## Example Usage +// +// ### Basic Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := vpclattice.NewResourceGateway(ctx, "example", &vpclattice.ResourceGatewayArgs{ +// Name: pulumi.String("Example"), +// VpcId: pulumi.Any(exampleAwsVpc.Id), +// SubnetIds: pulumi.StringArray{ +// exampleAwsSubnet.Id, +// }, +// Tags: pulumi.StringMap{ +// "Environment": pulumi.String("Example"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### Specifying IP address type +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := vpclattice.NewResourceGateway(ctx, "example", &vpclattice.ResourceGatewayArgs{ +// Name: pulumi.String("Example"), +// VpcId: pulumi.Any(exampleAwsVpc.Id), +// SubnetIds: pulumi.StringArray{ +// exampleAwsSubnet.Id, +// }, +// IpAddressType: pulumi.String("DUALSTACK"), +// Tags: pulumi.StringMap{ +// "Environment": pulumi.String("Example"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ### With security groups +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/vpclattice" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := vpclattice.NewResourceGateway(ctx, "example", &vpclattice.ResourceGatewayArgs{ +// Name: pulumi.String("Example"), +// VpcId: pulumi.Any(exampleAwsVpc.Id), +// SecurityGroupIds: pulumi.StringArray{ +// test.Id, +// }, +// SubnetIds: pulumi.StringArray{ +// exampleAwsSubnet.Id, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// ## Import +// +// Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: +// +// ```sh +// $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f +// ``` +type ResourceGateway struct { + pulumi.CustomResourceState + + // ARN of the resource gateway. + Arn pulumi.StringOutput `pulumi:"arn"` + // IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + IpAddressType pulumi.StringOutput `pulumi:"ipAddressType"` + // Name of the resource gateway. + Name pulumi.StringOutput `pulumi:"name"` + // Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` + // Status of the resource gateway. + Status pulumi.StringOutput `pulumi:"status"` + // IDs of the VPC subnets in which to create the resource gateway. + SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` + // Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` + Timeouts ResourceGatewayTimeoutsPtrOutput `pulumi:"timeouts"` + // ID of the VPC for the resource gateway. + // + // The following arguments are optional: + VpcId pulumi.StringOutput `pulumi:"vpcId"` +} + +// NewResourceGateway registers a new resource with the given unique name, arguments, and options. +func NewResourceGateway(ctx *pulumi.Context, + name string, args *ResourceGatewayArgs, opts ...pulumi.ResourceOption) (*ResourceGateway, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.SubnetIds == nil { + return nil, errors.New("invalid value for required argument 'SubnetIds'") + } + if args.VpcId == nil { + return nil, errors.New("invalid value for required argument 'VpcId'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource ResourceGateway + err := ctx.RegisterResource("aws:vpclattice/resourceGateway:ResourceGateway", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetResourceGateway gets an existing ResourceGateway 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 GetResourceGateway(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ResourceGatewayState, opts ...pulumi.ResourceOption) (*ResourceGateway, error) { + var resource ResourceGateway + err := ctx.ReadResource("aws:vpclattice/resourceGateway:ResourceGateway", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ResourceGateway resources. +type resourceGatewayState struct { + // ARN of the resource gateway. + Arn *string `pulumi:"arn"` + // IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + IpAddressType *string `pulumi:"ipAddressType"` + // Name of the resource gateway. + Name *string `pulumi:"name"` + // Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // Status of the resource gateway. + Status *string `pulumi:"status"` + // IDs of the VPC subnets in which to create the resource gateway. + SubnetIds []string `pulumi:"subnetIds"` + // Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` + // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll map[string]string `pulumi:"tagsAll"` + Timeouts *ResourceGatewayTimeouts `pulumi:"timeouts"` + // ID of the VPC for the resource gateway. + // + // The following arguments are optional: + VpcId *string `pulumi:"vpcId"` +} + +type ResourceGatewayState struct { + // ARN of the resource gateway. + Arn pulumi.StringPtrInput + // IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + IpAddressType pulumi.StringPtrInput + // Name of the resource gateway. + Name pulumi.StringPtrInput + // Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + SecurityGroupIds pulumi.StringArrayInput + // Status of the resource gateway. + Status pulumi.StringPtrInput + // IDs of the VPC subnets in which to create the resource gateway. + SubnetIds pulumi.StringArrayInput + // Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput + // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + // + // Deprecated: Please use `tags` instead. + TagsAll pulumi.StringMapInput + Timeouts ResourceGatewayTimeoutsPtrInput + // ID of the VPC for the resource gateway. + // + // The following arguments are optional: + VpcId pulumi.StringPtrInput +} + +func (ResourceGatewayState) ElementType() reflect.Type { + return reflect.TypeOf((*resourceGatewayState)(nil)).Elem() +} + +type resourceGatewayArgs struct { + // IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + IpAddressType *string `pulumi:"ipAddressType"` + // Name of the resource gateway. + Name *string `pulumi:"name"` + // Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + SecurityGroupIds []string `pulumi:"securityGroupIds"` + // IDs of the VPC subnets in which to create the resource gateway. + SubnetIds []string `pulumi:"subnetIds"` + // Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags map[string]string `pulumi:"tags"` + Timeouts *ResourceGatewayTimeouts `pulumi:"timeouts"` + // ID of the VPC for the resource gateway. + // + // The following arguments are optional: + VpcId string `pulumi:"vpcId"` +} + +// The set of arguments for constructing a ResourceGateway resource. +type ResourceGatewayArgs struct { + // IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + IpAddressType pulumi.StringPtrInput + // Name of the resource gateway. + Name pulumi.StringPtrInput + // Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + SecurityGroupIds pulumi.StringArrayInput + // IDs of the VPC subnets in which to create the resource gateway. + SubnetIds pulumi.StringArrayInput + // Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + Tags pulumi.StringMapInput + Timeouts ResourceGatewayTimeoutsPtrInput + // ID of the VPC for the resource gateway. + // + // The following arguments are optional: + VpcId pulumi.StringInput +} + +func (ResourceGatewayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*resourceGatewayArgs)(nil)).Elem() +} + +type ResourceGatewayInput interface { + pulumi.Input + + ToResourceGatewayOutput() ResourceGatewayOutput + ToResourceGatewayOutputWithContext(ctx context.Context) ResourceGatewayOutput +} + +func (*ResourceGateway) ElementType() reflect.Type { + return reflect.TypeOf((**ResourceGateway)(nil)).Elem() +} + +func (i *ResourceGateway) ToResourceGatewayOutput() ResourceGatewayOutput { + return i.ToResourceGatewayOutputWithContext(context.Background()) +} + +func (i *ResourceGateway) ToResourceGatewayOutputWithContext(ctx context.Context) ResourceGatewayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayOutput) +} + +// ResourceGatewayArrayInput is an input type that accepts ResourceGatewayArray and ResourceGatewayArrayOutput values. +// You can construct a concrete instance of `ResourceGatewayArrayInput` via: +// +// ResourceGatewayArray{ ResourceGatewayArgs{...} } +type ResourceGatewayArrayInput interface { + pulumi.Input + + ToResourceGatewayArrayOutput() ResourceGatewayArrayOutput + ToResourceGatewayArrayOutputWithContext(context.Context) ResourceGatewayArrayOutput +} + +type ResourceGatewayArray []ResourceGatewayInput + +func (ResourceGatewayArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ResourceGateway)(nil)).Elem() +} + +func (i ResourceGatewayArray) ToResourceGatewayArrayOutput() ResourceGatewayArrayOutput { + return i.ToResourceGatewayArrayOutputWithContext(context.Background()) +} + +func (i ResourceGatewayArray) ToResourceGatewayArrayOutputWithContext(ctx context.Context) ResourceGatewayArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayArrayOutput) +} + +// ResourceGatewayMapInput is an input type that accepts ResourceGatewayMap and ResourceGatewayMapOutput values. +// You can construct a concrete instance of `ResourceGatewayMapInput` via: +// +// ResourceGatewayMap{ "key": ResourceGatewayArgs{...} } +type ResourceGatewayMapInput interface { + pulumi.Input + + ToResourceGatewayMapOutput() ResourceGatewayMapOutput + ToResourceGatewayMapOutputWithContext(context.Context) ResourceGatewayMapOutput +} + +type ResourceGatewayMap map[string]ResourceGatewayInput + +func (ResourceGatewayMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ResourceGateway)(nil)).Elem() +} + +func (i ResourceGatewayMap) ToResourceGatewayMapOutput() ResourceGatewayMapOutput { + return i.ToResourceGatewayMapOutputWithContext(context.Background()) +} + +func (i ResourceGatewayMap) ToResourceGatewayMapOutputWithContext(ctx context.Context) ResourceGatewayMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ResourceGatewayMapOutput) +} + +type ResourceGatewayOutput struct{ *pulumi.OutputState } + +func (ResourceGatewayOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ResourceGateway)(nil)).Elem() +} + +func (o ResourceGatewayOutput) ToResourceGatewayOutput() ResourceGatewayOutput { + return o +} + +func (o ResourceGatewayOutput) ToResourceGatewayOutputWithContext(ctx context.Context) ResourceGatewayOutput { + return o +} + +// ARN of the resource gateway. +func (o ResourceGatewayOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. +func (o ResourceGatewayOutput) IpAddressType() pulumi.StringOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.IpAddressType }).(pulumi.StringOutput) +} + +// Name of the resource gateway. +func (o ResourceGatewayOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Security group IDs associated with the resource gateway. The security groups must be in the same VPC. +func (o ResourceGatewayOutput) SecurityGroupIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringArrayOutput { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) +} + +// Status of the resource gateway. +func (o ResourceGatewayOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// IDs of the VPC subnets in which to create the resource gateway. +func (o ResourceGatewayOutput) SubnetIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringArrayOutput { return v.SubnetIds }).(pulumi.StringArrayOutput) +} + +// Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. +func (o ResourceGatewayOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. +// +// Deprecated: Please use `tags` instead. +func (o ResourceGatewayOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +func (o ResourceGatewayOutput) Timeouts() ResourceGatewayTimeoutsPtrOutput { + return o.ApplyT(func(v *ResourceGateway) ResourceGatewayTimeoutsPtrOutput { return v.Timeouts }).(ResourceGatewayTimeoutsPtrOutput) +} + +// ID of the VPC for the resource gateway. +// +// The following arguments are optional: +func (o ResourceGatewayOutput) VpcId() pulumi.StringOutput { + return o.ApplyT(func(v *ResourceGateway) pulumi.StringOutput { return v.VpcId }).(pulumi.StringOutput) +} + +type ResourceGatewayArrayOutput struct{ *pulumi.OutputState } + +func (ResourceGatewayArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*ResourceGateway)(nil)).Elem() +} + +func (o ResourceGatewayArrayOutput) ToResourceGatewayArrayOutput() ResourceGatewayArrayOutput { + return o +} + +func (o ResourceGatewayArrayOutput) ToResourceGatewayArrayOutputWithContext(ctx context.Context) ResourceGatewayArrayOutput { + return o +} + +func (o ResourceGatewayArrayOutput) Index(i pulumi.IntInput) ResourceGatewayOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ResourceGateway { + return vs[0].([]*ResourceGateway)[vs[1].(int)] + }).(ResourceGatewayOutput) +} + +type ResourceGatewayMapOutput struct{ *pulumi.OutputState } + +func (ResourceGatewayMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*ResourceGateway)(nil)).Elem() +} + +func (o ResourceGatewayMapOutput) ToResourceGatewayMapOutput() ResourceGatewayMapOutput { + return o +} + +func (o ResourceGatewayMapOutput) ToResourceGatewayMapOutputWithContext(ctx context.Context) ResourceGatewayMapOutput { + return o +} + +func (o ResourceGatewayMapOutput) MapIndex(k pulumi.StringInput) ResourceGatewayOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ResourceGateway { + return vs[0].(map[string]*ResourceGateway)[vs[1].(string)] + }).(ResourceGatewayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ResourceGatewayInput)(nil)).Elem(), &ResourceGateway{}) + pulumi.RegisterInputType(reflect.TypeOf((*ResourceGatewayArrayInput)(nil)).Elem(), ResourceGatewayArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ResourceGatewayMapInput)(nil)).Elem(), ResourceGatewayMap{}) + pulumi.RegisterOutputType(ResourceGatewayOutput{}) + pulumi.RegisterOutputType(ResourceGatewayArrayOutput{}) + pulumi.RegisterOutputType(ResourceGatewayMapOutput{}) +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/appflow/inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/appflow/inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.java index aadcad53876..c060170565f 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/appflow/inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/appflow/inputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs.java @@ -17,6 +17,21 @@ public final class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs e public static final FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs Empty = new FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs(); + /** + * Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + */ + @Import(name="dataTransferApi") + private @Nullable Output dataTransferApi; + + /** + * @return Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + */ + public Optional> dataTransferApi() { + return Optional.ofNullable(this.dataTransferApi); + } + /** * Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. * @@ -57,6 +72,7 @@ public Output object() { private FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs() {} private FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs(FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs $) { + this.dataTransferApi = $.dataTransferApi; this.enableDynamicFieldUpdate = $.enableDynamicFieldUpdate; this.includeDeletedRecords = $.includeDeletedRecords; this.object = $.object; @@ -80,6 +96,27 @@ public Builder(FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs defau $ = new FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs(Objects.requireNonNull(defaults)); } + /** + * @param dataTransferApi Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + * @return builder + * + */ + public Builder dataTransferApi(@Nullable Output dataTransferApi) { + $.dataTransferApi = dataTransferApi; + return this; + } + + /** + * @param dataTransferApi Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + * @return builder + * + */ + public Builder dataTransferApi(String dataTransferApi) { + return dataTransferApi(Output.of(dataTransferApi)); + } + /** * @param enableDynamicFieldUpdate Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/appflow/outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.java b/sdk/java/src/main/java/com/pulumi/aws/appflow/outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.java index 30f01802bba..828d22763e4 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/appflow/outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.java +++ b/sdk/java/src/main/java/com/pulumi/aws/appflow/outputs/FlowSourceFlowConfigSourceConnectorPropertiesSalesforce.java @@ -13,6 +13,11 @@ @CustomType public final class FlowSourceFlowConfigSourceConnectorPropertiesSalesforce { + /** + * @return Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + */ + private @Nullable String dataTransferApi; /** * @return Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. * @@ -26,6 +31,13 @@ public final class FlowSourceFlowConfigSourceConnectorPropertiesSalesforce { private String object; private FlowSourceFlowConfigSourceConnectorPropertiesSalesforce() {} + /** + * @return Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + * + */ + public Optional dataTransferApi() { + return Optional.ofNullable(this.dataTransferApi); + } /** * @return Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. * @@ -53,17 +65,25 @@ public static Builder builder(FlowSourceFlowConfigSourceConnectorPropertiesSales } @CustomType.Builder public static final class Builder { + private @Nullable String dataTransferApi; private @Nullable Boolean enableDynamicFieldUpdate; private @Nullable Boolean includeDeletedRecords; private String object; public Builder() {} public Builder(FlowSourceFlowConfigSourceConnectorPropertiesSalesforce defaults) { Objects.requireNonNull(defaults); + this.dataTransferApi = defaults.dataTransferApi; this.enableDynamicFieldUpdate = defaults.enableDynamicFieldUpdate; this.includeDeletedRecords = defaults.includeDeletedRecords; this.object = defaults.object; } + @CustomType.Setter + public Builder dataTransferApi(@Nullable String dataTransferApi) { + + this.dataTransferApi = dataTransferApi; + return this; + } @CustomType.Setter public Builder enableDynamicFieldUpdate(@Nullable Boolean enableDynamicFieldUpdate) { @@ -86,6 +106,7 @@ public Builder object(String object) { } public FlowSourceFlowConfigSourceConnectorPropertiesSalesforce build() { final var _resultValue = new FlowSourceFlowConfigSourceConnectorPropertiesSalesforce(); + _resultValue.dataTransferApi = dataTransferApi; _resultValue.enableDynamicFieldUpdate = enableDynamicFieldUpdate; _resultValue.includeDeletedRecords = includeDeletedRecords; _resultValue.object = object; diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueJobStateTimeLimitActionArgs.java b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueJobStateTimeLimitActionArgs.java index 9ed91d06175..0a32606bc37 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueJobStateTimeLimitActionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueJobStateTimeLimitActionArgs.java @@ -17,7 +17,6 @@ public final class JobQueueJobStateTimeLimitActionArgs extends com.pulumi.resour /** * The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * */ @Import(name="action", required=true) @@ -25,16 +24,23 @@ public final class JobQueueJobStateTimeLimitActionArgs extends com.pulumi.resour /** * @return The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * */ public Output action() { return this.action; } + /** + * The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + */ @Import(name="maxTimeSeconds", required=true) private Output maxTimeSeconds; + /** + * @return The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + */ public Output maxTimeSeconds() { return this.maxTimeSeconds; } @@ -98,7 +104,6 @@ public Builder(JobQueueJobStateTimeLimitActionArgs defaults) { /** * @param action The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * * @return builder * @@ -110,7 +115,6 @@ public Builder action(Output action) { /** * @param action The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * * @return builder * @@ -119,11 +123,23 @@ public Builder action(String action) { return action(Output.of(action)); } + /** + * @param maxTimeSeconds The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + * @return builder + * + */ public Builder maxTimeSeconds(Output maxTimeSeconds) { $.maxTimeSeconds = maxTimeSeconds; return this; } + /** + * @param maxTimeSeconds The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + * @return builder + * + */ public Builder maxTimeSeconds(Integer maxTimeSeconds) { return maxTimeSeconds(Output.of(maxTimeSeconds)); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueJobStateTimeLimitAction.java b/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueJobStateTimeLimitAction.java index 0fe7d0f1ea0..7b4e9aac8a2 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueJobStateTimeLimitAction.java +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueJobStateTimeLimitAction.java @@ -13,10 +13,13 @@ public final class JobQueueJobStateTimeLimitAction { /** * @return The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * */ private String action; + /** + * @return The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + */ private Integer maxTimeSeconds; /** * @return The reason to log for the action being taken. @@ -32,12 +35,15 @@ public final class JobQueueJobStateTimeLimitAction { private JobQueueJobStateTimeLimitAction() {} /** * @return The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` * */ public String action() { return this.action; } + /** + * @return The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + * + */ public Integer maxTimeSeconds() { return this.maxTimeSeconds; } diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaborator.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaborator.java new file mode 100644 index 00000000000..4df18d56e0c --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaborator.java @@ -0,0 +1,319 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.bedrock.AgentAgentCollaboratorArgs; +import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorState; +import com.pulumi.aws.bedrock.outputs.AgentAgentCollaboratorAgentDescriptor; +import com.pulumi.aws.bedrock.outputs.AgentAgentCollaboratorTimeouts; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.Boolean; +import java.lang.String; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS Bedrock Agents Agent Collaborator. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.AwsFunctions;
+ * import com.pulumi.aws.inputs.GetCallerIdentityArgs;
+ * import com.pulumi.aws.inputs.GetPartitionArgs;
+ * import com.pulumi.aws.inputs.GetRegionArgs;
+ * import com.pulumi.aws.iam.IamFunctions;
+ * import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
+ * import com.pulumi.aws.iam.Role;
+ * import com.pulumi.aws.iam.RoleArgs;
+ * import com.pulumi.aws.iam.RolePolicy;
+ * import com.pulumi.aws.iam.RolePolicyArgs;
+ * import com.pulumi.aws.bedrock.AgentAgent;
+ * import com.pulumi.aws.bedrock.AgentAgentArgs;
+ * import com.pulumi.aws.bedrock.AgentAgentAlias;
+ * import com.pulumi.aws.bedrock.AgentAgentAliasArgs;
+ * import com.pulumi.aws.bedrock.AgentAgentCollaborator;
+ * import com.pulumi.aws.bedrock.AgentAgentCollaboratorArgs;
+ * import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorAgentDescriptorArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         final var current = AwsFunctions.getCallerIdentity();
+ * 
+ *         final var currentGetPartition = AwsFunctions.getPartition();
+ * 
+ *         final var currentGetRegion = AwsFunctions.getRegion();
+ * 
+ *         final var exampleAgentTrust = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
+ *             .statements(GetPolicyDocumentStatementArgs.builder()
+ *                 .actions("sts:AssumeRole")
+ *                 .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
+ *                     .identifiers("bedrock.amazonaws.com")
+ *                     .type("Service")
+ *                     .build())
+ *                 .conditions(                
+ *                     GetPolicyDocumentStatementConditionArgs.builder()
+ *                         .test("StringEquals")
+ *                         .values(current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId()))
+ *                         .variable("aws:SourceAccount")
+ *                         .build(),
+ *                     GetPolicyDocumentStatementConditionArgs.builder()
+ *                         .test("ArnLike")
+ *                         .values(String.format("arn:%s:bedrock:%s:%s:agent/*", currentGetPartition.applyValue(getPartitionResult -> getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name()),current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId())))
+ *                         .variable("AWS:SourceArn")
+ *                         .build())
+ *                 .build())
+ *             .build());
+ * 
+ *         final var exampleAgentPermissions = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
+ *             .statements(            
+ *                 GetPolicyDocumentStatementArgs.builder()
+ *                     .actions("bedrock:InvokeModel")
+ *                     .resources(String.format("arn:%s:bedrock:%s::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0", currentGetPartition.applyValue(getPartitionResult -> getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name())))
+ *                     .build(),
+ *                 GetPolicyDocumentStatementArgs.builder()
+ *                     .actions(                    
+ *                         "bedrock:GetAgentAlias",
+ *                         "bedrock:InvokeAgent")
+ *                     .resources(                    
+ *                         String.format("arn:%s:bedrock:%s:%s:agent/*", currentAgent.partition(),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name()),current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId())),
+ *                         String.format("arn:%s:bedrock:%s:%s:agent-alias/*", currentAgent.partition(),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name()),current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId())))
+ *                     .build())
+ *             .build());
+ * 
+ *         var example = new Role("example", RoleArgs.builder()
+ *             .assumeRolePolicy(exampleAgentTrust.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
+ *             .namePrefix("AmazonBedrockExecutionRoleForAgents_")
+ *             .build());
+ * 
+ *         var exampleRolePolicy = new RolePolicy("exampleRolePolicy", RolePolicyArgs.builder()
+ *             .policy(exampleAgentPermissions.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
+ *             .role(example.id())
+ *             .build());
+ * 
+ *         var exampleCollaborator = new AgentAgent("exampleCollaborator", AgentAgentArgs.builder()
+ *             .agentName("my-agent-collaborator")
+ *             .agentResourceRoleArn(example.arn())
+ *             .idleSessionTtlInSeconds(500)
+ *             .foundationModel("anthropic.claude-3-5-sonnet-20241022-v2:0")
+ *             .instruction("do what the supervisor tells you to do")
+ *             .build());
+ * 
+ *         var exampleSupervisor = new AgentAgent("exampleSupervisor", AgentAgentArgs.builder()
+ *             .agentName("my-agent-supervisor")
+ *             .agentResourceRoleArn(example.arn())
+ *             .agentCollaboration("SUPERVISOR")
+ *             .idleSessionTtlInSeconds(500)
+ *             .foundationModel("anthropic.claude-3-5-sonnet-20241022-v2:0")
+ *             .instruction("tell the sub agent what to do")
+ *             .prepareAgent(false)
+ *             .build());
+ * 
+ *         var exampleAgentAgentAlias = new AgentAgentAlias("exampleAgentAgentAlias", AgentAgentAliasArgs.builder()
+ *             .agentAliasName("my-agent-alias")
+ *             .agentId(exampleCollaborator.agentId())
+ *             .description("Test Alias")
+ *             .build());
+ * 
+ *         var exampleAgentAgentCollaborator = new AgentAgentCollaborator("exampleAgentAgentCollaborator", AgentAgentCollaboratorArgs.builder()
+ *             .agentId(exampleSupervisor.agentId())
+ *             .collaborationInstruction("tell the other agent what to do")
+ *             .collaboratorName("my-collab-example")
+ *             .relayConversationHistory("TO_COLLABORATOR")
+ *             .agentDescriptor(AgentAgentCollaboratorAgentDescriptorArgs.builder()
+ *                 .aliasArn(exampleAgentAgentAlias.agentAliasArn())
+ *                 .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: + * + * ```sh + * $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY + * ``` + * + */ +@ResourceType(type="aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator") +public class AgentAgentCollaborator extends com.pulumi.resources.CustomResource { + @Export(name="agentDescriptor", refs={AgentAgentCollaboratorAgentDescriptor.class}, tree="[0]") + private Output agentDescriptor; + + public Output> agentDescriptor() { + return Codegen.optional(this.agentDescriptor); + } + /** + * ID if the agent to associate the collaborator. + * + */ + @Export(name="agentId", refs={String.class}, tree="[0]") + private Output agentId; + + /** + * @return ID if the agent to associate the collaborator. + * + */ + public Output agentId() { + return this.agentId; + } + @Export(name="agentVersion", refs={String.class}, tree="[0]") + private Output agentVersion; + + public Output agentVersion() { + return this.agentVersion; + } + /** + * Instruction to give the collaborator. + * + */ + @Export(name="collaborationInstruction", refs={String.class}, tree="[0]") + private Output collaborationInstruction; + + /** + * @return Instruction to give the collaborator. + * + */ + public Output collaborationInstruction() { + return this.collaborationInstruction; + } + /** + * ID of the Agent Collaborator. + * + */ + @Export(name="collaboratorId", refs={String.class}, tree="[0]") + private Output collaboratorId; + + /** + * @return ID of the Agent Collaborator. + * + */ + public Output collaboratorId() { + return this.collaboratorId; + } + @Export(name="collaboratorName", refs={String.class}, tree="[0]") + private Output collaboratorName; + + public Output collaboratorName() { + return this.collaboratorName; + } + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + @Export(name="prepareAgent", refs={Boolean.class}, tree="[0]") + private Output prepareAgent; + + /** + * @return Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + public Output prepareAgent() { + return this.prepareAgent; + } + /** + * Configure relaying the history to the collaborator. + * + */ + @Export(name="relayConversationHistory", refs={String.class}, tree="[0]") + private Output relayConversationHistory; + + /** + * @return Configure relaying the history to the collaborator. + * + */ + public Output relayConversationHistory() { + return this.relayConversationHistory; + } + @Export(name="timeouts", refs={AgentAgentCollaboratorTimeouts.class}, tree="[0]") + private Output timeouts; + + public Output> timeouts() { + return Codegen.optional(this.timeouts); + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public AgentAgentCollaborator(java.lang.String name) { + this(name, AgentAgentCollaboratorArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public AgentAgentCollaborator(java.lang.String name, AgentAgentCollaboratorArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public AgentAgentCollaborator(java.lang.String name, AgentAgentCollaboratorArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private AgentAgentCollaborator(java.lang.String name, Output id, @Nullable AgentAgentCollaboratorState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator", name, state, makeResourceOptions(options, id), false); + } + + private static AgentAgentCollaboratorArgs makeArgs(AgentAgentCollaboratorArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? AgentAgentCollaboratorArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static AgentAgentCollaborator get(java.lang.String name, Output id, @Nullable AgentAgentCollaboratorState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new AgentAgentCollaborator(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaboratorArgs.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaboratorArgs.java new file mode 100644 index 00000000000..6823e809ac6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/AgentAgentCollaboratorArgs.java @@ -0,0 +1,275 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock; + +import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorAgentDescriptorArgs; +import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorTimeoutsArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AgentAgentCollaboratorArgs extends com.pulumi.resources.ResourceArgs { + + public static final AgentAgentCollaboratorArgs Empty = new AgentAgentCollaboratorArgs(); + + @Import(name="agentDescriptor") + private @Nullable Output agentDescriptor; + + public Optional> agentDescriptor() { + return Optional.ofNullable(this.agentDescriptor); + } + + /** + * ID if the agent to associate the collaborator. + * + */ + @Import(name="agentId", required=true) + private Output agentId; + + /** + * @return ID if the agent to associate the collaborator. + * + */ + public Output agentId() { + return this.agentId; + } + + @Import(name="agentVersion") + private @Nullable Output agentVersion; + + public Optional> agentVersion() { + return Optional.ofNullable(this.agentVersion); + } + + /** + * Instruction to give the collaborator. + * + */ + @Import(name="collaborationInstruction", required=true) + private Output collaborationInstruction; + + /** + * @return Instruction to give the collaborator. + * + */ + public Output collaborationInstruction() { + return this.collaborationInstruction; + } + + @Import(name="collaboratorName", required=true) + private Output collaboratorName; + + public Output collaboratorName() { + return this.collaboratorName; + } + + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + @Import(name="prepareAgent") + private @Nullable Output prepareAgent; + + /** + * @return Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + public Optional> prepareAgent() { + return Optional.ofNullable(this.prepareAgent); + } + + /** + * Configure relaying the history to the collaborator. + * + */ + @Import(name="relayConversationHistory") + private @Nullable Output relayConversationHistory; + + /** + * @return Configure relaying the history to the collaborator. + * + */ + public Optional> relayConversationHistory() { + return Optional.ofNullable(this.relayConversationHistory); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + private AgentAgentCollaboratorArgs() {} + + private AgentAgentCollaboratorArgs(AgentAgentCollaboratorArgs $) { + this.agentDescriptor = $.agentDescriptor; + this.agentId = $.agentId; + this.agentVersion = $.agentVersion; + this.collaborationInstruction = $.collaborationInstruction; + this.collaboratorName = $.collaboratorName; + this.prepareAgent = $.prepareAgent; + this.relayConversationHistory = $.relayConversationHistory; + this.timeouts = $.timeouts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AgentAgentCollaboratorArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AgentAgentCollaboratorArgs $; + + public Builder() { + $ = new AgentAgentCollaboratorArgs(); + } + + public Builder(AgentAgentCollaboratorArgs defaults) { + $ = new AgentAgentCollaboratorArgs(Objects.requireNonNull(defaults)); + } + + public Builder agentDescriptor(@Nullable Output agentDescriptor) { + $.agentDescriptor = agentDescriptor; + return this; + } + + public Builder agentDescriptor(AgentAgentCollaboratorAgentDescriptorArgs agentDescriptor) { + return agentDescriptor(Output.of(agentDescriptor)); + } + + /** + * @param agentId ID if the agent to associate the collaborator. + * + * @return builder + * + */ + public Builder agentId(Output agentId) { + $.agentId = agentId; + return this; + } + + /** + * @param agentId ID if the agent to associate the collaborator. + * + * @return builder + * + */ + public Builder agentId(String agentId) { + return agentId(Output.of(agentId)); + } + + public Builder agentVersion(@Nullable Output agentVersion) { + $.agentVersion = agentVersion; + return this; + } + + public Builder agentVersion(String agentVersion) { + return agentVersion(Output.of(agentVersion)); + } + + /** + * @param collaborationInstruction Instruction to give the collaborator. + * + * @return builder + * + */ + public Builder collaborationInstruction(Output collaborationInstruction) { + $.collaborationInstruction = collaborationInstruction; + return this; + } + + /** + * @param collaborationInstruction Instruction to give the collaborator. + * + * @return builder + * + */ + public Builder collaborationInstruction(String collaborationInstruction) { + return collaborationInstruction(Output.of(collaborationInstruction)); + } + + public Builder collaboratorName(Output collaboratorName) { + $.collaboratorName = collaboratorName; + return this; + } + + public Builder collaboratorName(String collaboratorName) { + return collaboratorName(Output.of(collaboratorName)); + } + + /** + * @param prepareAgent Whether to prepare the agent after creation or modification. Defaults to `true`. + * + * @return builder + * + */ + public Builder prepareAgent(@Nullable Output prepareAgent) { + $.prepareAgent = prepareAgent; + return this; + } + + /** + * @param prepareAgent Whether to prepare the agent after creation or modification. Defaults to `true`. + * + * @return builder + * + */ + public Builder prepareAgent(Boolean prepareAgent) { + return prepareAgent(Output.of(prepareAgent)); + } + + /** + * @param relayConversationHistory Configure relaying the history to the collaborator. + * + * @return builder + * + */ + public Builder relayConversationHistory(@Nullable Output relayConversationHistory) { + $.relayConversationHistory = relayConversationHistory; + return this; + } + + /** + * @param relayConversationHistory Configure relaying the history to the collaborator. + * + * @return builder + * + */ + public Builder relayConversationHistory(String relayConversationHistory) { + return relayConversationHistory(Output.of(relayConversationHistory)); + } + + public Builder timeouts(@Nullable Output timeouts) { + $.timeouts = timeouts; + return this; + } + + public Builder timeouts(AgentAgentCollaboratorTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + public AgentAgentCollaboratorArgs build() { + if ($.agentId == null) { + throw new MissingRequiredPropertyException("AgentAgentCollaboratorArgs", "agentId"); + } + if ($.collaborationInstruction == null) { + throw new MissingRequiredPropertyException("AgentAgentCollaboratorArgs", "collaborationInstruction"); + } + if ($.collaboratorName == null) { + throw new MissingRequiredPropertyException("AgentAgentCollaboratorArgs", "collaboratorName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorAgentDescriptorArgs.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorAgentDescriptorArgs.java new file mode 100644 index 00000000000..8af06d8127f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorAgentDescriptorArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class AgentAgentCollaboratorAgentDescriptorArgs extends com.pulumi.resources.ResourceArgs { + + public static final AgentAgentCollaboratorAgentDescriptorArgs Empty = new AgentAgentCollaboratorAgentDescriptorArgs(); + + /** + * ARN of the Alias of an Agent to use as the collaborator. + * + */ + @Import(name="aliasArn", required=true) + private Output aliasArn; + + /** + * @return ARN of the Alias of an Agent to use as the collaborator. + * + */ + public Output aliasArn() { + return this.aliasArn; + } + + private AgentAgentCollaboratorAgentDescriptorArgs() {} + + private AgentAgentCollaboratorAgentDescriptorArgs(AgentAgentCollaboratorAgentDescriptorArgs $) { + this.aliasArn = $.aliasArn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AgentAgentCollaboratorAgentDescriptorArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AgentAgentCollaboratorAgentDescriptorArgs $; + + public Builder() { + $ = new AgentAgentCollaboratorAgentDescriptorArgs(); + } + + public Builder(AgentAgentCollaboratorAgentDescriptorArgs defaults) { + $ = new AgentAgentCollaboratorAgentDescriptorArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param aliasArn ARN of the Alias of an Agent to use as the collaborator. + * + * @return builder + * + */ + public Builder aliasArn(Output aliasArn) { + $.aliasArn = aliasArn; + return this; + } + + /** + * @param aliasArn ARN of the Alias of an Agent to use as the collaborator. + * + * @return builder + * + */ + public Builder aliasArn(String aliasArn) { + return aliasArn(Output.of(aliasArn)); + } + + public AgentAgentCollaboratorAgentDescriptorArgs build() { + if ($.aliasArn == null) { + throw new MissingRequiredPropertyException("AgentAgentCollaboratorAgentDescriptorArgs", "aliasArn"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorState.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorState.java new file mode 100644 index 00000000000..ea1742b32ab --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorState.java @@ -0,0 +1,302 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock.inputs; + +import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorAgentDescriptorArgs; +import com.pulumi.aws.bedrock.inputs.AgentAgentCollaboratorTimeoutsArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AgentAgentCollaboratorState extends com.pulumi.resources.ResourceArgs { + + public static final AgentAgentCollaboratorState Empty = new AgentAgentCollaboratorState(); + + @Import(name="agentDescriptor") + private @Nullable Output agentDescriptor; + + public Optional> agentDescriptor() { + return Optional.ofNullable(this.agentDescriptor); + } + + /** + * ID if the agent to associate the collaborator. + * + */ + @Import(name="agentId") + private @Nullable Output agentId; + + /** + * @return ID if the agent to associate the collaborator. + * + */ + public Optional> agentId() { + return Optional.ofNullable(this.agentId); + } + + @Import(name="agentVersion") + private @Nullable Output agentVersion; + + public Optional> agentVersion() { + return Optional.ofNullable(this.agentVersion); + } + + /** + * Instruction to give the collaborator. + * + */ + @Import(name="collaborationInstruction") + private @Nullable Output collaborationInstruction; + + /** + * @return Instruction to give the collaborator. + * + */ + public Optional> collaborationInstruction() { + return Optional.ofNullable(this.collaborationInstruction); + } + + /** + * ID of the Agent Collaborator. + * + */ + @Import(name="collaboratorId") + private @Nullable Output collaboratorId; + + /** + * @return ID of the Agent Collaborator. + * + */ + public Optional> collaboratorId() { + return Optional.ofNullable(this.collaboratorId); + } + + @Import(name="collaboratorName") + private @Nullable Output collaboratorName; + + public Optional> collaboratorName() { + return Optional.ofNullable(this.collaboratorName); + } + + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + @Import(name="prepareAgent") + private @Nullable Output prepareAgent; + + /** + * @return Whether to prepare the agent after creation or modification. Defaults to `true`. + * + */ + public Optional> prepareAgent() { + return Optional.ofNullable(this.prepareAgent); + } + + /** + * Configure relaying the history to the collaborator. + * + */ + @Import(name="relayConversationHistory") + private @Nullable Output relayConversationHistory; + + /** + * @return Configure relaying the history to the collaborator. + * + */ + public Optional> relayConversationHistory() { + return Optional.ofNullable(this.relayConversationHistory); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + private AgentAgentCollaboratorState() {} + + private AgentAgentCollaboratorState(AgentAgentCollaboratorState $) { + this.agentDescriptor = $.agentDescriptor; + this.agentId = $.agentId; + this.agentVersion = $.agentVersion; + this.collaborationInstruction = $.collaborationInstruction; + this.collaboratorId = $.collaboratorId; + this.collaboratorName = $.collaboratorName; + this.prepareAgent = $.prepareAgent; + this.relayConversationHistory = $.relayConversationHistory; + this.timeouts = $.timeouts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AgentAgentCollaboratorState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AgentAgentCollaboratorState $; + + public Builder() { + $ = new AgentAgentCollaboratorState(); + } + + public Builder(AgentAgentCollaboratorState defaults) { + $ = new AgentAgentCollaboratorState(Objects.requireNonNull(defaults)); + } + + public Builder agentDescriptor(@Nullable Output agentDescriptor) { + $.agentDescriptor = agentDescriptor; + return this; + } + + public Builder agentDescriptor(AgentAgentCollaboratorAgentDescriptorArgs agentDescriptor) { + return agentDescriptor(Output.of(agentDescriptor)); + } + + /** + * @param agentId ID if the agent to associate the collaborator. + * + * @return builder + * + */ + public Builder agentId(@Nullable Output agentId) { + $.agentId = agentId; + return this; + } + + /** + * @param agentId ID if the agent to associate the collaborator. + * + * @return builder + * + */ + public Builder agentId(String agentId) { + return agentId(Output.of(agentId)); + } + + public Builder agentVersion(@Nullable Output agentVersion) { + $.agentVersion = agentVersion; + return this; + } + + public Builder agentVersion(String agentVersion) { + return agentVersion(Output.of(agentVersion)); + } + + /** + * @param collaborationInstruction Instruction to give the collaborator. + * + * @return builder + * + */ + public Builder collaborationInstruction(@Nullable Output collaborationInstruction) { + $.collaborationInstruction = collaborationInstruction; + return this; + } + + /** + * @param collaborationInstruction Instruction to give the collaborator. + * + * @return builder + * + */ + public Builder collaborationInstruction(String collaborationInstruction) { + return collaborationInstruction(Output.of(collaborationInstruction)); + } + + /** + * @param collaboratorId ID of the Agent Collaborator. + * + * @return builder + * + */ + public Builder collaboratorId(@Nullable Output collaboratorId) { + $.collaboratorId = collaboratorId; + return this; + } + + /** + * @param collaboratorId ID of the Agent Collaborator. + * + * @return builder + * + */ + public Builder collaboratorId(String collaboratorId) { + return collaboratorId(Output.of(collaboratorId)); + } + + public Builder collaboratorName(@Nullable Output collaboratorName) { + $.collaboratorName = collaboratorName; + return this; + } + + public Builder collaboratorName(String collaboratorName) { + return collaboratorName(Output.of(collaboratorName)); + } + + /** + * @param prepareAgent Whether to prepare the agent after creation or modification. Defaults to `true`. + * + * @return builder + * + */ + public Builder prepareAgent(@Nullable Output prepareAgent) { + $.prepareAgent = prepareAgent; + return this; + } + + /** + * @param prepareAgent Whether to prepare the agent after creation or modification. Defaults to `true`. + * + * @return builder + * + */ + public Builder prepareAgent(Boolean prepareAgent) { + return prepareAgent(Output.of(prepareAgent)); + } + + /** + * @param relayConversationHistory Configure relaying the history to the collaborator. + * + * @return builder + * + */ + public Builder relayConversationHistory(@Nullable Output relayConversationHistory) { + $.relayConversationHistory = relayConversationHistory; + return this; + } + + /** + * @param relayConversationHistory Configure relaying the history to the collaborator. + * + * @return builder + * + */ + public Builder relayConversationHistory(String relayConversationHistory) { + return relayConversationHistory(Output.of(relayConversationHistory)); + } + + public Builder timeouts(@Nullable Output timeouts) { + $.timeouts = timeouts; + return this; + } + + public Builder timeouts(AgentAgentCollaboratorTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + public AgentAgentCollaboratorState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorTimeoutsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorTimeoutsArgs.java new file mode 100644 index 00000000000..3674255cf52 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/inputs/AgentAgentCollaboratorTimeoutsArgs.java @@ -0,0 +1,157 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class AgentAgentCollaboratorTimeoutsArgs extends com.pulumi.resources.ResourceArgs { + + public static final AgentAgentCollaboratorTimeoutsArgs Empty = new AgentAgentCollaboratorTimeoutsArgs(); + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + @Import(name="create") + private @Nullable Output create; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional> create() { + return Optional.ofNullable(this.create); + } + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + @Import(name="delete") + private @Nullable Output delete; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + public Optional> delete() { + return Optional.ofNullable(this.delete); + } + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + @Import(name="update") + private @Nullable Output update; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional> update() { + return Optional.ofNullable(this.update); + } + + private AgentAgentCollaboratorTimeoutsArgs() {} + + private AgentAgentCollaboratorTimeoutsArgs(AgentAgentCollaboratorTimeoutsArgs $) { + this.create = $.create; + this.delete = $.delete; + this.update = $.update; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(AgentAgentCollaboratorTimeoutsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private AgentAgentCollaboratorTimeoutsArgs $; + + public Builder() { + $ = new AgentAgentCollaboratorTimeoutsArgs(); + } + + public Builder(AgentAgentCollaboratorTimeoutsArgs defaults) { + $ = new AgentAgentCollaboratorTimeoutsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param create A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder create(@Nullable Output create) { + $.create = create; + return this; + } + + /** + * @param create A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder create(String create) { + return create(Output.of(create)); + } + + /** + * @param delete A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + * @return builder + * + */ + public Builder delete(@Nullable Output delete) { + $.delete = delete; + return this; + } + + /** + * @param delete A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + * @return builder + * + */ + public Builder delete(String delete) { + return delete(Output.of(delete)); + } + + /** + * @param update A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder update(@Nullable Output update) { + $.update = update; + return this; + } + + /** + * @param update A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder update(String update) { + return update(Output.of(update)); + } + + public AgentAgentCollaboratorTimeoutsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorAgentDescriptor.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorAgentDescriptor.java new file mode 100644 index 00000000000..c9d022c4205 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorAgentDescriptor.java @@ -0,0 +1,58 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class AgentAgentCollaboratorAgentDescriptor { + /** + * @return ARN of the Alias of an Agent to use as the collaborator. + * + */ + private String aliasArn; + + private AgentAgentCollaboratorAgentDescriptor() {} + /** + * @return ARN of the Alias of an Agent to use as the collaborator. + * + */ + public String aliasArn() { + return this.aliasArn; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AgentAgentCollaboratorAgentDescriptor defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String aliasArn; + public Builder() {} + public Builder(AgentAgentCollaboratorAgentDescriptor defaults) { + Objects.requireNonNull(defaults); + this.aliasArn = defaults.aliasArn; + } + + @CustomType.Setter + public Builder aliasArn(String aliasArn) { + if (aliasArn == null) { + throw new MissingRequiredPropertyException("AgentAgentCollaboratorAgentDescriptor", "aliasArn"); + } + this.aliasArn = aliasArn; + return this; + } + public AgentAgentCollaboratorAgentDescriptor build() { + final var _resultValue = new AgentAgentCollaboratorAgentDescriptor(); + _resultValue.aliasArn = aliasArn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorTimeouts.java b/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorTimeouts.java new file mode 100644 index 00000000000..5a9074bfbf2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/bedrock/outputs/AgentAgentCollaboratorTimeouts.java @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.bedrock.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class AgentAgentCollaboratorTimeouts { + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + private @Nullable String create; + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + private @Nullable String delete; + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + private @Nullable String update; + + private AgentAgentCollaboratorTimeouts() {} + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional create() { + return Optional.ofNullable(this.create); + } + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + public Optional delete() { + return Optional.ofNullable(this.delete); + } + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional update() { + return Optional.ofNullable(this.update); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(AgentAgentCollaboratorTimeouts defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String create; + private @Nullable String delete; + private @Nullable String update; + public Builder() {} + public Builder(AgentAgentCollaboratorTimeouts defaults) { + Objects.requireNonNull(defaults); + this.create = defaults.create; + this.delete = defaults.delete; + this.update = defaults.update; + } + + @CustomType.Setter + public Builder create(@Nullable String create) { + + this.create = create; + return this; + } + @CustomType.Setter + public Builder delete(@Nullable String delete) { + + this.delete = delete; + return this; + } + @CustomType.Setter + public Builder update(@Nullable String update) { + + this.update = update; + return this; + } + public AgentAgentCollaboratorTimeouts build() { + final var _resultValue = new AgentAgentCollaboratorTimeouts(); + _resultValue.create = create; + _resultValue.delete = delete; + _resultValue.update = update; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/Membership.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/Membership.java new file mode 100644 index 00000000000..b12ee119804 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/Membership.java @@ -0,0 +1,343 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cleanrooms.MembershipArgs; +import com.pulumi.aws.cleanrooms.inputs.MembershipState; +import com.pulumi.aws.cleanrooms.outputs.MembershipDefaultResultConfiguration; +import com.pulumi.aws.cleanrooms.outputs.MembershipPaymentConfiguration; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. + * + * ## Example Usage + * + * ### Membership with tags + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cleanrooms.Membership;
+ * import com.pulumi.aws.cleanrooms.MembershipArgs;
+ * import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationArgs;
+ * import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationArgs;
+ * import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationS3Args;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var testMembership = new Membership("testMembership", MembershipArgs.builder()
+ *             .collaborationId("1234abcd-12ab-34cd-56ef-1234567890ab")
+ *             .queryLogStatus("DISABLED")
+ *             .defaultResultConfiguration(MembershipDefaultResultConfigurationArgs.builder()
+ *                 .roleArn("arn:aws:iam::123456789012:role/role-name")
+ *                 .outputConfiguration(MembershipDefaultResultConfigurationOutputConfigurationArgs.builder()
+ *                     .s3(MembershipDefaultResultConfigurationOutputConfigurationS3Args.builder()
+ *                         .bucket("test-bucket")
+ *                         .resultFormat("PARQUET")
+ *                         .keyPrefix("test-prefix")
+ *                         .build())
+ *                     .build())
+ *                 .build())
+ *             .tags(Map.of("Project", "Terraform"))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: + * + * ```sh + * $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab + * ``` + * + */ +@ResourceType(type="aws:cleanrooms/membership:Membership") +public class Membership extends com.pulumi.resources.CustomResource { + /** + * The ARN of the membership. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return The ARN of the membership. + * + */ + public Output arn() { + return this.arn; + } + /** + * The ARN of the joined collaboration. + * + */ + @Export(name="collaborationArn", refs={String.class}, tree="[0]") + private Output collaborationArn; + + /** + * @return The ARN of the joined collaboration. + * + */ + public Output collaborationArn() { + return this.collaborationArn; + } + /** + * The account ID of the collaboration's creator. + * + */ + @Export(name="collaborationCreatorAccountId", refs={String.class}, tree="[0]") + private Output collaborationCreatorAccountId; + + /** + * @return The account ID of the collaboration's creator. + * + */ + public Output collaborationCreatorAccountId() { + return this.collaborationCreatorAccountId; + } + /** + * The display name of the collaboration's creator. + * + */ + @Export(name="collaborationCreatorDisplayName", refs={String.class}, tree="[0]") + private Output collaborationCreatorDisplayName; + + /** + * @return The display name of the collaboration's creator. + * + */ + public Output collaborationCreatorDisplayName() { + return this.collaborationCreatorDisplayName; + } + /** + * The ID of the collaboration to which the member was invited. + * + */ + @Export(name="collaborationId", refs={String.class}, tree="[0]") + private Output collaborationId; + + /** + * @return The ID of the collaboration to which the member was invited. + * + */ + public Output collaborationId() { + return this.collaborationId; + } + /** + * The name of the joined collaboration. + * + */ + @Export(name="collaborationName", refs={String.class}, tree="[0]") + private Output collaborationName; + + /** + * @return The name of the joined collaboration. + * + */ + public Output collaborationName() { + return this.collaborationName; + } + /** + * The date and time the membership was created. + * + */ + @Export(name="createTime", refs={String.class}, tree="[0]") + private Output createTime; + + /** + * @return The date and time the membership was created. + * + */ + public Output createTime() { + return this.createTime; + } + /** + * The default configuration for a query result. + * + */ + @Export(name="defaultResultConfiguration", refs={MembershipDefaultResultConfiguration.class}, tree="[0]") + private Output defaultResultConfiguration; + + /** + * @return The default configuration for a query result. + * + */ + public Output> defaultResultConfiguration() { + return Codegen.optional(this.defaultResultConfiguration); + } + /** + * The list of abilities for the invited member. + * + */ + @Export(name="memberAbilities", refs={List.class,String.class}, tree="[0,1]") + private Output> memberAbilities; + + /** + * @return The list of abilities for the invited member. + * + */ + public Output> memberAbilities() { + return this.memberAbilities; + } + @Export(name="paymentConfiguration", refs={MembershipPaymentConfiguration.class}, tree="[0]") + private Output paymentConfiguration; + + public Output> paymentConfiguration() { + return Codegen.optional(this.paymentConfiguration); + } + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + @Export(name="queryLogStatus", refs={String.class}, tree="[0]") + private Output queryLogStatus; + + /** + * @return An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + public Output queryLogStatus() { + return this.queryLogStatus; + } + /** + * The status of the membership. + * + */ + @Export(name="status", refs={String.class}, tree="[0]") + private Output status; + + /** + * @return The status of the membership. + * + */ + public Output status() { + return this.status; + } + /** + * Key value pairs which tag the membership. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return Key value pairs which tag the membership. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tagsAll; + + public Output> tagsAll() { + return this.tagsAll; + } + /** + * The date and time the membership was last updated. + * + */ + @Export(name="updateTime", refs={String.class}, tree="[0]") + private Output updateTime; + + /** + * @return The date and time the membership was last updated. + * + */ + public Output updateTime() { + return this.updateTime; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Membership(java.lang.String name) { + this(name, MembershipArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Membership(java.lang.String name, MembershipArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public Membership(java.lang.String name, MembershipArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cleanrooms/membership:Membership", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private Membership(java.lang.String name, Output id, @Nullable MembershipState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cleanrooms/membership:Membership", name, state, makeResourceOptions(options, id), false); + } + + private static MembershipArgs makeArgs(MembershipArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? MembershipArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static Membership get(java.lang.String name, Output id, @Nullable MembershipState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Membership(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/MembershipArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/MembershipArgs.java new file mode 100644 index 00000000000..09c0a0886e6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/MembershipArgs.java @@ -0,0 +1,221 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms; + +import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationArgs; +import com.pulumi.aws.cleanrooms.inputs.MembershipPaymentConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipArgs extends com.pulumi.resources.ResourceArgs { + + public static final MembershipArgs Empty = new MembershipArgs(); + + /** + * The ID of the collaboration to which the member was invited. + * + */ + @Import(name="collaborationId", required=true) + private Output collaborationId; + + /** + * @return The ID of the collaboration to which the member was invited. + * + */ + public Output collaborationId() { + return this.collaborationId; + } + + /** + * The default configuration for a query result. + * + */ + @Import(name="defaultResultConfiguration") + private @Nullable Output defaultResultConfiguration; + + /** + * @return The default configuration for a query result. + * + */ + public Optional> defaultResultConfiguration() { + return Optional.ofNullable(this.defaultResultConfiguration); + } + + @Import(name="paymentConfiguration") + private @Nullable Output paymentConfiguration; + + public Optional> paymentConfiguration() { + return Optional.ofNullable(this.paymentConfiguration); + } + + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + @Import(name="queryLogStatus", required=true) + private Output queryLogStatus; + + /** + * @return An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + public Output queryLogStatus() { + return this.queryLogStatus; + } + + /** + * Key value pairs which tag the membership. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return Key value pairs which tag the membership. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + private MembershipArgs() {} + + private MembershipArgs(MembershipArgs $) { + this.collaborationId = $.collaborationId; + this.defaultResultConfiguration = $.defaultResultConfiguration; + this.paymentConfiguration = $.paymentConfiguration; + this.queryLogStatus = $.queryLogStatus; + this.tags = $.tags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipArgs $; + + public Builder() { + $ = new MembershipArgs(); + } + + public Builder(MembershipArgs defaults) { + $ = new MembershipArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param collaborationId The ID of the collaboration to which the member was invited. + * + * @return builder + * + */ + public Builder collaborationId(Output collaborationId) { + $.collaborationId = collaborationId; + return this; + } + + /** + * @param collaborationId The ID of the collaboration to which the member was invited. + * + * @return builder + * + */ + public Builder collaborationId(String collaborationId) { + return collaborationId(Output.of(collaborationId)); + } + + /** + * @param defaultResultConfiguration The default configuration for a query result. + * + * @return builder + * + */ + public Builder defaultResultConfiguration(@Nullable Output defaultResultConfiguration) { + $.defaultResultConfiguration = defaultResultConfiguration; + return this; + } + + /** + * @param defaultResultConfiguration The default configuration for a query result. + * + * @return builder + * + */ + public Builder defaultResultConfiguration(MembershipDefaultResultConfigurationArgs defaultResultConfiguration) { + return defaultResultConfiguration(Output.of(defaultResultConfiguration)); + } + + public Builder paymentConfiguration(@Nullable Output paymentConfiguration) { + $.paymentConfiguration = paymentConfiguration; + return this; + } + + public Builder paymentConfiguration(MembershipPaymentConfigurationArgs paymentConfiguration) { + return paymentConfiguration(Output.of(paymentConfiguration)); + } + + /** + * @param queryLogStatus An indicator as to whether query logging has been enabled or disabled for the membership. + * + * @return builder + * + */ + public Builder queryLogStatus(Output queryLogStatus) { + $.queryLogStatus = queryLogStatus; + return this; + } + + /** + * @param queryLogStatus An indicator as to whether query logging has been enabled or disabled for the membership. + * + * @return builder + * + */ + public Builder queryLogStatus(String queryLogStatus) { + return queryLogStatus(Output.of(queryLogStatus)); + } + + /** + * @param tags Key value pairs which tag the membership. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags Key value pairs which tag the membership. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public MembershipArgs build() { + if ($.collaborationId == null) { + throw new MissingRequiredPropertyException("MembershipArgs", "collaborationId"); + } + if ($.queryLogStatus == null) { + throw new MissingRequiredPropertyException("MembershipArgs", "queryLogStatus"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationArgs.java new file mode 100644 index 00000000000..1e75f434d5d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationArgs.java @@ -0,0 +1,113 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipDefaultResultConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final MembershipDefaultResultConfigurationArgs Empty = new MembershipDefaultResultConfigurationArgs(); + + @Import(name="outputConfiguration") + private @Nullable Output outputConfiguration; + + public Optional> outputConfiguration() { + return Optional.ofNullable(this.outputConfiguration); + } + + /** + * The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + */ + @Import(name="roleArn") + private @Nullable Output roleArn; + + /** + * @return The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + */ + public Optional> roleArn() { + return Optional.ofNullable(this.roleArn); + } + + private MembershipDefaultResultConfigurationArgs() {} + + private MembershipDefaultResultConfigurationArgs(MembershipDefaultResultConfigurationArgs $) { + this.outputConfiguration = $.outputConfiguration; + this.roleArn = $.roleArn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipDefaultResultConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipDefaultResultConfigurationArgs $; + + public Builder() { + $ = new MembershipDefaultResultConfigurationArgs(); + } + + public Builder(MembershipDefaultResultConfigurationArgs defaults) { + $ = new MembershipDefaultResultConfigurationArgs(Objects.requireNonNull(defaults)); + } + + public Builder outputConfiguration(@Nullable Output outputConfiguration) { + $.outputConfiguration = outputConfiguration; + return this; + } + + public Builder outputConfiguration(MembershipDefaultResultConfigurationOutputConfigurationArgs outputConfiguration) { + return outputConfiguration(Output.of(outputConfiguration)); + } + + /** + * @param roleArn The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + * @return builder + * + */ + public Builder roleArn(@Nullable Output roleArn) { + $.roleArn = roleArn; + return this; + } + + /** + * @param roleArn The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + * @return builder + * + */ + public Builder roleArn(String roleArn) { + return roleArn(Output.of(roleArn)); + } + + public MembershipDefaultResultConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.java new file mode 100644 index 00000000000..6f1aaec5f8a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationArgs.java @@ -0,0 +1,63 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationOutputConfigurationS3Args; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipDefaultResultConfigurationOutputConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final MembershipDefaultResultConfigurationOutputConfigurationArgs Empty = new MembershipDefaultResultConfigurationOutputConfigurationArgs(); + + @Import(name="s3") + private @Nullable Output s3; + + public Optional> s3() { + return Optional.ofNullable(this.s3); + } + + private MembershipDefaultResultConfigurationOutputConfigurationArgs() {} + + private MembershipDefaultResultConfigurationOutputConfigurationArgs(MembershipDefaultResultConfigurationOutputConfigurationArgs $) { + this.s3 = $.s3; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipDefaultResultConfigurationOutputConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipDefaultResultConfigurationOutputConfigurationArgs $; + + public Builder() { + $ = new MembershipDefaultResultConfigurationOutputConfigurationArgs(); + } + + public Builder(MembershipDefaultResultConfigurationOutputConfigurationArgs defaults) { + $ = new MembershipDefaultResultConfigurationOutputConfigurationArgs(Objects.requireNonNull(defaults)); + } + + public Builder s3(@Nullable Output s3) { + $.s3 = s3; + return this; + } + + public Builder s3(MembershipDefaultResultConfigurationOutputConfigurationS3Args s3) { + return s3(Output.of(s3)); + } + + public MembershipDefaultResultConfigurationOutputConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.java new file mode 100644 index 00000000000..7a2fb5f2ffa --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipDefaultResultConfigurationOutputConfigurationS3Args.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipDefaultResultConfigurationOutputConfigurationS3Args extends com.pulumi.resources.ResourceArgs { + + public static final MembershipDefaultResultConfigurationOutputConfigurationS3Args Empty = new MembershipDefaultResultConfigurationOutputConfigurationS3Args(); + + @Import(name="bucket", required=true) + private Output bucket; + + public Output bucket() { + return this.bucket; + } + + @Import(name="keyPrefix") + private @Nullable Output keyPrefix; + + public Optional> keyPrefix() { + return Optional.ofNullable(this.keyPrefix); + } + + @Import(name="resultFormat", required=true) + private Output resultFormat; + + public Output resultFormat() { + return this.resultFormat; + } + + private MembershipDefaultResultConfigurationOutputConfigurationS3Args() {} + + private MembershipDefaultResultConfigurationOutputConfigurationS3Args(MembershipDefaultResultConfigurationOutputConfigurationS3Args $) { + this.bucket = $.bucket; + this.keyPrefix = $.keyPrefix; + this.resultFormat = $.resultFormat; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipDefaultResultConfigurationOutputConfigurationS3Args defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipDefaultResultConfigurationOutputConfigurationS3Args $; + + public Builder() { + $ = new MembershipDefaultResultConfigurationOutputConfigurationS3Args(); + } + + public Builder(MembershipDefaultResultConfigurationOutputConfigurationS3Args defaults) { + $ = new MembershipDefaultResultConfigurationOutputConfigurationS3Args(Objects.requireNonNull(defaults)); + } + + public Builder bucket(Output bucket) { + $.bucket = bucket; + return this; + } + + public Builder bucket(String bucket) { + return bucket(Output.of(bucket)); + } + + public Builder keyPrefix(@Nullable Output keyPrefix) { + $.keyPrefix = keyPrefix; + return this; + } + + public Builder keyPrefix(String keyPrefix) { + return keyPrefix(Output.of(keyPrefix)); + } + + public Builder resultFormat(Output resultFormat) { + $.resultFormat = resultFormat; + return this; + } + + public Builder resultFormat(String resultFormat) { + return resultFormat(Output.of(resultFormat)); + } + + public MembershipDefaultResultConfigurationOutputConfigurationS3Args build() { + if ($.bucket == null) { + throw new MissingRequiredPropertyException("MembershipDefaultResultConfigurationOutputConfigurationS3Args", "bucket"); + } + if ($.resultFormat == null) { + throw new MissingRequiredPropertyException("MembershipDefaultResultConfigurationOutputConfigurationS3Args", "resultFormat"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationArgs.java new file mode 100644 index 00000000000..1dc0f7a7cee --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationArgs.java @@ -0,0 +1,63 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.aws.cleanrooms.inputs.MembershipPaymentConfigurationQueryComputeArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipPaymentConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final MembershipPaymentConfigurationArgs Empty = new MembershipPaymentConfigurationArgs(); + + @Import(name="queryCompute") + private @Nullable Output queryCompute; + + public Optional> queryCompute() { + return Optional.ofNullable(this.queryCompute); + } + + private MembershipPaymentConfigurationArgs() {} + + private MembershipPaymentConfigurationArgs(MembershipPaymentConfigurationArgs $) { + this.queryCompute = $.queryCompute; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipPaymentConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipPaymentConfigurationArgs $; + + public Builder() { + $ = new MembershipPaymentConfigurationArgs(); + } + + public Builder(MembershipPaymentConfigurationArgs defaults) { + $ = new MembershipPaymentConfigurationArgs(Objects.requireNonNull(defaults)); + } + + public Builder queryCompute(@Nullable Output queryCompute) { + $.queryCompute = queryCompute; + return this; + } + + public Builder queryCompute(MembershipPaymentConfigurationQueryComputeArgs queryCompute) { + return queryCompute(Output.of(queryCompute)); + } + + public MembershipPaymentConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationQueryComputeArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationQueryComputeArgs.java new file mode 100644 index 00000000000..923922d9f43 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipPaymentConfigurationQueryComputeArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.util.Objects; + + +public final class MembershipPaymentConfigurationQueryComputeArgs extends com.pulumi.resources.ResourceArgs { + + public static final MembershipPaymentConfigurationQueryComputeArgs Empty = new MembershipPaymentConfigurationQueryComputeArgs(); + + /** + * Indicates whether the collaboration member has accepted to pay for query compute costs. + * + */ + @Import(name="isResponsible", required=true) + private Output isResponsible; + + /** + * @return Indicates whether the collaboration member has accepted to pay for query compute costs. + * + */ + public Output isResponsible() { + return this.isResponsible; + } + + private MembershipPaymentConfigurationQueryComputeArgs() {} + + private MembershipPaymentConfigurationQueryComputeArgs(MembershipPaymentConfigurationQueryComputeArgs $) { + this.isResponsible = $.isResponsible; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipPaymentConfigurationQueryComputeArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipPaymentConfigurationQueryComputeArgs $; + + public Builder() { + $ = new MembershipPaymentConfigurationQueryComputeArgs(); + } + + public Builder(MembershipPaymentConfigurationQueryComputeArgs defaults) { + $ = new MembershipPaymentConfigurationQueryComputeArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param isResponsible Indicates whether the collaboration member has accepted to pay for query compute costs. + * + * @return builder + * + */ + public Builder isResponsible(Output isResponsible) { + $.isResponsible = isResponsible; + return this; + } + + /** + * @param isResponsible Indicates whether the collaboration member has accepted to pay for query compute costs. + * + * @return builder + * + */ + public Builder isResponsible(Boolean isResponsible) { + return isResponsible(Output.of(isResponsible)); + } + + public MembershipPaymentConfigurationQueryComputeArgs build() { + if ($.isResponsible == null) { + throw new MissingRequiredPropertyException("MembershipPaymentConfigurationQueryComputeArgs", "isResponsible"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipState.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipState.java new file mode 100644 index 00000000000..cc951f5e1c1 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/inputs/MembershipState.java @@ -0,0 +1,603 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.inputs; + +import com.pulumi.aws.cleanrooms.inputs.MembershipDefaultResultConfigurationArgs; +import com.pulumi.aws.cleanrooms.inputs.MembershipPaymentConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class MembershipState extends com.pulumi.resources.ResourceArgs { + + public static final MembershipState Empty = new MembershipState(); + + /** + * The ARN of the membership. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return The ARN of the membership. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * The ARN of the joined collaboration. + * + */ + @Import(name="collaborationArn") + private @Nullable Output collaborationArn; + + /** + * @return The ARN of the joined collaboration. + * + */ + public Optional> collaborationArn() { + return Optional.ofNullable(this.collaborationArn); + } + + /** + * The account ID of the collaboration's creator. + * + */ + @Import(name="collaborationCreatorAccountId") + private @Nullable Output collaborationCreatorAccountId; + + /** + * @return The account ID of the collaboration's creator. + * + */ + public Optional> collaborationCreatorAccountId() { + return Optional.ofNullable(this.collaborationCreatorAccountId); + } + + /** + * The display name of the collaboration's creator. + * + */ + @Import(name="collaborationCreatorDisplayName") + private @Nullable Output collaborationCreatorDisplayName; + + /** + * @return The display name of the collaboration's creator. + * + */ + public Optional> collaborationCreatorDisplayName() { + return Optional.ofNullable(this.collaborationCreatorDisplayName); + } + + /** + * The ID of the collaboration to which the member was invited. + * + */ + @Import(name="collaborationId") + private @Nullable Output collaborationId; + + /** + * @return The ID of the collaboration to which the member was invited. + * + */ + public Optional> collaborationId() { + return Optional.ofNullable(this.collaborationId); + } + + /** + * The name of the joined collaboration. + * + */ + @Import(name="collaborationName") + private @Nullable Output collaborationName; + + /** + * @return The name of the joined collaboration. + * + */ + public Optional> collaborationName() { + return Optional.ofNullable(this.collaborationName); + } + + /** + * The date and time the membership was created. + * + */ + @Import(name="createTime") + private @Nullable Output createTime; + + /** + * @return The date and time the membership was created. + * + */ + public Optional> createTime() { + return Optional.ofNullable(this.createTime); + } + + /** + * The default configuration for a query result. + * + */ + @Import(name="defaultResultConfiguration") + private @Nullable Output defaultResultConfiguration; + + /** + * @return The default configuration for a query result. + * + */ + public Optional> defaultResultConfiguration() { + return Optional.ofNullable(this.defaultResultConfiguration); + } + + /** + * The list of abilities for the invited member. + * + */ + @Import(name="memberAbilities") + private @Nullable Output> memberAbilities; + + /** + * @return The list of abilities for the invited member. + * + */ + public Optional>> memberAbilities() { + return Optional.ofNullable(this.memberAbilities); + } + + @Import(name="paymentConfiguration") + private @Nullable Output paymentConfiguration; + + public Optional> paymentConfiguration() { + return Optional.ofNullable(this.paymentConfiguration); + } + + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + @Import(name="queryLogStatus") + private @Nullable Output queryLogStatus; + + /** + * @return An indicator as to whether query logging has been enabled or disabled for the membership. + * + */ + public Optional> queryLogStatus() { + return Optional.ofNullable(this.queryLogStatus); + } + + /** + * The status of the membership. + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return The status of the membership. + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + /** + * Key value pairs which tag the membership. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return Key value pairs which tag the membership. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Import(name="tagsAll") + private @Nullable Output> tagsAll; + + /** + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Optional>> tagsAll() { + return Optional.ofNullable(this.tagsAll); + } + + /** + * The date and time the membership was last updated. + * + */ + @Import(name="updateTime") + private @Nullable Output updateTime; + + /** + * @return The date and time the membership was last updated. + * + */ + public Optional> updateTime() { + return Optional.ofNullable(this.updateTime); + } + + private MembershipState() {} + + private MembershipState(MembershipState $) { + this.arn = $.arn; + this.collaborationArn = $.collaborationArn; + this.collaborationCreatorAccountId = $.collaborationCreatorAccountId; + this.collaborationCreatorDisplayName = $.collaborationCreatorDisplayName; + this.collaborationId = $.collaborationId; + this.collaborationName = $.collaborationName; + this.createTime = $.createTime; + this.defaultResultConfiguration = $.defaultResultConfiguration; + this.memberAbilities = $.memberAbilities; + this.paymentConfiguration = $.paymentConfiguration; + this.queryLogStatus = $.queryLogStatus; + this.status = $.status; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + this.updateTime = $.updateTime; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(MembershipState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private MembershipState $; + + public Builder() { + $ = new MembershipState(); + } + + public Builder(MembershipState defaults) { + $ = new MembershipState(Objects.requireNonNull(defaults)); + } + + /** + * @param arn The ARN of the membership. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn The ARN of the membership. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param collaborationArn The ARN of the joined collaboration. + * + * @return builder + * + */ + public Builder collaborationArn(@Nullable Output collaborationArn) { + $.collaborationArn = collaborationArn; + return this; + } + + /** + * @param collaborationArn The ARN of the joined collaboration. + * + * @return builder + * + */ + public Builder collaborationArn(String collaborationArn) { + return collaborationArn(Output.of(collaborationArn)); + } + + /** + * @param collaborationCreatorAccountId The account ID of the collaboration's creator. + * + * @return builder + * + */ + public Builder collaborationCreatorAccountId(@Nullable Output collaborationCreatorAccountId) { + $.collaborationCreatorAccountId = collaborationCreatorAccountId; + return this; + } + + /** + * @param collaborationCreatorAccountId The account ID of the collaboration's creator. + * + * @return builder + * + */ + public Builder collaborationCreatorAccountId(String collaborationCreatorAccountId) { + return collaborationCreatorAccountId(Output.of(collaborationCreatorAccountId)); + } + + /** + * @param collaborationCreatorDisplayName The display name of the collaboration's creator. + * + * @return builder + * + */ + public Builder collaborationCreatorDisplayName(@Nullable Output collaborationCreatorDisplayName) { + $.collaborationCreatorDisplayName = collaborationCreatorDisplayName; + return this; + } + + /** + * @param collaborationCreatorDisplayName The display name of the collaboration's creator. + * + * @return builder + * + */ + public Builder collaborationCreatorDisplayName(String collaborationCreatorDisplayName) { + return collaborationCreatorDisplayName(Output.of(collaborationCreatorDisplayName)); + } + + /** + * @param collaborationId The ID of the collaboration to which the member was invited. + * + * @return builder + * + */ + public Builder collaborationId(@Nullable Output collaborationId) { + $.collaborationId = collaborationId; + return this; + } + + /** + * @param collaborationId The ID of the collaboration to which the member was invited. + * + * @return builder + * + */ + public Builder collaborationId(String collaborationId) { + return collaborationId(Output.of(collaborationId)); + } + + /** + * @param collaborationName The name of the joined collaboration. + * + * @return builder + * + */ + public Builder collaborationName(@Nullable Output collaborationName) { + $.collaborationName = collaborationName; + return this; + } + + /** + * @param collaborationName The name of the joined collaboration. + * + * @return builder + * + */ + public Builder collaborationName(String collaborationName) { + return collaborationName(Output.of(collaborationName)); + } + + /** + * @param createTime The date and time the membership was created. + * + * @return builder + * + */ + public Builder createTime(@Nullable Output createTime) { + $.createTime = createTime; + return this; + } + + /** + * @param createTime The date and time the membership was created. + * + * @return builder + * + */ + public Builder createTime(String createTime) { + return createTime(Output.of(createTime)); + } + + /** + * @param defaultResultConfiguration The default configuration for a query result. + * + * @return builder + * + */ + public Builder defaultResultConfiguration(@Nullable Output defaultResultConfiguration) { + $.defaultResultConfiguration = defaultResultConfiguration; + return this; + } + + /** + * @param defaultResultConfiguration The default configuration for a query result. + * + * @return builder + * + */ + public Builder defaultResultConfiguration(MembershipDefaultResultConfigurationArgs defaultResultConfiguration) { + return defaultResultConfiguration(Output.of(defaultResultConfiguration)); + } + + /** + * @param memberAbilities The list of abilities for the invited member. + * + * @return builder + * + */ + public Builder memberAbilities(@Nullable Output> memberAbilities) { + $.memberAbilities = memberAbilities; + return this; + } + + /** + * @param memberAbilities The list of abilities for the invited member. + * + * @return builder + * + */ + public Builder memberAbilities(List memberAbilities) { + return memberAbilities(Output.of(memberAbilities)); + } + + /** + * @param memberAbilities The list of abilities for the invited member. + * + * @return builder + * + */ + public Builder memberAbilities(String... memberAbilities) { + return memberAbilities(List.of(memberAbilities)); + } + + public Builder paymentConfiguration(@Nullable Output paymentConfiguration) { + $.paymentConfiguration = paymentConfiguration; + return this; + } + + public Builder paymentConfiguration(MembershipPaymentConfigurationArgs paymentConfiguration) { + return paymentConfiguration(Output.of(paymentConfiguration)); + } + + /** + * @param queryLogStatus An indicator as to whether query logging has been enabled or disabled for the membership. + * + * @return builder + * + */ + public Builder queryLogStatus(@Nullable Output queryLogStatus) { + $.queryLogStatus = queryLogStatus; + return this; + } + + /** + * @param queryLogStatus An indicator as to whether query logging has been enabled or disabled for the membership. + * + * @return builder + * + */ + public Builder queryLogStatus(String queryLogStatus) { + return queryLogStatus(Output.of(queryLogStatus)); + } + + /** + * @param status The status of the membership. + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status The status of the membership. + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + /** + * @param tags Key value pairs which tag the membership. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags Key value pairs which tag the membership. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(@Nullable Output> tagsAll) { + $.tagsAll = tagsAll; + return this; + } + + /** + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(Map tagsAll) { + return tagsAll(Output.of(tagsAll)); + } + + /** + * @param updateTime The date and time the membership was last updated. + * + * @return builder + * + */ + public Builder updateTime(@Nullable Output updateTime) { + $.updateTime = updateTime; + return this; + } + + /** + * @param updateTime The date and time the membership was last updated. + * + * @return builder + * + */ + public Builder updateTime(String updateTime) { + return updateTime(Output.of(updateTime)); + } + + public MembershipState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfiguration.java new file mode 100644 index 00000000000..130f4d937e0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfiguration.java @@ -0,0 +1,77 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.outputs; + +import com.pulumi.aws.cleanrooms.outputs.MembershipDefaultResultConfigurationOutputConfiguration; +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class MembershipDefaultResultConfiguration { + private @Nullable MembershipDefaultResultConfigurationOutputConfiguration outputConfiguration; + /** + * @return The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + */ + private @Nullable String roleArn; + + private MembershipDefaultResultConfiguration() {} + public Optional outputConfiguration() { + return Optional.ofNullable(this.outputConfiguration); + } + /** + * @return The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + * + */ + public Optional roleArn() { + return Optional.ofNullable(this.roleArn); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(MembershipDefaultResultConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable MembershipDefaultResultConfigurationOutputConfiguration outputConfiguration; + private @Nullable String roleArn; + public Builder() {} + public Builder(MembershipDefaultResultConfiguration defaults) { + Objects.requireNonNull(defaults); + this.outputConfiguration = defaults.outputConfiguration; + this.roleArn = defaults.roleArn; + } + + @CustomType.Setter + public Builder outputConfiguration(@Nullable MembershipDefaultResultConfigurationOutputConfiguration outputConfiguration) { + + this.outputConfiguration = outputConfiguration; + return this; + } + @CustomType.Setter + public Builder roleArn(@Nullable String roleArn) { + + this.roleArn = roleArn; + return this; + } + public MembershipDefaultResultConfiguration build() { + final var _resultValue = new MembershipDefaultResultConfiguration(); + _resultValue.outputConfiguration = outputConfiguration; + _resultValue.roleArn = roleArn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfiguration.java new file mode 100644 index 00000000000..37d64068d6f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfiguration.java @@ -0,0 +1,49 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.outputs; + +import com.pulumi.aws.cleanrooms.outputs.MembershipDefaultResultConfigurationOutputConfigurationS3; +import com.pulumi.core.annotations.CustomType; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class MembershipDefaultResultConfigurationOutputConfiguration { + private @Nullable MembershipDefaultResultConfigurationOutputConfigurationS3 s3; + + private MembershipDefaultResultConfigurationOutputConfiguration() {} + public Optional s3() { + return Optional.ofNullable(this.s3); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(MembershipDefaultResultConfigurationOutputConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable MembershipDefaultResultConfigurationOutputConfigurationS3 s3; + public Builder() {} + public Builder(MembershipDefaultResultConfigurationOutputConfiguration defaults) { + Objects.requireNonNull(defaults); + this.s3 = defaults.s3; + } + + @CustomType.Setter + public Builder s3(@Nullable MembershipDefaultResultConfigurationOutputConfigurationS3 s3) { + + this.s3 = s3; + return this; + } + public MembershipDefaultResultConfigurationOutputConfiguration build() { + final var _resultValue = new MembershipDefaultResultConfigurationOutputConfiguration(); + _resultValue.s3 = s3; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.java new file mode 100644 index 00000000000..e1d374a7ba0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipDefaultResultConfigurationOutputConfigurationS3.java @@ -0,0 +1,80 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class MembershipDefaultResultConfigurationOutputConfigurationS3 { + private String bucket; + private @Nullable String keyPrefix; + private String resultFormat; + + private MembershipDefaultResultConfigurationOutputConfigurationS3() {} + public String bucket() { + return this.bucket; + } + public Optional keyPrefix() { + return Optional.ofNullable(this.keyPrefix); + } + public String resultFormat() { + return this.resultFormat; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(MembershipDefaultResultConfigurationOutputConfigurationS3 defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String bucket; + private @Nullable String keyPrefix; + private String resultFormat; + public Builder() {} + public Builder(MembershipDefaultResultConfigurationOutputConfigurationS3 defaults) { + Objects.requireNonNull(defaults); + this.bucket = defaults.bucket; + this.keyPrefix = defaults.keyPrefix; + this.resultFormat = defaults.resultFormat; + } + + @CustomType.Setter + public Builder bucket(String bucket) { + if (bucket == null) { + throw new MissingRequiredPropertyException("MembershipDefaultResultConfigurationOutputConfigurationS3", "bucket"); + } + this.bucket = bucket; + return this; + } + @CustomType.Setter + public Builder keyPrefix(@Nullable String keyPrefix) { + + this.keyPrefix = keyPrefix; + return this; + } + @CustomType.Setter + public Builder resultFormat(String resultFormat) { + if (resultFormat == null) { + throw new MissingRequiredPropertyException("MembershipDefaultResultConfigurationOutputConfigurationS3", "resultFormat"); + } + this.resultFormat = resultFormat; + return this; + } + public MembershipDefaultResultConfigurationOutputConfigurationS3 build() { + final var _resultValue = new MembershipDefaultResultConfigurationOutputConfigurationS3(); + _resultValue.bucket = bucket; + _resultValue.keyPrefix = keyPrefix; + _resultValue.resultFormat = resultFormat; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfiguration.java new file mode 100644 index 00000000000..b8de2a62990 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfiguration.java @@ -0,0 +1,49 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.outputs; + +import com.pulumi.aws.cleanrooms.outputs.MembershipPaymentConfigurationQueryCompute; +import com.pulumi.core.annotations.CustomType; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class MembershipPaymentConfiguration { + private @Nullable MembershipPaymentConfigurationQueryCompute queryCompute; + + private MembershipPaymentConfiguration() {} + public Optional queryCompute() { + return Optional.ofNullable(this.queryCompute); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(MembershipPaymentConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable MembershipPaymentConfigurationQueryCompute queryCompute; + public Builder() {} + public Builder(MembershipPaymentConfiguration defaults) { + Objects.requireNonNull(defaults); + this.queryCompute = defaults.queryCompute; + } + + @CustomType.Setter + public Builder queryCompute(@Nullable MembershipPaymentConfigurationQueryCompute queryCompute) { + + this.queryCompute = queryCompute; + return this; + } + public MembershipPaymentConfiguration build() { + final var _resultValue = new MembershipPaymentConfiguration(); + _resultValue.queryCompute = queryCompute; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfigurationQueryCompute.java b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfigurationQueryCompute.java new file mode 100644 index 00000000000..efe20a30df5 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cleanrooms/outputs/MembershipPaymentConfigurationQueryCompute.java @@ -0,0 +1,58 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cleanrooms.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.util.Objects; + +@CustomType +public final class MembershipPaymentConfigurationQueryCompute { + /** + * @return Indicates whether the collaboration member has accepted to pay for query compute costs. + * + */ + private Boolean isResponsible; + + private MembershipPaymentConfigurationQueryCompute() {} + /** + * @return Indicates whether the collaboration member has accepted to pay for query compute costs. + * + */ + public Boolean isResponsible() { + return this.isResponsible; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(MembershipPaymentConfigurationQueryCompute defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Boolean isResponsible; + public Builder() {} + public Builder(MembershipPaymentConfigurationQueryCompute defaults) { + Objects.requireNonNull(defaults); + this.isResponsible = defaults.isResponsible; + } + + @CustomType.Setter + public Builder isResponsible(Boolean isResponsible) { + if (isResponsible == null) { + throw new MissingRequiredPropertyException("MembershipPaymentConfigurationQueryCompute", "isResponsible"); + } + this.isResponsible = isResponsible; + return this; + } + public MembershipPaymentConfigurationQueryCompute build() { + final var _resultValue = new MembershipPaymentConfigurationQueryCompute(); + _resultValue.isResponsible = isResponsible; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/VpcOrigin.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/VpcOrigin.java index b27e5d7387d..183bf014152 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/VpcOrigin.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/VpcOrigin.java @@ -82,7 +82,7 @@ * * to = aws_cloudfront_vpc_origin.origin * - * id = vo_JQEa410sssUFoY6wMkx69j + * id = "vo_JQEa410sssUFoY6wMkx69j" * * } * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorArgs.java index 6133354e3fd..61353727d38 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorArgs.java @@ -5,6 +5,7 @@ import com.pulumi.aws.cloudfront.inputs.DistributionDefaultCacheBehaviorForwardedValuesArgs; import com.pulumi.aws.cloudfront.inputs.DistributionDefaultCacheBehaviorFunctionAssociationArgs; +import com.pulumi.aws.cloudfront.inputs.DistributionDefaultCacheBehaviorGrpcConfigArgs; import com.pulumi.aws.cloudfront.inputs.DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; @@ -83,14 +84,14 @@ public Optional> compress() { } /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ @Import(name="defaultTtl") private @Nullable Output defaultTtl; /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> defaultTtl() { @@ -142,6 +143,21 @@ public Optional grpcConfig; + + /** + * @return A config block that sets the grpc config. + * + */ + public Optional> grpcConfig() { + return Optional.ofNullable(this.grpcConfig); + } + /** * A config block that triggers a lambda function with specific actions (maximum 4). * @@ -158,14 +174,14 @@ public Optional maxTtl; /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> maxTtl() { @@ -173,14 +189,14 @@ public Optional> maxTtl() { } /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ @Import(name="minTtl") private @Nullable Output minTtl; /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> minTtl() { @@ -318,6 +334,7 @@ private DistributionDefaultCacheBehaviorArgs(DistributionDefaultCacheBehaviorArg this.fieldLevelEncryptionId = $.fieldLevelEncryptionId; this.forwardedValues = $.forwardedValues; this.functionAssociations = $.functionAssociations; + this.grpcConfig = $.grpcConfig; this.lambdaFunctionAssociations = $.lambdaFunctionAssociations; this.maxTtl = $.maxTtl; this.minTtl = $.minTtl; @@ -454,7 +471,7 @@ public Builder compress(Boolean compress) { } /** - * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -465,7 +482,7 @@ public Builder defaultTtl(@Nullable Output defaultTtl) { } /** - * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -547,6 +564,27 @@ public Builder functionAssociations(DistributionDefaultCacheBehaviorFunctionAsso return functionAssociations(List.of(functionAssociations)); } + /** + * @param grpcConfig A config block that sets the grpc config. + * + * @return builder + * + */ + public Builder grpcConfig(@Nullable Output grpcConfig) { + $.grpcConfig = grpcConfig; + return this; + } + + /** + * @param grpcConfig A config block that sets the grpc config. + * + * @return builder + * + */ + public Builder grpcConfig(DistributionDefaultCacheBehaviorGrpcConfigArgs grpcConfig) { + return grpcConfig(Output.of(grpcConfig)); + } + /** * @param lambdaFunctionAssociations A config block that triggers a lambda function with specific actions (maximum 4). * @@ -579,7 +617,7 @@ public Builder lambdaFunctionAssociations(DistributionDefaultCacheBehaviorLambda } /** - * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -590,7 +628,7 @@ public Builder maxTtl(@Nullable Output maxTtl) { } /** - * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -600,7 +638,7 @@ public Builder maxTtl(Integer maxTtl) { } /** - * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -611,7 +649,7 @@ public Builder minTtl(@Nullable Output minTtl) { } /** - * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.java new file mode 100644 index 00000000000..23b2865a321 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionDefaultCacheBehaviorGrpcConfigArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudfront.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class DistributionDefaultCacheBehaviorGrpcConfigArgs extends com.pulumi.resources.ResourceArgs { + + public static final DistributionDefaultCacheBehaviorGrpcConfigArgs Empty = new DistributionDefaultCacheBehaviorGrpcConfigArgs(); + + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + @Import(name="enabled") + private @Nullable Output enabled; + + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + private DistributionDefaultCacheBehaviorGrpcConfigArgs() {} + + private DistributionDefaultCacheBehaviorGrpcConfigArgs(DistributionDefaultCacheBehaviorGrpcConfigArgs $) { + this.enabled = $.enabled; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(DistributionDefaultCacheBehaviorGrpcConfigArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private DistributionDefaultCacheBehaviorGrpcConfigArgs $; + + public Builder() { + $ = new DistributionDefaultCacheBehaviorGrpcConfigArgs(); + } + + public Builder(DistributionDefaultCacheBehaviorGrpcConfigArgs defaults) { + $ = new DistributionDefaultCacheBehaviorGrpcConfigArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param enabled `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + * @return builder + * + */ + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + public DistributionDefaultCacheBehaviorGrpcConfigArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionLoggingConfigArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionLoggingConfigArgs.java index cc4ebf7a1c0..bf112b0cb0b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionLoggingConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionLoggingConfigArgs.java @@ -18,14 +18,14 @@ public final class DistributionLoggingConfigArgs extends com.pulumi.resources.Re public static final DistributionLoggingConfigArgs Empty = new DistributionLoggingConfigArgs(); /** - * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * */ @Import(name="bucket", required=true) private Output bucket; /** - * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * */ public Output bucket() { @@ -89,7 +89,7 @@ public Builder(DistributionLoggingConfigArgs defaults) { } /** - * @param bucket Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * @param bucket Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * * @return builder * @@ -100,7 +100,7 @@ public Builder bucket(Output bucket) { } /** - * @param bucket Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * @param bucket Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorArgs.java index d78369b6e6d..6a9952487c5 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorArgs.java @@ -5,6 +5,7 @@ import com.pulumi.aws.cloudfront.inputs.DistributionOrderedCacheBehaviorForwardedValuesArgs; import com.pulumi.aws.cloudfront.inputs.DistributionOrderedCacheBehaviorFunctionAssociationArgs; +import com.pulumi.aws.cloudfront.inputs.DistributionOrderedCacheBehaviorGrpcConfigArgs; import com.pulumi.aws.cloudfront.inputs.DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; @@ -83,14 +84,14 @@ public Optional> compress() { } /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ @Import(name="defaultTtl") private @Nullable Output defaultTtl; /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> defaultTtl() { @@ -142,6 +143,21 @@ public Optional grpcConfig; + + /** + * @return A config block that sets the grpc config. + * + */ + public Optional> grpcConfig() { + return Optional.ofNullable(this.grpcConfig); + } + /** * A config block that triggers a lambda function with specific actions (maximum 4). * @@ -158,14 +174,14 @@ public Optional maxTtl; /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> maxTtl() { @@ -173,14 +189,14 @@ public Optional> maxTtl() { } /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ @Import(name="minTtl") private @Nullable Output minTtl; /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ public Optional> minTtl() { @@ -333,6 +349,7 @@ private DistributionOrderedCacheBehaviorArgs(DistributionOrderedCacheBehaviorArg this.fieldLevelEncryptionId = $.fieldLevelEncryptionId; this.forwardedValues = $.forwardedValues; this.functionAssociations = $.functionAssociations; + this.grpcConfig = $.grpcConfig; this.lambdaFunctionAssociations = $.lambdaFunctionAssociations; this.maxTtl = $.maxTtl; this.minTtl = $.minTtl; @@ -470,7 +487,7 @@ public Builder compress(Boolean compress) { } /** - * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -481,7 +498,7 @@ public Builder defaultTtl(@Nullable Output defaultTtl) { } /** - * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @param defaultTtl Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -563,6 +580,27 @@ public Builder functionAssociations(DistributionOrderedCacheBehaviorFunctionAsso return functionAssociations(List.of(functionAssociations)); } + /** + * @param grpcConfig A config block that sets the grpc config. + * + * @return builder + * + */ + public Builder grpcConfig(@Nullable Output grpcConfig) { + $.grpcConfig = grpcConfig; + return this; + } + + /** + * @param grpcConfig A config block that sets the grpc config. + * + * @return builder + * + */ + public Builder grpcConfig(DistributionOrderedCacheBehaviorGrpcConfigArgs grpcConfig) { + return grpcConfig(Output.of(grpcConfig)); + } + /** * @param lambdaFunctionAssociations A config block that triggers a lambda function with specific actions (maximum 4). * @@ -595,7 +633,7 @@ public Builder lambdaFunctionAssociations(DistributionOrderedCacheBehaviorLambda } /** - * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -606,7 +644,7 @@ public Builder maxTtl(@Nullable Output maxTtl) { } /** - * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @param maxTtl Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -616,7 +654,7 @@ public Builder maxTtl(Integer maxTtl) { } /** - * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * * @return builder * @@ -627,7 +665,7 @@ public Builder minTtl(@Nullable Output minTtl) { } /** - * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @param minTtl Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.java new file mode 100644 index 00000000000..34e2efbc0ba --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/inputs/DistributionOrderedCacheBehaviorGrpcConfigArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudfront.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class DistributionOrderedCacheBehaviorGrpcConfigArgs extends com.pulumi.resources.ResourceArgs { + + public static final DistributionOrderedCacheBehaviorGrpcConfigArgs Empty = new DistributionOrderedCacheBehaviorGrpcConfigArgs(); + + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + @Import(name="enabled") + private @Nullable Output enabled; + + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + private DistributionOrderedCacheBehaviorGrpcConfigArgs() {} + + private DistributionOrderedCacheBehaviorGrpcConfigArgs(DistributionOrderedCacheBehaviorGrpcConfigArgs $) { + this.enabled = $.enabled; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(DistributionOrderedCacheBehaviorGrpcConfigArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private DistributionOrderedCacheBehaviorGrpcConfigArgs $; + + public Builder() { + $ = new DistributionOrderedCacheBehaviorGrpcConfigArgs(); + } + + public Builder(DistributionOrderedCacheBehaviorGrpcConfigArgs defaults) { + $ = new DistributionOrderedCacheBehaviorGrpcConfigArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param enabled `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + * @return builder + * + */ + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + public DistributionOrderedCacheBehaviorGrpcConfigArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehavior.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehavior.java index 7ce906c9fef..b9fa92df584 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehavior.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehavior.java @@ -5,6 +5,7 @@ import com.pulumi.aws.cloudfront.outputs.DistributionDefaultCacheBehaviorForwardedValues; import com.pulumi.aws.cloudfront.outputs.DistributionDefaultCacheBehaviorFunctionAssociation; +import com.pulumi.aws.cloudfront.outputs.DistributionDefaultCacheBehaviorGrpcConfig; import com.pulumi.aws.cloudfront.outputs.DistributionDefaultCacheBehaviorLambdaFunctionAssociation; import com.pulumi.core.annotations.CustomType; import com.pulumi.exceptions.MissingRequiredPropertyException; @@ -39,7 +40,7 @@ public final class DistributionDefaultCacheBehavior { */ private @Nullable Boolean compress; /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer defaultTtl; @@ -58,18 +59,23 @@ public final class DistributionDefaultCacheBehavior { * */ private @Nullable List functionAssociations; + /** + * @return A config block that sets the grpc config. + * + */ + private @Nullable DistributionDefaultCacheBehaviorGrpcConfig grpcConfig; /** * @return A config block that triggers a lambda function with specific actions (maximum 4). * */ private @Nullable List lambdaFunctionAssociations; /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer maxTtl; /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer minTtl; @@ -144,7 +150,7 @@ public Optional compress() { return Optional.ofNullable(this.compress); } /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ public Optional defaultTtl() { @@ -171,6 +177,13 @@ public Optional forwardedValues public List functionAssociations() { return this.functionAssociations == null ? List.of() : this.functionAssociations; } + /** + * @return A config block that sets the grpc config. + * + */ + public Optional grpcConfig() { + return Optional.ofNullable(this.grpcConfig); + } /** * @return A config block that triggers a lambda function with specific actions (maximum 4). * @@ -179,14 +192,14 @@ public List lambdaFun return this.lambdaFunctionAssociations == null ? List.of() : this.lambdaFunctionAssociations; } /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ public Optional maxTtl() { return Optional.ofNullable(this.maxTtl); } /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ public Optional minTtl() { @@ -266,6 +279,7 @@ public static final class Builder { private @Nullable String fieldLevelEncryptionId; private @Nullable DistributionDefaultCacheBehaviorForwardedValues forwardedValues; private @Nullable List functionAssociations; + private @Nullable DistributionDefaultCacheBehaviorGrpcConfig grpcConfig; private @Nullable List lambdaFunctionAssociations; private @Nullable Integer maxTtl; private @Nullable Integer minTtl; @@ -288,6 +302,7 @@ public Builder(DistributionDefaultCacheBehavior defaults) { this.fieldLevelEncryptionId = defaults.fieldLevelEncryptionId; this.forwardedValues = defaults.forwardedValues; this.functionAssociations = defaults.functionAssociations; + this.grpcConfig = defaults.grpcConfig; this.lambdaFunctionAssociations = defaults.lambdaFunctionAssociations; this.maxTtl = defaults.maxTtl; this.minTtl = defaults.minTtl; @@ -363,6 +378,12 @@ public Builder functionAssociations(DistributionDefaultCacheBehaviorFunctionAsso return functionAssociations(List.of(functionAssociations)); } @CustomType.Setter + public Builder grpcConfig(@Nullable DistributionDefaultCacheBehaviorGrpcConfig grpcConfig) { + + this.grpcConfig = grpcConfig; + return this; + } + @CustomType.Setter public Builder lambdaFunctionAssociations(@Nullable List lambdaFunctionAssociations) { this.lambdaFunctionAssociations = lambdaFunctionAssociations; @@ -451,6 +472,7 @@ public DistributionDefaultCacheBehavior build() { _resultValue.fieldLevelEncryptionId = fieldLevelEncryptionId; _resultValue.forwardedValues = forwardedValues; _resultValue.functionAssociations = functionAssociations; + _resultValue.grpcConfig = grpcConfig; _resultValue.lambdaFunctionAssociations = lambdaFunctionAssociations; _resultValue.maxTtl = maxTtl; _resultValue.minTtl = minTtl; diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehaviorGrpcConfig.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehaviorGrpcConfig.java new file mode 100644 index 00000000000..0dd64963fb6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionDefaultCacheBehaviorGrpcConfig.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudfront.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class DistributionDefaultCacheBehaviorGrpcConfig { + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + private @Nullable Boolean enabled; + + private DistributionDefaultCacheBehaviorGrpcConfig() {} + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + public Optional enabled() { + return Optional.ofNullable(this.enabled); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(DistributionDefaultCacheBehaviorGrpcConfig defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Boolean enabled; + public Builder() {} + public Builder(DistributionDefaultCacheBehaviorGrpcConfig defaults) { + Objects.requireNonNull(defaults); + this.enabled = defaults.enabled; + } + + @CustomType.Setter + public Builder enabled(@Nullable Boolean enabled) { + + this.enabled = enabled; + return this; + } + public DistributionDefaultCacheBehaviorGrpcConfig build() { + final var _resultValue = new DistributionDefaultCacheBehaviorGrpcConfig(); + _resultValue.enabled = enabled; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionLoggingConfig.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionLoggingConfig.java index c7b7e222412..fb6fd357cd8 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionLoggingConfig.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionLoggingConfig.java @@ -14,7 +14,7 @@ @CustomType public final class DistributionLoggingConfig { /** - * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * */ private String bucket; @@ -31,7 +31,7 @@ public final class DistributionLoggingConfig { private DistributionLoggingConfig() {} /** - * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * @return Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. * */ public String bucket() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehavior.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehavior.java index 4a41f933953..16230943bab 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehavior.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehavior.java @@ -5,6 +5,7 @@ import com.pulumi.aws.cloudfront.outputs.DistributionOrderedCacheBehaviorForwardedValues; import com.pulumi.aws.cloudfront.outputs.DistributionOrderedCacheBehaviorFunctionAssociation; +import com.pulumi.aws.cloudfront.outputs.DistributionOrderedCacheBehaviorGrpcConfig; import com.pulumi.aws.cloudfront.outputs.DistributionOrderedCacheBehaviorLambdaFunctionAssociation; import com.pulumi.core.annotations.CustomType; import com.pulumi.exceptions.MissingRequiredPropertyException; @@ -39,7 +40,7 @@ public final class DistributionOrderedCacheBehavior { */ private @Nullable Boolean compress; /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer defaultTtl; @@ -58,18 +59,23 @@ public final class DistributionOrderedCacheBehavior { * */ private @Nullable List functionAssociations; + /** + * @return A config block that sets the grpc config. + * + */ + private @Nullable DistributionOrderedCacheBehaviorGrpcConfig grpcConfig; /** * @return A config block that triggers a lambda function with specific actions (maximum 4). * */ private @Nullable List lambdaFunctionAssociations; /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer maxTtl; /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ private @Nullable Integer minTtl; @@ -149,7 +155,7 @@ public Optional compress() { return Optional.ofNullable(this.compress); } /** - * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * @return Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. * */ public Optional defaultTtl() { @@ -176,6 +182,13 @@ public Optional forwardedValues public List functionAssociations() { return this.functionAssociations == null ? List.of() : this.functionAssociations; } + /** + * @return A config block that sets the grpc config. + * + */ + public Optional grpcConfig() { + return Optional.ofNullable(this.grpcConfig); + } /** * @return A config block that triggers a lambda function with specific actions (maximum 4). * @@ -184,14 +197,14 @@ public List lambdaFun return this.lambdaFunctionAssociations == null ? List.of() : this.lambdaFunctionAssociations; } /** - * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * @return Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. * */ public Optional maxTtl() { return Optional.ofNullable(this.maxTtl); } /** - * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * @return Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. * */ public Optional minTtl() { @@ -278,6 +291,7 @@ public static final class Builder { private @Nullable String fieldLevelEncryptionId; private @Nullable DistributionOrderedCacheBehaviorForwardedValues forwardedValues; private @Nullable List functionAssociations; + private @Nullable DistributionOrderedCacheBehaviorGrpcConfig grpcConfig; private @Nullable List lambdaFunctionAssociations; private @Nullable Integer maxTtl; private @Nullable Integer minTtl; @@ -301,6 +315,7 @@ public Builder(DistributionOrderedCacheBehavior defaults) { this.fieldLevelEncryptionId = defaults.fieldLevelEncryptionId; this.forwardedValues = defaults.forwardedValues; this.functionAssociations = defaults.functionAssociations; + this.grpcConfig = defaults.grpcConfig; this.lambdaFunctionAssociations = defaults.lambdaFunctionAssociations; this.maxTtl = defaults.maxTtl; this.minTtl = defaults.minTtl; @@ -377,6 +392,12 @@ public Builder functionAssociations(DistributionOrderedCacheBehaviorFunctionAsso return functionAssociations(List.of(functionAssociations)); } @CustomType.Setter + public Builder grpcConfig(@Nullable DistributionOrderedCacheBehaviorGrpcConfig grpcConfig) { + + this.grpcConfig = grpcConfig; + return this; + } + @CustomType.Setter public Builder lambdaFunctionAssociations(@Nullable List lambdaFunctionAssociations) { this.lambdaFunctionAssociations = lambdaFunctionAssociations; @@ -473,6 +494,7 @@ public DistributionOrderedCacheBehavior build() { _resultValue.fieldLevelEncryptionId = fieldLevelEncryptionId; _resultValue.forwardedValues = forwardedValues; _resultValue.functionAssociations = functionAssociations; + _resultValue.grpcConfig = grpcConfig; _resultValue.lambdaFunctionAssociations = lambdaFunctionAssociations; _resultValue.maxTtl = maxTtl; _resultValue.minTtl = minTtl; diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehaviorGrpcConfig.java b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehaviorGrpcConfig.java new file mode 100644 index 00000000000..4edbed13e5d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudfront/outputs/DistributionOrderedCacheBehaviorGrpcConfig.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudfront.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class DistributionOrderedCacheBehaviorGrpcConfig { + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + private @Nullable Boolean enabled; + + private DistributionOrderedCacheBehaviorGrpcConfig() {} + /** + * @return `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + * + */ + public Optional enabled() { + return Optional.ofNullable(this.enabled); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(DistributionOrderedCacheBehaviorGrpcConfig defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Boolean enabled; + public Builder() {} + public Builder(DistributionOrderedCacheBehaviorGrpcConfig defaults) { + Objects.requireNonNull(defaults); + this.enabled = defaults.enabled; + } + + @CustomType.Setter + public Builder enabled(@Nullable Boolean enabled) { + + this.enabled = enabled; + return this; + } + public DistributionOrderedCacheBehaviorGrpcConfig build() { + final var _resultValue = new DistributionOrderedCacheBehaviorGrpcConfig(); + _resultValue.enabled = enabled; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/CloudwatchFunctions.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/CloudwatchFunctions.java index 733168eeea7..1deedc9ab84 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/CloudwatchFunctions.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/CloudwatchFunctions.java @@ -6,6 +6,8 @@ import com.pulumi.aws.Utilities; import com.pulumi.aws.cloudwatch.inputs.GetEventBusArgs; import com.pulumi.aws.cloudwatch.inputs.GetEventBusPlainArgs; +import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs; +import com.pulumi.aws.cloudwatch.inputs.GetEventBusesPlainArgs; import com.pulumi.aws.cloudwatch.inputs.GetEventConnectionArgs; import com.pulumi.aws.cloudwatch.inputs.GetEventConnectionPlainArgs; import com.pulumi.aws.cloudwatch.inputs.GetEventSourceArgs; @@ -17,6 +19,7 @@ import com.pulumi.aws.cloudwatch.inputs.GetLogGroupsArgs; import com.pulumi.aws.cloudwatch.inputs.GetLogGroupsPlainArgs; import com.pulumi.aws.cloudwatch.outputs.GetEventBusResult; +import com.pulumi.aws.cloudwatch.outputs.GetEventBusesResult; import com.pulumi.aws.cloudwatch.outputs.GetEventConnectionResult; import com.pulumi.aws.cloudwatch.outputs.GetEventSourceResult; import com.pulumi.aws.cloudwatch.outputs.GetLogDataProtectionPolicyDocumentResult; @@ -250,6 +253,314 @@ public static Output getEventBus(GetEventBusArgs args, Invoke public static CompletableFuture getEventBusPlain(GetEventBusPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("aws:cloudwatch/getEventBus:getEventBus", TypeShape.of(GetEventBusResult.class), args, Utilities.withVersion(options)); } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getEventBuses() { + return getEventBuses(GetEventBusesArgs.Empty, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getEventBusesPlain() { + return getEventBusesPlain(GetEventBusesPlainArgs.Empty, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getEventBuses(GetEventBusesArgs args) { + return getEventBuses(args, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getEventBusesPlain(GetEventBusesPlainArgs args) { + return getEventBusesPlain(args, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getEventBuses(GetEventBusesArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("aws:cloudwatch/getEventBuses:getEventBuses", TypeShape.of(GetEventBusesResult.class), args, Utilities.withVersion(options)); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getEventBuses(GetEventBusesArgs args, InvokeOutputOptions options) { + return Deployment.getInstance().invoke("aws:cloudwatch/getEventBuses:getEventBuses", TypeShape.of(GetEventBusesResult.class), args, Utilities.withVersion(options)); + } + /** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.cloudwatch.CloudwatchFunctions;
+     * import com.pulumi.aws.cloudwatch.inputs.GetEventBusesArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = CloudwatchFunctions.getEventBuses(GetEventBusesArgs.builder()
+     *             .namePrefix("test")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getEventBusesPlain(GetEventBusesPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("aws:cloudwatch/getEventBuses:getEventBuses", TypeShape.of(GetEventBusesResult.class), args, Utilities.withVersion(options)); + } /** * Use this data source to retrieve information about an EventBridge connection. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDelivery.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDelivery.java new file mode 100644 index 00000000000..4d64d8f74d9 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDelivery.java @@ -0,0 +1,248 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cloudwatch.LogDeliveryArgs; +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryState; +import com.pulumi.aws.cloudwatch.outputs.LogDeliveryS3DeliveryConfiguration; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `aws.cloudwatch.LogDeliverySource` and an `aws.cloudwatch.LogDeliveryDestination`. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cloudwatch.LogDelivery;
+ * import com.pulumi.aws.cloudwatch.LogDeliveryArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new LogDelivery("example", LogDeliveryArgs.builder()
+ *             .deliverySourceName(exampleAwsCloudwatchLogDeliverySource.name())
+ *             .deliveryDestinationArn(exampleAwsCloudwatchLogDeliveryDestination.arn())
+ *             .fieldDelimiter(",")
+ *             .recordFields(            
+ *                 "event_timestamp",
+ *                 "event")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n + * ``` + * + */ +@ResourceType(type="aws:cloudwatch/logDelivery:LogDelivery") +public class LogDelivery extends com.pulumi.resources.CustomResource { + /** + * The Amazon Resource Name (ARN) of the delivery. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery. + * + */ + public Output arn() { + return this.arn; + } + /** + * The ARN of the delivery destination to use for this delivery. + * + */ + @Export(name="deliveryDestinationArn", refs={String.class}, tree="[0]") + private Output deliveryDestinationArn; + + /** + * @return The ARN of the delivery destination to use for this delivery. + * + */ + public Output deliveryDestinationArn() { + return this.deliveryDestinationArn; + } + /** + * The name of the delivery source to use for this delivery. + * + */ + @Export(name="deliverySourceName", refs={String.class}, tree="[0]") + private Output deliverySourceName; + + /** + * @return The name of the delivery source to use for this delivery. + * + */ + public Output deliverySourceName() { + return this.deliverySourceName; + } + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + @Export(name="fieldDelimiter", refs={String.class}, tree="[0]") + private Output fieldDelimiter; + + /** + * @return The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + public Output> fieldDelimiter() { + return Codegen.optional(this.fieldDelimiter); + } + /** + * The list of record fields to be delivered to the destination, in order. + * + */ + @Export(name="recordFields", refs={List.class,String.class}, tree="[0,1]") + private Output> recordFields; + + /** + * @return The list of record fields to be delivered to the destination, in order. + * + */ + public Output> recordFields() { + return this.recordFields; + } + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + @Export(name="s3DeliveryConfigurations", refs={List.class,LogDeliveryS3DeliveryConfiguration.class}, tree="[0,1]") + private Output> s3DeliveryConfigurations; + + /** + * @return Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + public Output> s3DeliveryConfigurations() { + return this.s3DeliveryConfigurations; + } + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + */ + public Output> tagsAll() { + return this.tagsAll; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LogDelivery(java.lang.String name) { + this(name, LogDeliveryArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LogDelivery(java.lang.String name, LogDeliveryArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public LogDelivery(java.lang.String name, LogDeliveryArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDelivery:LogDelivery", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LogDelivery(java.lang.String name, Output id, @Nullable LogDeliveryState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDelivery:LogDelivery", name, state, makeResourceOptions(options, id), false); + } + + private static LogDeliveryArgs makeArgs(LogDeliveryArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LogDeliveryArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static LogDelivery get(java.lang.String name, Output id, @Nullable LogDeliveryState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LogDelivery(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryArgs.java new file mode 100644 index 00000000000..eef2c306fb4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryArgs.java @@ -0,0 +1,298 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryS3DeliveryConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliveryArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryArgs Empty = new LogDeliveryArgs(); + + /** + * The ARN of the delivery destination to use for this delivery. + * + */ + @Import(name="deliveryDestinationArn", required=true) + private Output deliveryDestinationArn; + + /** + * @return The ARN of the delivery destination to use for this delivery. + * + */ + public Output deliveryDestinationArn() { + return this.deliveryDestinationArn; + } + + /** + * The name of the delivery source to use for this delivery. + * + */ + @Import(name="deliverySourceName", required=true) + private Output deliverySourceName; + + /** + * @return The name of the delivery source to use for this delivery. + * + */ + public Output deliverySourceName() { + return this.deliverySourceName; + } + + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + @Import(name="fieldDelimiter") + private @Nullable Output fieldDelimiter; + + /** + * @return The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + public Optional> fieldDelimiter() { + return Optional.ofNullable(this.fieldDelimiter); + } + + /** + * The list of record fields to be delivered to the destination, in order. + * + */ + @Import(name="recordFields") + private @Nullable Output> recordFields; + + /** + * @return The list of record fields to be delivered to the destination, in order. + * + */ + public Optional>> recordFields() { + return Optional.ofNullable(this.recordFields); + } + + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + @Import(name="s3DeliveryConfigurations") + private @Nullable Output> s3DeliveryConfigurations; + + /** + * @return Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + public Optional>> s3DeliveryConfigurations() { + return Optional.ofNullable(this.s3DeliveryConfigurations); + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + private LogDeliveryArgs() {} + + private LogDeliveryArgs(LogDeliveryArgs $) { + this.deliveryDestinationArn = $.deliveryDestinationArn; + this.deliverySourceName = $.deliverySourceName; + this.fieldDelimiter = $.fieldDelimiter; + this.recordFields = $.recordFields; + this.s3DeliveryConfigurations = $.s3DeliveryConfigurations; + this.tags = $.tags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryArgs $; + + public Builder() { + $ = new LogDeliveryArgs(); + } + + public Builder(LogDeliveryArgs defaults) { + $ = new LogDeliveryArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param deliveryDestinationArn The ARN of the delivery destination to use for this delivery. + * + * @return builder + * + */ + public Builder deliveryDestinationArn(Output deliveryDestinationArn) { + $.deliveryDestinationArn = deliveryDestinationArn; + return this; + } + + /** + * @param deliveryDestinationArn The ARN of the delivery destination to use for this delivery. + * + * @return builder + * + */ + public Builder deliveryDestinationArn(String deliveryDestinationArn) { + return deliveryDestinationArn(Output.of(deliveryDestinationArn)); + } + + /** + * @param deliverySourceName The name of the delivery source to use for this delivery. + * + * @return builder + * + */ + public Builder deliverySourceName(Output deliverySourceName) { + $.deliverySourceName = deliverySourceName; + return this; + } + + /** + * @param deliverySourceName The name of the delivery source to use for this delivery. + * + * @return builder + * + */ + public Builder deliverySourceName(String deliverySourceName) { + return deliverySourceName(Output.of(deliverySourceName)); + } + + /** + * @param fieldDelimiter The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + * @return builder + * + */ + public Builder fieldDelimiter(@Nullable Output fieldDelimiter) { + $.fieldDelimiter = fieldDelimiter; + return this; + } + + /** + * @param fieldDelimiter The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + * @return builder + * + */ + public Builder fieldDelimiter(String fieldDelimiter) { + return fieldDelimiter(Output.of(fieldDelimiter)); + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(@Nullable Output> recordFields) { + $.recordFields = recordFields; + return this; + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(List recordFields) { + return recordFields(Output.of(recordFields)); + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(String... recordFields) { + return recordFields(List.of(recordFields)); + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(@Nullable Output> s3DeliveryConfigurations) { + $.s3DeliveryConfigurations = s3DeliveryConfigurations; + return this; + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(List s3DeliveryConfigurations) { + return s3DeliveryConfigurations(Output.of(s3DeliveryConfigurations)); + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(LogDeliveryS3DeliveryConfigurationArgs... s3DeliveryConfigurations) { + return s3DeliveryConfigurations(List.of(s3DeliveryConfigurations)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public LogDeliveryArgs build() { + if ($.deliveryDestinationArn == null) { + throw new MissingRequiredPropertyException("LogDeliveryArgs", "deliveryDestinationArn"); + } + if ($.deliverySourceName == null) { + throw new MissingRequiredPropertyException("LogDeliveryArgs", "deliverySourceName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestination.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestination.java new file mode 100644 index 00000000000..7726f7c9a69 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestination.java @@ -0,0 +1,232 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cloudwatch.LogDeliveryDestinationArgs; +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationState; +import com.pulumi.aws.cloudwatch.outputs.LogDeliveryDestinationDeliveryDestinationConfiguration; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.Map; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Destination. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cloudwatch.LogDeliveryDestination;
+ * import com.pulumi.aws.cloudwatch.LogDeliveryDestinationArgs;
+ * import com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new LogDeliveryDestination("example", LogDeliveryDestinationArgs.builder()
+ *             .name("example")
+ *             .deliveryDestinationConfiguration(LogDeliveryDestinationDeliveryDestinationConfigurationArgs.builder()
+ *                 .destinationResourceArn(exampleAwsCloudwatchLogGroup.arn())
+ *                 .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example + * ``` + * + */ +@ResourceType(type="aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination") +public class LogDeliveryDestination extends com.pulumi.resources.CustomResource { + /** + * The Amazon Resource Name (ARN) of the delivery destination. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery destination. + * + */ + public Output arn() { + return this.arn; + } + /** + * The AWS resource that will receive the logs. + * + */ + @Export(name="deliveryDestinationConfiguration", refs={LogDeliveryDestinationDeliveryDestinationConfiguration.class}, tree="[0]") + private Output deliveryDestinationConfiguration; + + /** + * @return The AWS resource that will receive the logs. + * + */ + public Output> deliveryDestinationConfiguration() { + return Codegen.optional(this.deliveryDestinationConfiguration); + } + /** + * Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + */ + @Export(name="deliveryDestinationType", refs={String.class}, tree="[0]") + private Output deliveryDestinationType; + + /** + * @return Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + */ + public Output deliveryDestinationType() { + return this.deliveryDestinationType; + } + /** + * The name for this delivery destination. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return The name for this delivery destination. + * + */ + public Output name() { + return this.name; + } + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + @Export(name="outputFormat", refs={String.class}, tree="[0]") + private Output outputFormat; + + /** + * @return The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + public Output> outputFormat() { + return Codegen.optional(this.outputFormat); + } + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + */ + public Output> tagsAll() { + return this.tagsAll; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LogDeliveryDestination(java.lang.String name) { + this(name, LogDeliveryDestinationArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LogDeliveryDestination(java.lang.String name, @Nullable LogDeliveryDestinationArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public LogDeliveryDestination(java.lang.String name, @Nullable LogDeliveryDestinationArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LogDeliveryDestination(java.lang.String name, Output id, @Nullable LogDeliveryDestinationState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination", name, state, makeResourceOptions(options, id), false); + } + + private static LogDeliveryDestinationArgs makeArgs(@Nullable LogDeliveryDestinationArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LogDeliveryDestinationArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static LogDeliveryDestination get(java.lang.String name, Output id, @Nullable LogDeliveryDestinationState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LogDeliveryDestination(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationArgs.java new file mode 100644 index 00000000000..0dc249678b8 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationArgs.java @@ -0,0 +1,196 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliveryDestinationArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryDestinationArgs Empty = new LogDeliveryDestinationArgs(); + + /** + * The AWS resource that will receive the logs. + * + */ + @Import(name="deliveryDestinationConfiguration") + private @Nullable Output deliveryDestinationConfiguration; + + /** + * @return The AWS resource that will receive the logs. + * + */ + public Optional> deliveryDestinationConfiguration() { + return Optional.ofNullable(this.deliveryDestinationConfiguration); + } + + /** + * The name for this delivery destination. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name for this delivery destination. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + @Import(name="outputFormat") + private @Nullable Output outputFormat; + + /** + * @return The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + public Optional> outputFormat() { + return Optional.ofNullable(this.outputFormat); + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + private LogDeliveryDestinationArgs() {} + + private LogDeliveryDestinationArgs(LogDeliveryDestinationArgs $) { + this.deliveryDestinationConfiguration = $.deliveryDestinationConfiguration; + this.name = $.name; + this.outputFormat = $.outputFormat; + this.tags = $.tags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryDestinationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryDestinationArgs $; + + public Builder() { + $ = new LogDeliveryDestinationArgs(); + } + + public Builder(LogDeliveryDestinationArgs defaults) { + $ = new LogDeliveryDestinationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param deliveryDestinationConfiguration The AWS resource that will receive the logs. + * + * @return builder + * + */ + public Builder deliveryDestinationConfiguration(@Nullable Output deliveryDestinationConfiguration) { + $.deliveryDestinationConfiguration = deliveryDestinationConfiguration; + return this; + } + + /** + * @param deliveryDestinationConfiguration The AWS resource that will receive the logs. + * + * @return builder + * + */ + public Builder deliveryDestinationConfiguration(LogDeliveryDestinationDeliveryDestinationConfigurationArgs deliveryDestinationConfiguration) { + return deliveryDestinationConfiguration(Output.of(deliveryDestinationConfiguration)); + } + + /** + * @param name The name for this delivery destination. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name for this delivery destination. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param outputFormat The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + * @return builder + * + */ + public Builder outputFormat(@Nullable Output outputFormat) { + $.outputFormat = outputFormat; + return this; + } + + /** + * @param outputFormat The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + * @return builder + * + */ + public Builder outputFormat(String outputFormat) { + return outputFormat(Output.of(outputFormat)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public LogDeliveryDestinationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicy.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicy.java new file mode 100644 index 00000000000..e27d3f59854 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicy.java @@ -0,0 +1,152 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cloudwatch.LogDeliveryDestinationPolicyArgs; +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationPolicyState; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cloudwatch.LogDeliveryDestinationPolicy;
+ * import com.pulumi.aws.cloudwatch.LogDeliveryDestinationPolicyArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new LogDeliveryDestinationPolicy("example", LogDeliveryDestinationPolicyArgs.builder()
+ *             .deliveryDestinationName(exampleAwsCloudwatchLogDeliveryDestination.name())
+ *             .deliveryDestinationPolicy(exampleAwsIamPolicyDocument.json())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example + * ``` + * + */ +@ResourceType(type="aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy") +public class LogDeliveryDestinationPolicy extends com.pulumi.resources.CustomResource { + /** + * The name of the delivery destination to assign this policy to. + * + */ + @Export(name="deliveryDestinationName", refs={String.class}, tree="[0]") + private Output deliveryDestinationName; + + /** + * @return The name of the delivery destination to assign this policy to. + * + */ + public Output deliveryDestinationName() { + return this.deliveryDestinationName; + } + /** + * The contents of the policy. + * + */ + @Export(name="deliveryDestinationPolicy", refs={String.class}, tree="[0]") + private Output deliveryDestinationPolicy; + + /** + * @return The contents of the policy. + * + */ + public Output deliveryDestinationPolicy() { + return this.deliveryDestinationPolicy; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LogDeliveryDestinationPolicy(java.lang.String name) { + this(name, LogDeliveryDestinationPolicyArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LogDeliveryDestinationPolicy(java.lang.String name, LogDeliveryDestinationPolicyArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public LogDeliveryDestinationPolicy(java.lang.String name, LogDeliveryDestinationPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LogDeliveryDestinationPolicy(java.lang.String name, Output id, @Nullable LogDeliveryDestinationPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy", name, state, makeResourceOptions(options, id), false); + } + + private static LogDeliveryDestinationPolicyArgs makeArgs(LogDeliveryDestinationPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LogDeliveryDestinationPolicyArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static LogDeliveryDestinationPolicy get(java.lang.String name, Output id, @Nullable LogDeliveryDestinationPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LogDeliveryDestinationPolicy(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicyArgs.java new file mode 100644 index 00000000000..d0241995c99 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliveryDestinationPolicyArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class LogDeliveryDestinationPolicyArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryDestinationPolicyArgs Empty = new LogDeliveryDestinationPolicyArgs(); + + /** + * The name of the delivery destination to assign this policy to. + * + */ + @Import(name="deliveryDestinationName", required=true) + private Output deliveryDestinationName; + + /** + * @return The name of the delivery destination to assign this policy to. + * + */ + public Output deliveryDestinationName() { + return this.deliveryDestinationName; + } + + /** + * The contents of the policy. + * + */ + @Import(name="deliveryDestinationPolicy", required=true) + private Output deliveryDestinationPolicy; + + /** + * @return The contents of the policy. + * + */ + public Output deliveryDestinationPolicy() { + return this.deliveryDestinationPolicy; + } + + private LogDeliveryDestinationPolicyArgs() {} + + private LogDeliveryDestinationPolicyArgs(LogDeliveryDestinationPolicyArgs $) { + this.deliveryDestinationName = $.deliveryDestinationName; + this.deliveryDestinationPolicy = $.deliveryDestinationPolicy; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryDestinationPolicyArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryDestinationPolicyArgs $; + + public Builder() { + $ = new LogDeliveryDestinationPolicyArgs(); + } + + public Builder(LogDeliveryDestinationPolicyArgs defaults) { + $ = new LogDeliveryDestinationPolicyArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param deliveryDestinationName The name of the delivery destination to assign this policy to. + * + * @return builder + * + */ + public Builder deliveryDestinationName(Output deliveryDestinationName) { + $.deliveryDestinationName = deliveryDestinationName; + return this; + } + + /** + * @param deliveryDestinationName The name of the delivery destination to assign this policy to. + * + * @return builder + * + */ + public Builder deliveryDestinationName(String deliveryDestinationName) { + return deliveryDestinationName(Output.of(deliveryDestinationName)); + } + + /** + * @param deliveryDestinationPolicy The contents of the policy. + * + * @return builder + * + */ + public Builder deliveryDestinationPolicy(Output deliveryDestinationPolicy) { + $.deliveryDestinationPolicy = deliveryDestinationPolicy; + return this; + } + + /** + * @param deliveryDestinationPolicy The contents of the policy. + * + * @return builder + * + */ + public Builder deliveryDestinationPolicy(String deliveryDestinationPolicy) { + return deliveryDestinationPolicy(Output.of(deliveryDestinationPolicy)); + } + + public LogDeliveryDestinationPolicyArgs build() { + if ($.deliveryDestinationName == null) { + throw new MissingRequiredPropertyException("LogDeliveryDestinationPolicyArgs", "deliveryDestinationName"); + } + if ($.deliveryDestinationPolicy == null) { + throw new MissingRequiredPropertyException("LogDeliveryDestinationPolicyArgs", "deliveryDestinationPolicy"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySource.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySource.java new file mode 100644 index 00000000000..b5cbc0566a6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySource.java @@ -0,0 +1,229 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cloudwatch.LogDeliverySourceArgs; +import com.pulumi.aws.cloudwatch.inputs.LogDeliverySourceState; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.Map; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Source. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cloudwatch.LogDeliverySource;
+ * import com.pulumi.aws.cloudwatch.LogDeliverySourceArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new LogDeliverySource("example", LogDeliverySourceArgs.builder()
+ *             .name("example")
+ *             .logType("APPLICATION_LOGS")
+ *             .resourceArn(exampleAwsBedrockagentKnowledgeBase.arn())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example + * ``` + * + */ +@ResourceType(type="aws:cloudwatch/logDeliverySource:LogDeliverySource") +public class LogDeliverySource extends com.pulumi.resources.CustomResource { + /** + * The Amazon Resource Name (ARN) of the delivery source. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery source. + * + */ + public Output arn() { + return this.arn; + } + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + @Export(name="logType", refs={String.class}, tree="[0]") + private Output logType; + + /** + * @return The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + public Output logType() { + return this.logType; + } + /** + * The name for this delivery source. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return The name for this delivery source. + * + */ + public Output name() { + return this.name; + } + /** + * The ARN of the AWS resource that is generating and sending logs. + * + */ + @Export(name="resourceArn", refs={String.class}, tree="[0]") + private Output resourceArn; + + /** + * @return The ARN of the AWS resource that is generating and sending logs. + * + */ + public Output resourceArn() { + return this.resourceArn; + } + /** + * The AWS service that is sending logs. + * + */ + @Export(name="service", refs={String.class}, tree="[0]") + private Output service; + + /** + * @return The AWS service that is sending logs. + * + */ + public Output service() { + return this.service; + } + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + */ + public Output> tagsAll() { + return this.tagsAll; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LogDeliverySource(java.lang.String name) { + this(name, LogDeliverySourceArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LogDeliverySource(java.lang.String name, LogDeliverySourceArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public LogDeliverySource(java.lang.String name, LogDeliverySourceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliverySource:LogDeliverySource", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LogDeliverySource(java.lang.String name, Output id, @Nullable LogDeliverySourceState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logDeliverySource:LogDeliverySource", name, state, makeResourceOptions(options, id), false); + } + + private static LogDeliverySourceArgs makeArgs(LogDeliverySourceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LogDeliverySourceArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static LogDeliverySource get(java.lang.String name, Output id, @Nullable LogDeliverySourceState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LogDeliverySource(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySourceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySourceArgs.java new file mode 100644 index 00000000000..8388758bbd4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogDeliverySourceArgs.java @@ -0,0 +1,202 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliverySourceArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliverySourceArgs Empty = new LogDeliverySourceArgs(); + + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + @Import(name="logType", required=true) + private Output logType; + + /** + * @return The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + public Output logType() { + return this.logType; + } + + /** + * The name for this delivery source. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name for this delivery source. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The ARN of the AWS resource that is generating and sending logs. + * + */ + @Import(name="resourceArn", required=true) + private Output resourceArn; + + /** + * @return The ARN of the AWS resource that is generating and sending logs. + * + */ + public Output resourceArn() { + return this.resourceArn; + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + private LogDeliverySourceArgs() {} + + private LogDeliverySourceArgs(LogDeliverySourceArgs $) { + this.logType = $.logType; + this.name = $.name; + this.resourceArn = $.resourceArn; + this.tags = $.tags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliverySourceArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliverySourceArgs $; + + public Builder() { + $ = new LogDeliverySourceArgs(); + } + + public Builder(LogDeliverySourceArgs defaults) { + $ = new LogDeliverySourceArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param logType The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + * @return builder + * + */ + public Builder logType(Output logType) { + $.logType = logType; + return this; + } + + /** + * @param logType The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + * @return builder + * + */ + public Builder logType(String logType) { + return logType(Output.of(logType)); + } + + /** + * @param name The name for this delivery source. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name for this delivery source. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param resourceArn The ARN of the AWS resource that is generating and sending logs. + * + * @return builder + * + */ + public Builder resourceArn(Output resourceArn) { + $.resourceArn = resourceArn; + return this; + } + + /** + * @param resourceArn The ARN of the AWS resource that is generating and sending logs. + * + * @return builder + * + */ + public Builder resourceArn(String resourceArn) { + return resourceArn(Output.of(resourceArn)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public LogDeliverySourceArgs build() { + if ($.logType == null) { + throw new MissingRequiredPropertyException("LogDeliverySourceArgs", "logType"); + } + if ($.resourceArn == null) { + throw new MissingRequiredPropertyException("LogDeliverySourceArgs", "resourceArn"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicy.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicy.java new file mode 100644 index 00000000000..f2f8e40cf92 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicy.java @@ -0,0 +1,162 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.cloudwatch.LogIndexPolicyArgs; +import com.pulumi.aws.cloudwatch.inputs.LogIndexPolicyState; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS CloudWatch Logs Index Policy. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.cloudwatch.LogGroup;
+ * import com.pulumi.aws.cloudwatch.LogGroupArgs;
+ * import com.pulumi.aws.cloudwatch.LogIndexPolicy;
+ * import com.pulumi.aws.cloudwatch.LogIndexPolicyArgs;
+ * import static com.pulumi.codegen.internal.Serialization.*;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new LogGroup("example", LogGroupArgs.builder()
+ *             .name("example")
+ *             .build());
+ * 
+ *         var exampleLogIndexPolicy = new LogIndexPolicy("exampleLogIndexPolicy", LogIndexPolicyArgs.builder()
+ *             .logGroupName(example.name())
+ *             .policyDocument(serializeJson(
+ *                 jsonObject(
+ *                     jsonProperty("Fields", jsonArray("eventName"))
+ *                 )))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name + * ``` + * + */ +@ResourceType(type="aws:cloudwatch/logIndexPolicy:LogIndexPolicy") +public class LogIndexPolicy extends com.pulumi.resources.CustomResource { + /** + * Log group name to set the policy for. + * + */ + @Export(name="logGroupName", refs={String.class}, tree="[0]") + private Output logGroupName; + + /** + * @return Log group name to set the policy for. + * + */ + public Output logGroupName() { + return this.logGroupName; + } + /** + * JSON policy document. This is a JSON formatted string. + * + */ + @Export(name="policyDocument", refs={String.class}, tree="[0]") + private Output policyDocument; + + /** + * @return JSON policy document. This is a JSON formatted string. + * + */ + public Output policyDocument() { + return this.policyDocument; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public LogIndexPolicy(java.lang.String name) { + this(name, LogIndexPolicyArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public LogIndexPolicy(java.lang.String name, LogIndexPolicyArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public LogIndexPolicy(java.lang.String name, LogIndexPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private LogIndexPolicy(java.lang.String name, Output id, @Nullable LogIndexPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:cloudwatch/logIndexPolicy:LogIndexPolicy", name, state, makeResourceOptions(options, id), false); + } + + private static LogIndexPolicyArgs makeArgs(LogIndexPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? LogIndexPolicyArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static LogIndexPolicy get(java.lang.String name, Output id, @Nullable LogIndexPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new LogIndexPolicy(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicyArgs.java new file mode 100644 index 00000000000..5547262c106 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/LogIndexPolicyArgs.java @@ -0,0 +1,125 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class LogIndexPolicyArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogIndexPolicyArgs Empty = new LogIndexPolicyArgs(); + + /** + * Log group name to set the policy for. + * + */ + @Import(name="logGroupName", required=true) + private Output logGroupName; + + /** + * @return Log group name to set the policy for. + * + */ + public Output logGroupName() { + return this.logGroupName; + } + + /** + * JSON policy document. This is a JSON formatted string. + * + */ + @Import(name="policyDocument", required=true) + private Output policyDocument; + + /** + * @return JSON policy document. This is a JSON formatted string. + * + */ + public Output policyDocument() { + return this.policyDocument; + } + + private LogIndexPolicyArgs() {} + + private LogIndexPolicyArgs(LogIndexPolicyArgs $) { + this.logGroupName = $.logGroupName; + this.policyDocument = $.policyDocument; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogIndexPolicyArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogIndexPolicyArgs $; + + public Builder() { + $ = new LogIndexPolicyArgs(); + } + + public Builder(LogIndexPolicyArgs defaults) { + $ = new LogIndexPolicyArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param logGroupName Log group name to set the policy for. + * + * @return builder + * + */ + public Builder logGroupName(Output logGroupName) { + $.logGroupName = logGroupName; + return this; + } + + /** + * @param logGroupName Log group name to set the policy for. + * + * @return builder + * + */ + public Builder logGroupName(String logGroupName) { + return logGroupName(Output.of(logGroupName)); + } + + /** + * @param policyDocument JSON policy document. This is a JSON formatted string. + * + * @return builder + * + */ + public Builder policyDocument(Output policyDocument) { + $.policyDocument = policyDocument; + return this; + } + + /** + * @param policyDocument JSON policy document. This is a JSON formatted string. + * + * @return builder + * + */ + public Builder policyDocument(String policyDocument) { + return policyDocument(Output.of(policyDocument)); + } + + public LogIndexPolicyArgs build() { + if ($.logGroupName == null) { + throw new MissingRequiredPropertyException("LogIndexPolicyArgs", "logGroupName"); + } + if ($.policyDocument == null) { + throw new MissingRequiredPropertyException("LogIndexPolicyArgs", "policyDocument"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesArgs.java new file mode 100644 index 00000000000..f021a121e38 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetEventBusesArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetEventBusesArgs Empty = new GetEventBusesArgs(); + + /** + * Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + */ + @Import(name="namePrefix") + private @Nullable Output namePrefix; + + /** + * @return Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + */ + public Optional> namePrefix() { + return Optional.ofNullable(this.namePrefix); + } + + private GetEventBusesArgs() {} + + private GetEventBusesArgs(GetEventBusesArgs $) { + this.namePrefix = $.namePrefix; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetEventBusesArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetEventBusesArgs $; + + public Builder() { + $ = new GetEventBusesArgs(); + } + + public Builder(GetEventBusesArgs defaults) { + $ = new GetEventBusesArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param namePrefix Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + * @return builder + * + */ + public Builder namePrefix(@Nullable Output namePrefix) { + $.namePrefix = namePrefix; + return this; + } + + /** + * @param namePrefix Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + * @return builder + * + */ + public Builder namePrefix(String namePrefix) { + return namePrefix(Output.of(namePrefix)); + } + + public GetEventBusesArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesPlainArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesPlainArgs.java new file mode 100644 index 00000000000..6d18bdea203 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/GetEventBusesPlainArgs.java @@ -0,0 +1,72 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetEventBusesPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetEventBusesPlainArgs Empty = new GetEventBusesPlainArgs(); + + /** + * Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + */ + @Import(name="namePrefix") + private @Nullable String namePrefix; + + /** + * @return Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + */ + public Optional namePrefix() { + return Optional.ofNullable(this.namePrefix); + } + + private GetEventBusesPlainArgs() {} + + private GetEventBusesPlainArgs(GetEventBusesPlainArgs $) { + this.namePrefix = $.namePrefix; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetEventBusesPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetEventBusesPlainArgs $; + + public Builder() { + $ = new GetEventBusesPlainArgs(); + } + + public Builder(GetEventBusesPlainArgs defaults) { + $ = new GetEventBusesPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param namePrefix Specifying this limits the results to only those event buses with names that start with the specified prefix. + * + * @return builder + * + */ + public Builder namePrefix(@Nullable String namePrefix) { + $.namePrefix = namePrefix; + return this; + } + + public GetEventBusesPlainArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.java new file mode 100644 index 00000000000..5a96b3b96d8 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationDeliveryDestinationConfigurationArgs.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + + +public final class LogDeliveryDestinationDeliveryDestinationConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryDestinationDeliveryDestinationConfigurationArgs Empty = new LogDeliveryDestinationDeliveryDestinationConfigurationArgs(); + + /** + * The ARN of the AWS destination that this delivery destination represents. + * + */ + @Import(name="destinationResourceArn", required=true) + private Output destinationResourceArn; + + /** + * @return The ARN of the AWS destination that this delivery destination represents. + * + */ + public Output destinationResourceArn() { + return this.destinationResourceArn; + } + + private LogDeliveryDestinationDeliveryDestinationConfigurationArgs() {} + + private LogDeliveryDestinationDeliveryDestinationConfigurationArgs(LogDeliveryDestinationDeliveryDestinationConfigurationArgs $) { + this.destinationResourceArn = $.destinationResourceArn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryDestinationDeliveryDestinationConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryDestinationDeliveryDestinationConfigurationArgs $; + + public Builder() { + $ = new LogDeliveryDestinationDeliveryDestinationConfigurationArgs(); + } + + public Builder(LogDeliveryDestinationDeliveryDestinationConfigurationArgs defaults) { + $ = new LogDeliveryDestinationDeliveryDestinationConfigurationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param destinationResourceArn The ARN of the AWS destination that this delivery destination represents. + * + * @return builder + * + */ + public Builder destinationResourceArn(Output destinationResourceArn) { + $.destinationResourceArn = destinationResourceArn; + return this; + } + + /** + * @param destinationResourceArn The ARN of the AWS destination that this delivery destination represents. + * + * @return builder + * + */ + public Builder destinationResourceArn(String destinationResourceArn) { + return destinationResourceArn(Output.of(destinationResourceArn)); + } + + public LogDeliveryDestinationDeliveryDestinationConfigurationArgs build() { + if ($.destinationResourceArn == null) { + throw new MissingRequiredPropertyException("LogDeliveryDestinationDeliveryDestinationConfigurationArgs", "destinationResourceArn"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationPolicyState.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationPolicyState.java new file mode 100644 index 00000000000..9e2871b6919 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationPolicyState.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliveryDestinationPolicyState extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryDestinationPolicyState Empty = new LogDeliveryDestinationPolicyState(); + + /** + * The name of the delivery destination to assign this policy to. + * + */ + @Import(name="deliveryDestinationName") + private @Nullable Output deliveryDestinationName; + + /** + * @return The name of the delivery destination to assign this policy to. + * + */ + public Optional> deliveryDestinationName() { + return Optional.ofNullable(this.deliveryDestinationName); + } + + /** + * The contents of the policy. + * + */ + @Import(name="deliveryDestinationPolicy") + private @Nullable Output deliveryDestinationPolicy; + + /** + * @return The contents of the policy. + * + */ + public Optional> deliveryDestinationPolicy() { + return Optional.ofNullable(this.deliveryDestinationPolicy); + } + + private LogDeliveryDestinationPolicyState() {} + + private LogDeliveryDestinationPolicyState(LogDeliveryDestinationPolicyState $) { + this.deliveryDestinationName = $.deliveryDestinationName; + this.deliveryDestinationPolicy = $.deliveryDestinationPolicy; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryDestinationPolicyState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryDestinationPolicyState $; + + public Builder() { + $ = new LogDeliveryDestinationPolicyState(); + } + + public Builder(LogDeliveryDestinationPolicyState defaults) { + $ = new LogDeliveryDestinationPolicyState(Objects.requireNonNull(defaults)); + } + + /** + * @param deliveryDestinationName The name of the delivery destination to assign this policy to. + * + * @return builder + * + */ + public Builder deliveryDestinationName(@Nullable Output deliveryDestinationName) { + $.deliveryDestinationName = deliveryDestinationName; + return this; + } + + /** + * @param deliveryDestinationName The name of the delivery destination to assign this policy to. + * + * @return builder + * + */ + public Builder deliveryDestinationName(String deliveryDestinationName) { + return deliveryDestinationName(Output.of(deliveryDestinationName)); + } + + /** + * @param deliveryDestinationPolicy The contents of the policy. + * + * @return builder + * + */ + public Builder deliveryDestinationPolicy(@Nullable Output deliveryDestinationPolicy) { + $.deliveryDestinationPolicy = deliveryDestinationPolicy; + return this; + } + + /** + * @param deliveryDestinationPolicy The contents of the policy. + * + * @return builder + * + */ + public Builder deliveryDestinationPolicy(String deliveryDestinationPolicy) { + return deliveryDestinationPolicy(Output.of(deliveryDestinationPolicy)); + } + + public LogDeliveryDestinationPolicyState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationState.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationState.java new file mode 100644 index 00000000000..c39ca81282d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryDestinationState.java @@ -0,0 +1,323 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryDestinationDeliveryDestinationConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliveryDestinationState extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryDestinationState Empty = new LogDeliveryDestinationState(); + + /** + * The Amazon Resource Name (ARN) of the delivery destination. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery destination. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * The AWS resource that will receive the logs. + * + */ + @Import(name="deliveryDestinationConfiguration") + private @Nullable Output deliveryDestinationConfiguration; + + /** + * @return The AWS resource that will receive the logs. + * + */ + public Optional> deliveryDestinationConfiguration() { + return Optional.ofNullable(this.deliveryDestinationConfiguration); + } + + /** + * Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + */ + @Import(name="deliveryDestinationType") + private @Nullable Output deliveryDestinationType; + + /** + * @return Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + */ + public Optional> deliveryDestinationType() { + return Optional.ofNullable(this.deliveryDestinationType); + } + + /** + * The name for this delivery destination. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name for this delivery destination. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + @Import(name="outputFormat") + private @Nullable Output outputFormat; + + /** + * @return The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + */ + public Optional> outputFormat() { + return Optional.ofNullable(this.outputFormat); + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Import(name="tagsAll") + private @Nullable Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Optional>> tagsAll() { + return Optional.ofNullable(this.tagsAll); + } + + private LogDeliveryDestinationState() {} + + private LogDeliveryDestinationState(LogDeliveryDestinationState $) { + this.arn = $.arn; + this.deliveryDestinationConfiguration = $.deliveryDestinationConfiguration; + this.deliveryDestinationType = $.deliveryDestinationType; + this.name = $.name; + this.outputFormat = $.outputFormat; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryDestinationState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryDestinationState $; + + public Builder() { + $ = new LogDeliveryDestinationState(); + } + + public Builder(LogDeliveryDestinationState defaults) { + $ = new LogDeliveryDestinationState(Objects.requireNonNull(defaults)); + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery destination. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery destination. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param deliveryDestinationConfiguration The AWS resource that will receive the logs. + * + * @return builder + * + */ + public Builder deliveryDestinationConfiguration(@Nullable Output deliveryDestinationConfiguration) { + $.deliveryDestinationConfiguration = deliveryDestinationConfiguration; + return this; + } + + /** + * @param deliveryDestinationConfiguration The AWS resource that will receive the logs. + * + * @return builder + * + */ + public Builder deliveryDestinationConfiguration(LogDeliveryDestinationDeliveryDestinationConfigurationArgs deliveryDestinationConfiguration) { + return deliveryDestinationConfiguration(Output.of(deliveryDestinationConfiguration)); + } + + /** + * @param deliveryDestinationType Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + * @return builder + * + */ + public Builder deliveryDestinationType(@Nullable Output deliveryDestinationType) { + $.deliveryDestinationType = deliveryDestinationType; + return this; + } + + /** + * @param deliveryDestinationType Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + * + * @return builder + * + */ + public Builder deliveryDestinationType(String deliveryDestinationType) { + return deliveryDestinationType(Output.of(deliveryDestinationType)); + } + + /** + * @param name The name for this delivery destination. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name for this delivery destination. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param outputFormat The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + * @return builder + * + */ + public Builder outputFormat(@Nullable Output outputFormat) { + $.outputFormat = outputFormat; + return this; + } + + /** + * @param outputFormat The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + * + * @return builder + * + */ + public Builder outputFormat(String outputFormat) { + return outputFormat(Output.of(outputFormat)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(@Nullable Output> tagsAll) { + $.tagsAll = tagsAll; + return this; + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(Map tagsAll) { + return tagsAll(Output.of(tagsAll)); + } + + public LogDeliveryDestinationState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryS3DeliveryConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryS3DeliveryConfigurationArgs.java new file mode 100644 index 00000000000..b848bc3b78a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryS3DeliveryConfigurationArgs.java @@ -0,0 +1,126 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; + + +public final class LogDeliveryS3DeliveryConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryS3DeliveryConfigurationArgs Empty = new LogDeliveryS3DeliveryConfigurationArgs(); + + /** + * This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + */ + @Import(name="enableHiveCompatiblePath", required=true) + private Output enableHiveCompatiblePath; + + /** + * @return This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + */ + public Output enableHiveCompatiblePath() { + return this.enableHiveCompatiblePath; + } + + /** + * This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + */ + @Import(name="suffixPath", required=true) + private Output suffixPath; + + /** + * @return This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + */ + public Output suffixPath() { + return this.suffixPath; + } + + private LogDeliveryS3DeliveryConfigurationArgs() {} + + private LogDeliveryS3DeliveryConfigurationArgs(LogDeliveryS3DeliveryConfigurationArgs $) { + this.enableHiveCompatiblePath = $.enableHiveCompatiblePath; + this.suffixPath = $.suffixPath; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryS3DeliveryConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryS3DeliveryConfigurationArgs $; + + public Builder() { + $ = new LogDeliveryS3DeliveryConfigurationArgs(); + } + + public Builder(LogDeliveryS3DeliveryConfigurationArgs defaults) { + $ = new LogDeliveryS3DeliveryConfigurationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param enableHiveCompatiblePath This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + * @return builder + * + */ + public Builder enableHiveCompatiblePath(Output enableHiveCompatiblePath) { + $.enableHiveCompatiblePath = enableHiveCompatiblePath; + return this; + } + + /** + * @param enableHiveCompatiblePath This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + * @return builder + * + */ + public Builder enableHiveCompatiblePath(Boolean enableHiveCompatiblePath) { + return enableHiveCompatiblePath(Output.of(enableHiveCompatiblePath)); + } + + /** + * @param suffixPath This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + * @return builder + * + */ + public Builder suffixPath(Output suffixPath) { + $.suffixPath = suffixPath; + return this; + } + + /** + * @param suffixPath This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + * @return builder + * + */ + public Builder suffixPath(String suffixPath) { + return suffixPath(Output.of(suffixPath)); + } + + public LogDeliveryS3DeliveryConfigurationArgs build() { + if ($.enableHiveCompatiblePath == null) { + throw new MissingRequiredPropertyException("LogDeliveryS3DeliveryConfigurationArgs", "enableHiveCompatiblePath"); + } + if ($.suffixPath == null) { + throw new MissingRequiredPropertyException("LogDeliveryS3DeliveryConfigurationArgs", "suffixPath"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliverySourceState.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliverySourceState.java new file mode 100644 index 00000000000..a4e1c692c0b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliverySourceState.java @@ -0,0 +1,322 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliverySourceState extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliverySourceState Empty = new LogDeliverySourceState(); + + /** + * The Amazon Resource Name (ARN) of the delivery source. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery source. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + @Import(name="logType") + private @Nullable Output logType; + + /** + * @return The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + */ + public Optional> logType() { + return Optional.ofNullable(this.logType); + } + + /** + * The name for this delivery source. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return The name for this delivery source. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * The ARN of the AWS resource that is generating and sending logs. + * + */ + @Import(name="resourceArn") + private @Nullable Output resourceArn; + + /** + * @return The ARN of the AWS resource that is generating and sending logs. + * + */ + public Optional> resourceArn() { + return Optional.ofNullable(this.resourceArn); + } + + /** + * The AWS service that is sending logs. + * + */ + @Import(name="service") + private @Nullable Output service; + + /** + * @return The AWS service that is sending logs. + * + */ + public Optional> service() { + return Optional.ofNullable(this.service); + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Import(name="tagsAll") + private @Nullable Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Optional>> tagsAll() { + return Optional.ofNullable(this.tagsAll); + } + + private LogDeliverySourceState() {} + + private LogDeliverySourceState(LogDeliverySourceState $) { + this.arn = $.arn; + this.logType = $.logType; + this.name = $.name; + this.resourceArn = $.resourceArn; + this.service = $.service; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliverySourceState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliverySourceState $; + + public Builder() { + $ = new LogDeliverySourceState(); + } + + public Builder(LogDeliverySourceState defaults) { + $ = new LogDeliverySourceState(Objects.requireNonNull(defaults)); + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery source. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery source. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param logType The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + * @return builder + * + */ + public Builder logType(@Nullable Output logType) { + $.logType = logType; + return this; + } + + /** + * @param logType The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + * + * @return builder + * + */ + public Builder logType(String logType) { + return logType(Output.of(logType)); + } + + /** + * @param name The name for this delivery source. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name The name for this delivery source. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param resourceArn The ARN of the AWS resource that is generating and sending logs. + * + * @return builder + * + */ + public Builder resourceArn(@Nullable Output resourceArn) { + $.resourceArn = resourceArn; + return this; + } + + /** + * @param resourceArn The ARN of the AWS resource that is generating and sending logs. + * + * @return builder + * + */ + public Builder resourceArn(String resourceArn) { + return resourceArn(Output.of(resourceArn)); + } + + /** + * @param service The AWS service that is sending logs. + * + * @return builder + * + */ + public Builder service(@Nullable Output service) { + $.service = service; + return this; + } + + /** + * @param service The AWS service that is sending logs. + * + * @return builder + * + */ + public Builder service(String service) { + return service(Output.of(service)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(@Nullable Output> tagsAll) { + $.tagsAll = tagsAll; + return this; + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(Map tagsAll) { + return tagsAll(Output.of(tagsAll)); + } + + public LogDeliverySourceState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryState.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryState.java new file mode 100644 index 00000000000..d2e4832425b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogDeliveryState.java @@ -0,0 +1,381 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.aws.cloudwatch.inputs.LogDeliveryS3DeliveryConfigurationArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogDeliveryState extends com.pulumi.resources.ResourceArgs { + + public static final LogDeliveryState Empty = new LogDeliveryState(); + + /** + * The Amazon Resource Name (ARN) of the delivery. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return The Amazon Resource Name (ARN) of the delivery. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * The ARN of the delivery destination to use for this delivery. + * + */ + @Import(name="deliveryDestinationArn") + private @Nullable Output deliveryDestinationArn; + + /** + * @return The ARN of the delivery destination to use for this delivery. + * + */ + public Optional> deliveryDestinationArn() { + return Optional.ofNullable(this.deliveryDestinationArn); + } + + /** + * The name of the delivery source to use for this delivery. + * + */ + @Import(name="deliverySourceName") + private @Nullable Output deliverySourceName; + + /** + * @return The name of the delivery source to use for this delivery. + * + */ + public Optional> deliverySourceName() { + return Optional.ofNullable(this.deliverySourceName); + } + + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + @Import(name="fieldDelimiter") + private @Nullable Output fieldDelimiter; + + /** + * @return The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + */ + public Optional> fieldDelimiter() { + return Optional.ofNullable(this.fieldDelimiter); + } + + /** + * The list of record fields to be delivered to the destination, in order. + * + */ + @Import(name="recordFields") + private @Nullable Output> recordFields; + + /** + * @return The list of record fields to be delivered to the destination, in order. + * + */ + public Optional>> recordFields() { + return Optional.ofNullable(this.recordFields); + } + + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + @Import(name="s3DeliveryConfigurations") + private @Nullable Output> s3DeliveryConfigurations; + + /** + * @return Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + */ + public Optional>> s3DeliveryConfigurations() { + return Optional.ofNullable(this.s3DeliveryConfigurations); + } + + /** + * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Import(name="tagsAll") + private @Nullable Output> tagsAll; + + /** + * @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Optional>> tagsAll() { + return Optional.ofNullable(this.tagsAll); + } + + private LogDeliveryState() {} + + private LogDeliveryState(LogDeliveryState $) { + this.arn = $.arn; + this.deliveryDestinationArn = $.deliveryDestinationArn; + this.deliverySourceName = $.deliverySourceName; + this.fieldDelimiter = $.fieldDelimiter; + this.recordFields = $.recordFields; + this.s3DeliveryConfigurations = $.s3DeliveryConfigurations; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogDeliveryState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogDeliveryState $; + + public Builder() { + $ = new LogDeliveryState(); + } + + public Builder(LogDeliveryState defaults) { + $ = new LogDeliveryState(Objects.requireNonNull(defaults)); + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn The Amazon Resource Name (ARN) of the delivery. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param deliveryDestinationArn The ARN of the delivery destination to use for this delivery. + * + * @return builder + * + */ + public Builder deliveryDestinationArn(@Nullable Output deliveryDestinationArn) { + $.deliveryDestinationArn = deliveryDestinationArn; + return this; + } + + /** + * @param deliveryDestinationArn The ARN of the delivery destination to use for this delivery. + * + * @return builder + * + */ + public Builder deliveryDestinationArn(String deliveryDestinationArn) { + return deliveryDestinationArn(Output.of(deliveryDestinationArn)); + } + + /** + * @param deliverySourceName The name of the delivery source to use for this delivery. + * + * @return builder + * + */ + public Builder deliverySourceName(@Nullable Output deliverySourceName) { + $.deliverySourceName = deliverySourceName; + return this; + } + + /** + * @param deliverySourceName The name of the delivery source to use for this delivery. + * + * @return builder + * + */ + public Builder deliverySourceName(String deliverySourceName) { + return deliverySourceName(Output.of(deliverySourceName)); + } + + /** + * @param fieldDelimiter The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + * @return builder + * + */ + public Builder fieldDelimiter(@Nullable Output fieldDelimiter) { + $.fieldDelimiter = fieldDelimiter; + return this; + } + + /** + * @param fieldDelimiter The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + * + * @return builder + * + */ + public Builder fieldDelimiter(String fieldDelimiter) { + return fieldDelimiter(Output.of(fieldDelimiter)); + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(@Nullable Output> recordFields) { + $.recordFields = recordFields; + return this; + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(List recordFields) { + return recordFields(Output.of(recordFields)); + } + + /** + * @param recordFields The list of record fields to be delivered to the destination, in order. + * + * @return builder + * + */ + public Builder recordFields(String... recordFields) { + return recordFields(List.of(recordFields)); + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(@Nullable Output> s3DeliveryConfigurations) { + $.s3DeliveryConfigurations = s3DeliveryConfigurations; + return this; + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(List s3DeliveryConfigurations) { + return s3DeliveryConfigurations(Output.of(s3DeliveryConfigurations)); + } + + /** + * @param s3DeliveryConfigurations Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + * + * @return builder + * + */ + public Builder s3DeliveryConfigurations(LogDeliveryS3DeliveryConfigurationArgs... s3DeliveryConfigurations) { + return s3DeliveryConfigurations(List.of(s3DeliveryConfigurations)); + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(@Nullable Output> tagsAll) { + $.tagsAll = tagsAll; + return this; + } + + /** + * @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(Map tagsAll) { + return tagsAll(Output.of(tagsAll)); + } + + public LogDeliveryState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogIndexPolicyState.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogIndexPolicyState.java new file mode 100644 index 00000000000..aa1295902c4 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/inputs/LogIndexPolicyState.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class LogIndexPolicyState extends com.pulumi.resources.ResourceArgs { + + public static final LogIndexPolicyState Empty = new LogIndexPolicyState(); + + /** + * Log group name to set the policy for. + * + */ + @Import(name="logGroupName") + private @Nullable Output logGroupName; + + /** + * @return Log group name to set the policy for. + * + */ + public Optional> logGroupName() { + return Optional.ofNullable(this.logGroupName); + } + + /** + * JSON policy document. This is a JSON formatted string. + * + */ + @Import(name="policyDocument") + private @Nullable Output policyDocument; + + /** + * @return JSON policy document. This is a JSON formatted string. + * + */ + public Optional> policyDocument() { + return Optional.ofNullable(this.policyDocument); + } + + private LogIndexPolicyState() {} + + private LogIndexPolicyState(LogIndexPolicyState $) { + this.logGroupName = $.logGroupName; + this.policyDocument = $.policyDocument; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(LogIndexPolicyState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private LogIndexPolicyState $; + + public Builder() { + $ = new LogIndexPolicyState(); + } + + public Builder(LogIndexPolicyState defaults) { + $ = new LogIndexPolicyState(Objects.requireNonNull(defaults)); + } + + /** + * @param logGroupName Log group name to set the policy for. + * + * @return builder + * + */ + public Builder logGroupName(@Nullable Output logGroupName) { + $.logGroupName = logGroupName; + return this; + } + + /** + * @param logGroupName Log group name to set the policy for. + * + * @return builder + * + */ + public Builder logGroupName(String logGroupName) { + return logGroupName(Output.of(logGroupName)); + } + + /** + * @param policyDocument JSON policy document. This is a JSON formatted string. + * + * @return builder + * + */ + public Builder policyDocument(@Nullable Output policyDocument) { + $.policyDocument = policyDocument; + return this; + } + + /** + * @param policyDocument JSON policy document. This is a JSON formatted string. + * + * @return builder + * + */ + public Builder policyDocument(String policyDocument) { + return policyDocument(Output.of(policyDocument)); + } + + public LogIndexPolicyState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesEventBus.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesEventBus.java new file mode 100644 index 00000000000..42a730d09cf --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesEventBus.java @@ -0,0 +1,173 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetEventBusesEventBus { + /** + * @return The ARN of the event bus. + * + */ + private String arn; + /** + * @return The time the event bus was created. + * + */ + private String creationTime; + /** + * @return The event bus description. + * + */ + private String description; + /** + * @return The time the event bus was last modified. + * + */ + private String lastModifiedTime; + /** + * @return The name of the event bus. + * + */ + private String name; + /** + * @return The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + * + */ + private String policy; + + private GetEventBusesEventBus() {} + /** + * @return The ARN of the event bus. + * + */ + public String arn() { + return this.arn; + } + /** + * @return The time the event bus was created. + * + */ + public String creationTime() { + return this.creationTime; + } + /** + * @return The event bus description. + * + */ + public String description() { + return this.description; + } + /** + * @return The time the event bus was last modified. + * + */ + public String lastModifiedTime() { + return this.lastModifiedTime; + } + /** + * @return The name of the event bus. + * + */ + public String name() { + return this.name; + } + /** + * @return The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + * + */ + public String policy() { + return this.policy; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetEventBusesEventBus defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String arn; + private String creationTime; + private String description; + private String lastModifiedTime; + private String name; + private String policy; + public Builder() {} + public Builder(GetEventBusesEventBus defaults) { + Objects.requireNonNull(defaults); + this.arn = defaults.arn; + this.creationTime = defaults.creationTime; + this.description = defaults.description; + this.lastModifiedTime = defaults.lastModifiedTime; + this.name = defaults.name; + this.policy = defaults.policy; + } + + @CustomType.Setter + public Builder arn(String arn) { + if (arn == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "arn"); + } + this.arn = arn; + return this; + } + @CustomType.Setter + public Builder creationTime(String creationTime) { + if (creationTime == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "creationTime"); + } + this.creationTime = creationTime; + return this; + } + @CustomType.Setter + public Builder description(String description) { + if (description == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "description"); + } + this.description = description; + return this; + } + @CustomType.Setter + public Builder lastModifiedTime(String lastModifiedTime) { + if (lastModifiedTime == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "lastModifiedTime"); + } + this.lastModifiedTime = lastModifiedTime; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder policy(String policy) { + if (policy == null) { + throw new MissingRequiredPropertyException("GetEventBusesEventBus", "policy"); + } + this.policy = policy; + return this; + } + public GetEventBusesEventBus build() { + final var _resultValue = new GetEventBusesEventBus(); + _resultValue.arn = arn; + _resultValue.creationTime = creationTime; + _resultValue.description = description; + _resultValue.lastModifiedTime = lastModifiedTime; + _resultValue.name = name; + _resultValue.policy = policy; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesResult.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesResult.java new file mode 100644 index 00000000000..284bdb8d9fb --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/GetEventBusesResult.java @@ -0,0 +1,101 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.outputs; + +import com.pulumi.aws.cloudwatch.outputs.GetEventBusesEventBus; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetEventBusesResult { + /** + * @return This list of event buses. + * + */ + private List eventBuses; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + private @Nullable String namePrefix; + + private GetEventBusesResult() {} + /** + * @return This list of event buses. + * + */ + public List eventBuses() { + return this.eventBuses; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + public Optional namePrefix() { + return Optional.ofNullable(this.namePrefix); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetEventBusesResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List eventBuses; + private String id; + private @Nullable String namePrefix; + public Builder() {} + public Builder(GetEventBusesResult defaults) { + Objects.requireNonNull(defaults); + this.eventBuses = defaults.eventBuses; + this.id = defaults.id; + this.namePrefix = defaults.namePrefix; + } + + @CustomType.Setter + public Builder eventBuses(List eventBuses) { + if (eventBuses == null) { + throw new MissingRequiredPropertyException("GetEventBusesResult", "eventBuses"); + } + this.eventBuses = eventBuses; + return this; + } + public Builder eventBuses(GetEventBusesEventBus... eventBuses) { + return eventBuses(List.of(eventBuses)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetEventBusesResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder namePrefix(@Nullable String namePrefix) { + + this.namePrefix = namePrefix; + return this; + } + public GetEventBusesResult build() { + final var _resultValue = new GetEventBusesResult(); + _resultValue.eventBuses = eventBuses; + _resultValue.id = id; + _resultValue.namePrefix = namePrefix; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.java new file mode 100644 index 00000000000..0e58651c2f3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryDestinationDeliveryDestinationConfiguration.java @@ -0,0 +1,58 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class LogDeliveryDestinationDeliveryDestinationConfiguration { + /** + * @return The ARN of the AWS destination that this delivery destination represents. + * + */ + private String destinationResourceArn; + + private LogDeliveryDestinationDeliveryDestinationConfiguration() {} + /** + * @return The ARN of the AWS destination that this delivery destination represents. + * + */ + public String destinationResourceArn() { + return this.destinationResourceArn; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(LogDeliveryDestinationDeliveryDestinationConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String destinationResourceArn; + public Builder() {} + public Builder(LogDeliveryDestinationDeliveryDestinationConfiguration defaults) { + Objects.requireNonNull(defaults); + this.destinationResourceArn = defaults.destinationResourceArn; + } + + @CustomType.Setter + public Builder destinationResourceArn(String destinationResourceArn) { + if (destinationResourceArn == null) { + throw new MissingRequiredPropertyException("LogDeliveryDestinationDeliveryDestinationConfiguration", "destinationResourceArn"); + } + this.destinationResourceArn = destinationResourceArn; + return this; + } + public LogDeliveryDestinationDeliveryDestinationConfiguration build() { + final var _resultValue = new LogDeliveryDestinationDeliveryDestinationConfiguration(); + _resultValue.destinationResourceArn = destinationResourceArn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryS3DeliveryConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryS3DeliveryConfiguration.java new file mode 100644 index 00000000000..c56fd209fb9 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cloudwatch/outputs/LogDeliveryS3DeliveryConfiguration.java @@ -0,0 +1,82 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cloudwatch.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class LogDeliveryS3DeliveryConfiguration { + /** + * @return This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + */ + private Boolean enableHiveCompatiblePath; + /** + * @return This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + */ + private String suffixPath; + + private LogDeliveryS3DeliveryConfiguration() {} + /** + * @return This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + * + */ + public Boolean enableHiveCompatiblePath() { + return this.enableHiveCompatiblePath; + } + /** + * @return This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + * + */ + public String suffixPath() { + return this.suffixPath; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(LogDeliveryS3DeliveryConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Boolean enableHiveCompatiblePath; + private String suffixPath; + public Builder() {} + public Builder(LogDeliveryS3DeliveryConfiguration defaults) { + Objects.requireNonNull(defaults); + this.enableHiveCompatiblePath = defaults.enableHiveCompatiblePath; + this.suffixPath = defaults.suffixPath; + } + + @CustomType.Setter + public Builder enableHiveCompatiblePath(Boolean enableHiveCompatiblePath) { + if (enableHiveCompatiblePath == null) { + throw new MissingRequiredPropertyException("LogDeliveryS3DeliveryConfiguration", "enableHiveCompatiblePath"); + } + this.enableHiveCompatiblePath = enableHiveCompatiblePath; + return this; + } + @CustomType.Setter + public Builder suffixPath(String suffixPath) { + if (suffixPath == null) { + throw new MissingRequiredPropertyException("LogDeliveryS3DeliveryConfiguration", "suffixPath"); + } + this.suffixPath = suffixPath; + return this; + } + public LogDeliveryS3DeliveryConfiguration build() { + final var _resultValue = new LogDeliveryS3DeliveryConfiguration(); + _resultValue.enableHiveCompatiblePath = enableHiveCompatiblePath; + _resultValue.suffixPath = suffixPath; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/Fleet.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/Fleet.java index 7e28646dfd0..ef16b40e873 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/codebuild/Fleet.java +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/Fleet.java @@ -6,6 +6,7 @@ import com.pulumi.aws.Utilities; import com.pulumi.aws.codebuild.FleetArgs; import com.pulumi.aws.codebuild.inputs.FleetState; +import com.pulumi.aws.codebuild.outputs.FleetComputeConfiguration; import com.pulumi.aws.codebuild.outputs.FleetScalingConfiguration; import com.pulumi.aws.codebuild.outputs.FleetStatus; import com.pulumi.aws.codebuild.outputs.FleetVpcConfig; @@ -145,6 +146,20 @@ public Output arn() { public Output baseCapacity() { return this.baseCapacity; } + /** + * The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + @Export(name="computeConfiguration", refs={FleetComputeConfiguration.class}, tree="[0]") + private Output computeConfiguration; + + /** + * @return The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + public Output> computeConfiguration() { + return Codegen.optional(this.computeConfiguration); + } /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. * @@ -262,14 +277,14 @@ public Output overflowBehavior() { return this.overflowBehavior; } /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ @Export(name="scalingConfiguration", refs={FleetScalingConfiguration.class}, tree="[0]") private Output scalingConfiguration; /** - * @return Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * @return Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ public Output> scalingConfiguration() { @@ -316,14 +331,14 @@ public Output> tagsAll() { return this.tagsAll; } /** - * Configuration block. Detailed below. + * Configuration block. See `vpc_config` below. * */ @Export(name="vpcConfigs", refs={List.class,FleetVpcConfig.class}, tree="[0,1]") private Output> vpcConfigs; /** - * @return Configuration block. Detailed below. + * @return Configuration block. See `vpc_config` below. * */ public Output>> vpcConfigs() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/FleetArgs.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/FleetArgs.java index d7b91b4ccc3..76b0c7019e1 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/codebuild/FleetArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/FleetArgs.java @@ -3,6 +3,7 @@ package com.pulumi.aws.codebuild; +import com.pulumi.aws.codebuild.inputs.FleetComputeConfigurationArgs; import com.pulumi.aws.codebuild.inputs.FleetScalingConfigurationArgs; import com.pulumi.aws.codebuild.inputs.FleetVpcConfigArgs; import com.pulumi.core.Output; @@ -36,6 +37,21 @@ public Output baseCapacity() { return this.baseCapacity; } + /** + * The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + @Import(name="computeConfiguration") + private @Nullable Output computeConfiguration; + + /** + * @return The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + public Optional> computeConfiguration() { + return Optional.ofNullable(this.computeConfiguration); + } + /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. * @@ -131,14 +147,14 @@ public Optional> overflowBehavior() { } /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ @Import(name="scalingConfiguration") private @Nullable Output scalingConfiguration; /** - * @return Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * @return Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ public Optional> scalingConfiguration() { @@ -161,14 +177,14 @@ public Optional>> tags() { } /** - * Configuration block. Detailed below. + * Configuration block. See `vpc_config` below. * */ @Import(name="vpcConfigs") private @Nullable Output> vpcConfigs; /** - * @return Configuration block. Detailed below. + * @return Configuration block. See `vpc_config` below. * */ public Optional>> vpcConfigs() { @@ -179,6 +195,7 @@ private FleetArgs() {} private FleetArgs(FleetArgs $) { this.baseCapacity = $.baseCapacity; + this.computeConfiguration = $.computeConfiguration; this.computeType = $.computeType; this.environmentType = $.environmentType; this.fleetServiceRole = $.fleetServiceRole; @@ -229,6 +246,27 @@ public Builder baseCapacity(Integer baseCapacity) { return baseCapacity(Output.of(baseCapacity)); } + /** + * @param computeConfiguration The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + * @return builder + * + */ + public Builder computeConfiguration(@Nullable Output computeConfiguration) { + $.computeConfiguration = computeConfiguration; + return this; + } + + /** + * @param computeConfiguration The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + * @return builder + * + */ + public Builder computeConfiguration(FleetComputeConfigurationArgs computeConfiguration) { + return computeConfiguration(Output.of(computeConfiguration)); + } + /** * @param computeType Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. * @@ -360,7 +398,7 @@ public Builder overflowBehavior(String overflowBehavior) { } /** - * @param scalingConfiguration Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * @param scalingConfiguration Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * * @return builder * @@ -371,7 +409,7 @@ public Builder scalingConfiguration(@Nullable Output tags) { } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * @@ -413,7 +451,7 @@ public Builder vpcConfigs(@Nullable Output> vpcConfigs) } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * @@ -423,7 +461,7 @@ public Builder vpcConfigs(List vpcConfigs) { } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetComputeConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetComputeConfigurationArgs.java new file mode 100644 index 00000000000..43fbfabd859 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetComputeConfigurationArgs.java @@ -0,0 +1,195 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.codebuild.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class FleetComputeConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final FleetComputeConfigurationArgs Empty = new FleetComputeConfigurationArgs(); + + /** + * Amount of disk space of the instance type included in the fleet. + * + */ + @Import(name="disk") + private @Nullable Output disk; + + /** + * @return Amount of disk space of the instance type included in the fleet. + * + */ + public Optional> disk() { + return Optional.ofNullable(this.disk); + } + + /** + * Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + */ + @Import(name="machineType") + private @Nullable Output machineType; + + /** + * @return Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + */ + public Optional> machineType() { + return Optional.ofNullable(this.machineType); + } + + /** + * Amount of memory of the instance type included in the fleet. + * + */ + @Import(name="memory") + private @Nullable Output memory; + + /** + * @return Amount of memory of the instance type included in the fleet. + * + */ + public Optional> memory() { + return Optional.ofNullable(this.memory); + } + + /** + * Number of vCPUs of the instance type included in the fleet. + * + */ + @Import(name="vcpu") + private @Nullable Output vcpu; + + /** + * @return Number of vCPUs of the instance type included in the fleet. + * + */ + public Optional> vcpu() { + return Optional.ofNullable(this.vcpu); + } + + private FleetComputeConfigurationArgs() {} + + private FleetComputeConfigurationArgs(FleetComputeConfigurationArgs $) { + this.disk = $.disk; + this.machineType = $.machineType; + this.memory = $.memory; + this.vcpu = $.vcpu; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(FleetComputeConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private FleetComputeConfigurationArgs $; + + public Builder() { + $ = new FleetComputeConfigurationArgs(); + } + + public Builder(FleetComputeConfigurationArgs defaults) { + $ = new FleetComputeConfigurationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param disk Amount of disk space of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder disk(@Nullable Output disk) { + $.disk = disk; + return this; + } + + /** + * @param disk Amount of disk space of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder disk(Integer disk) { + return disk(Output.of(disk)); + } + + /** + * @param machineType Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + * @return builder + * + */ + public Builder machineType(@Nullable Output machineType) { + $.machineType = machineType; + return this; + } + + /** + * @param machineType Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + * @return builder + * + */ + public Builder machineType(String machineType) { + return machineType(Output.of(machineType)); + } + + /** + * @param memory Amount of memory of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder memory(@Nullable Output memory) { + $.memory = memory; + return this; + } + + /** + * @param memory Amount of memory of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder memory(Integer memory) { + return memory(Output.of(memory)); + } + + /** + * @param vcpu Number of vCPUs of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder vcpu(@Nullable Output vcpu) { + $.vcpu = vcpu; + return this; + } + + /** + * @param vcpu Number of vCPUs of the instance type included in the fleet. + * + * @return builder + * + */ + public Builder vcpu(Integer vcpu) { + return vcpu(Output.of(vcpu)); + } + + public FleetComputeConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetState.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetState.java index fb6c72432c2..6e9f3857eec 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/inputs/FleetState.java @@ -3,6 +3,7 @@ package com.pulumi.aws.codebuild.inputs; +import com.pulumi.aws.codebuild.inputs.FleetComputeConfigurationArgs; import com.pulumi.aws.codebuild.inputs.FleetScalingConfigurationArgs; import com.pulumi.aws.codebuild.inputs.FleetStatusArgs; import com.pulumi.aws.codebuild.inputs.FleetVpcConfigArgs; @@ -51,6 +52,21 @@ public Optional> baseCapacity() { return Optional.ofNullable(this.baseCapacity); } + /** + * The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + @Import(name="computeConfiguration") + private @Nullable Output computeConfiguration; + + /** + * @return The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + */ + public Optional> computeConfiguration() { + return Optional.ofNullable(this.computeConfiguration); + } + /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. * @@ -176,14 +192,14 @@ public Optional> overflowBehavior() { } /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ @Import(name="scalingConfiguration") private @Nullable Output scalingConfiguration; /** - * @return Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * @return Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * */ public Optional> scalingConfiguration() { @@ -240,14 +256,14 @@ public Optional>> tagsAll() { } /** - * Configuration block. Detailed below. + * Configuration block. See `vpc_config` below. * */ @Import(name="vpcConfigs") private @Nullable Output> vpcConfigs; /** - * @return Configuration block. Detailed below. + * @return Configuration block. See `vpc_config` below. * */ public Optional>> vpcConfigs() { @@ -259,6 +275,7 @@ private FleetState() {} private FleetState(FleetState $) { this.arn = $.arn; this.baseCapacity = $.baseCapacity; + this.computeConfiguration = $.computeConfiguration; this.computeType = $.computeType; this.created = $.created; this.environmentType = $.environmentType; @@ -334,6 +351,27 @@ public Builder baseCapacity(Integer baseCapacity) { return baseCapacity(Output.of(baseCapacity)); } + /** + * @param computeConfiguration The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + * @return builder + * + */ + public Builder computeConfiguration(@Nullable Output computeConfiguration) { + $.computeConfiguration = computeConfiguration; + return this; + } + + /** + * @param computeConfiguration The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + * + * @return builder + * + */ + public Builder computeConfiguration(FleetComputeConfigurationArgs computeConfiguration) { + return computeConfiguration(Output.of(computeConfiguration)); + } + /** * @param computeType Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. * @@ -507,7 +545,7 @@ public Builder overflowBehavior(String overflowBehavior) { } /** - * @param scalingConfiguration Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * @param scalingConfiguration Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. * * @return builder * @@ -518,7 +556,7 @@ public Builder scalingConfiguration(@Nullable Output tagsAll) { } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * @@ -616,7 +654,7 @@ public Builder vpcConfigs(@Nullable Output> vpcConfigs) } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * @@ -626,7 +664,7 @@ public Builder vpcConfigs(List vpcConfigs) { } /** - * @param vpcConfigs Configuration block. Detailed below. + * @param vpcConfigs Configuration block. See `vpc_config` below. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/FleetComputeConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/FleetComputeConfiguration.java new file mode 100644 index 00000000000..4a79c76214f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/FleetComputeConfiguration.java @@ -0,0 +1,121 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.codebuild.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class FleetComputeConfiguration { + /** + * @return Amount of disk space of the instance type included in the fleet. + * + */ + private @Nullable Integer disk; + /** + * @return Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + */ + private @Nullable String machineType; + /** + * @return Amount of memory of the instance type included in the fleet. + * + */ + private @Nullable Integer memory; + /** + * @return Number of vCPUs of the instance type included in the fleet. + * + */ + private @Nullable Integer vcpu; + + private FleetComputeConfiguration() {} + /** + * @return Amount of disk space of the instance type included in the fleet. + * + */ + public Optional disk() { + return Optional.ofNullable(this.disk); + } + /** + * @return Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + * + */ + public Optional machineType() { + return Optional.ofNullable(this.machineType); + } + /** + * @return Amount of memory of the instance type included in the fleet. + * + */ + public Optional memory() { + return Optional.ofNullable(this.memory); + } + /** + * @return Number of vCPUs of the instance type included in the fleet. + * + */ + public Optional vcpu() { + return Optional.ofNullable(this.vcpu); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(FleetComputeConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Integer disk; + private @Nullable String machineType; + private @Nullable Integer memory; + private @Nullable Integer vcpu; + public Builder() {} + public Builder(FleetComputeConfiguration defaults) { + Objects.requireNonNull(defaults); + this.disk = defaults.disk; + this.machineType = defaults.machineType; + this.memory = defaults.memory; + this.vcpu = defaults.vcpu; + } + + @CustomType.Setter + public Builder disk(@Nullable Integer disk) { + + this.disk = disk; + return this; + } + @CustomType.Setter + public Builder machineType(@Nullable String machineType) { + + this.machineType = machineType; + return this; + } + @CustomType.Setter + public Builder memory(@Nullable Integer memory) { + + this.memory = memory; + return this; + } + @CustomType.Setter + public Builder vcpu(@Nullable Integer vcpu) { + + this.vcpu = vcpu; + return this; + } + public FleetComputeConfiguration build() { + final var _resultValue = new FleetComputeConfiguration(); + _resultValue.disk = disk; + _resultValue.machineType = machineType; + _resultValue.memory = memory; + _resultValue.vcpu = vcpu; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetComputeConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetComputeConfiguration.java new file mode 100644 index 00000000000..a03a73e0684 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetComputeConfiguration.java @@ -0,0 +1,128 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.codebuild.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetFleetComputeConfiguration { + /** + * @return Amount of disk space of the instance type included in the fleet. + * + */ + private Integer disk; + /** + * @return Machine type of the instance type included in the fleet. + * + */ + private String machineType; + /** + * @return Amount of memory of the instance type included in the fleet. + * + */ + private Integer memory; + /** + * @return Number of vCPUs of the instance type included in the fleet. + * + */ + private Integer vcpu; + + private GetFleetComputeConfiguration() {} + /** + * @return Amount of disk space of the instance type included in the fleet. + * + */ + public Integer disk() { + return this.disk; + } + /** + * @return Machine type of the instance type included in the fleet. + * + */ + public String machineType() { + return this.machineType; + } + /** + * @return Amount of memory of the instance type included in the fleet. + * + */ + public Integer memory() { + return this.memory; + } + /** + * @return Number of vCPUs of the instance type included in the fleet. + * + */ + public Integer vcpu() { + return this.vcpu; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetFleetComputeConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private Integer disk; + private String machineType; + private Integer memory; + private Integer vcpu; + public Builder() {} + public Builder(GetFleetComputeConfiguration defaults) { + Objects.requireNonNull(defaults); + this.disk = defaults.disk; + this.machineType = defaults.machineType; + this.memory = defaults.memory; + this.vcpu = defaults.vcpu; + } + + @CustomType.Setter + public Builder disk(Integer disk) { + if (disk == null) { + throw new MissingRequiredPropertyException("GetFleetComputeConfiguration", "disk"); + } + this.disk = disk; + return this; + } + @CustomType.Setter + public Builder machineType(String machineType) { + if (machineType == null) { + throw new MissingRequiredPropertyException("GetFleetComputeConfiguration", "machineType"); + } + this.machineType = machineType; + return this; + } + @CustomType.Setter + public Builder memory(Integer memory) { + if (memory == null) { + throw new MissingRequiredPropertyException("GetFleetComputeConfiguration", "memory"); + } + this.memory = memory; + return this; + } + @CustomType.Setter + public Builder vcpu(Integer vcpu) { + if (vcpu == null) { + throw new MissingRequiredPropertyException("GetFleetComputeConfiguration", "vcpu"); + } + this.vcpu = vcpu; + return this; + } + public GetFleetComputeConfiguration build() { + final var _resultValue = new GetFleetComputeConfiguration(); + _resultValue.disk = disk; + _resultValue.machineType = machineType; + _resultValue.memory = memory; + _resultValue.vcpu = vcpu; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetResult.java b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetResult.java index cfbe5365628..0c9034da777 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetResult.java +++ b/sdk/java/src/main/java/com/pulumi/aws/codebuild/outputs/GetFleetResult.java @@ -3,6 +3,7 @@ package com.pulumi.aws.codebuild.outputs; +import com.pulumi.aws.codebuild.outputs.GetFleetComputeConfiguration; import com.pulumi.aws.codebuild.outputs.GetFleetScalingConfiguration; import com.pulumi.aws.codebuild.outputs.GetFleetStatus; import com.pulumi.aws.codebuild.outputs.GetFleetVpcConfig; @@ -26,6 +27,11 @@ public final class GetFleetResult { * */ private Integer baseCapacity; + /** + * @return Compute configuration of the compute fleet. + * + */ + private List computeConfigurations; /** * @return Compute resources the compute fleet uses. * @@ -103,6 +109,13 @@ public String arn() { public Integer baseCapacity() { return this.baseCapacity; } + /** + * @return Compute configuration of the compute fleet. + * + */ + public List computeConfigurations() { + return this.computeConfigurations; + } /** * @return Compute resources the compute fleet uses. * @@ -202,6 +215,7 @@ public static Builder builder(GetFleetResult defaults) { public static final class Builder { private String arn; private Integer baseCapacity; + private List computeConfigurations; private String computeType; private String created; private String environmentType; @@ -220,6 +234,7 @@ public Builder(GetFleetResult defaults) { Objects.requireNonNull(defaults); this.arn = defaults.arn; this.baseCapacity = defaults.baseCapacity; + this.computeConfigurations = defaults.computeConfigurations; this.computeType = defaults.computeType; this.created = defaults.created; this.environmentType = defaults.environmentType; @@ -252,6 +267,17 @@ public Builder baseCapacity(Integer baseCapacity) { return this; } @CustomType.Setter + public Builder computeConfigurations(List computeConfigurations) { + if (computeConfigurations == null) { + throw new MissingRequiredPropertyException("GetFleetResult", "computeConfigurations"); + } + this.computeConfigurations = computeConfigurations; + return this; + } + public Builder computeConfigurations(GetFleetComputeConfiguration... computeConfigurations) { + return computeConfigurations(List.of(computeConfigurations)); + } + @CustomType.Setter public Builder computeType(String computeType) { if (computeType == null) { throw new MissingRequiredPropertyException("GetFleetResult", "computeType"); @@ -368,6 +394,7 @@ public GetFleetResult build() { final var _resultValue = new GetFleetResult(); _resultValue.arn = arn; _resultValue.baseCapacity = baseCapacity; + _resultValue.computeConfigurations = computeConfigurations; _resultValue.computeType = computeType; _resultValue.created = created; _resultValue.environmentType = environmentType; diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPool.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPool.java index dfbdc1e78b7..3ad55c4639f 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPool.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPool.java @@ -10,15 +10,18 @@ import com.pulumi.aws.cognito.outputs.UserPoolAdminCreateUserConfig; import com.pulumi.aws.cognito.outputs.UserPoolDeviceConfiguration; import com.pulumi.aws.cognito.outputs.UserPoolEmailConfiguration; +import com.pulumi.aws.cognito.outputs.UserPoolEmailMfaConfiguration; import com.pulumi.aws.cognito.outputs.UserPoolLambdaConfig; import com.pulumi.aws.cognito.outputs.UserPoolPasswordPolicy; import com.pulumi.aws.cognito.outputs.UserPoolSchema; +import com.pulumi.aws.cognito.outputs.UserPoolSignInPolicy; import com.pulumi.aws.cognito.outputs.UserPoolSmsConfiguration; import com.pulumi.aws.cognito.outputs.UserPoolSoftwareTokenMfaConfiguration; import com.pulumi.aws.cognito.outputs.UserPoolUserAttributeUpdateSettings; import com.pulumi.aws.cognito.outputs.UserPoolUserPoolAddOns; import com.pulumi.aws.cognito.outputs.UserPoolUsernameConfiguration; import com.pulumi.aws.cognito.outputs.UserPoolVerificationMessageTemplate; +import com.pulumi.aws.cognito.outputs.UserPoolWebAuthnConfiguration; import com.pulumi.core.Output; import com.pulumi.core.annotations.Export; import com.pulumi.core.annotations.ResourceType; @@ -328,6 +331,20 @@ public Output domain() { public Output> emailConfiguration() { return Codegen.optional(this.emailConfiguration); } + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + @Export(name="emailMfaConfiguration", refs={UserPoolEmailMfaConfiguration.class}, tree="[0]") + private Output emailMfaConfiguration; + + /** + * @return Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + public Output> emailMfaConfiguration() { + return Codegen.optional(this.emailMfaConfiguration); + } /** * String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. * @@ -472,6 +489,20 @@ public Output passwordPolicy() { public Output>> schemas() { return Codegen.optional(this.schemas); } + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + @Export(name="signInPolicy", refs={UserPoolSignInPolicy.class}, tree="[0]") + private Output signInPolicy; + + /** + * @return Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + public Output signInPolicy() { + return this.signInPolicy; + } /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. * @@ -588,6 +619,20 @@ public Output> userAttributeUpdate public Output> userPoolAddOns() { return Codegen.optional(this.userPoolAddOns); } + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + @Export(name="userPoolTier", refs={String.class}, tree="[0]") + private Output userPoolTier; + + /** + * @return The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + public Output userPoolTier() { + return this.userPoolTier; + } /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. * @@ -630,6 +675,20 @@ public Output> usernameConfiguration() { public Output verificationMessageTemplate() { return this.verificationMessageTemplate; } + /** + * Configuration block for web authn configuration. Detailed below. + * + */ + @Export(name="webAuthnConfiguration", refs={UserPoolWebAuthnConfiguration.class}, tree="[0]") + private Output webAuthnConfiguration; + + /** + * @return Configuration block for web authn configuration. Detailed below. + * + */ + public Output> webAuthnConfiguration() { + return Codegen.optional(this.webAuthnConfiguration); + } /** * diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPoolArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPoolArgs.java index c7565d05198..41c18889da2 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPoolArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/UserPoolArgs.java @@ -7,15 +7,18 @@ import com.pulumi.aws.cognito.inputs.UserPoolAdminCreateUserConfigArgs; import com.pulumi.aws.cognito.inputs.UserPoolDeviceConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolEmailConfigurationArgs; +import com.pulumi.aws.cognito.inputs.UserPoolEmailMfaConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolLambdaConfigArgs; import com.pulumi.aws.cognito.inputs.UserPoolPasswordPolicyArgs; import com.pulumi.aws.cognito.inputs.UserPoolSchemaArgs; +import com.pulumi.aws.cognito.inputs.UserPoolSignInPolicyArgs; import com.pulumi.aws.cognito.inputs.UserPoolSmsConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolSoftwareTokenMfaConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolUserAttributeUpdateSettingsArgs; import com.pulumi.aws.cognito.inputs.UserPoolUserPoolAddOnsArgs; import com.pulumi.aws.cognito.inputs.UserPoolUsernameConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolVerificationMessageTemplateArgs; +import com.pulumi.aws.cognito.inputs.UserPoolWebAuthnConfigurationArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.String; @@ -135,6 +138,21 @@ public Optional> emailConfiguration() { return Optional.ofNullable(this.emailConfiguration); } + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + @Import(name="emailMfaConfiguration") + private @Nullable Output emailMfaConfiguration; + + /** + * @return Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + public Optional> emailMfaConfiguration() { + return Optional.ofNullable(this.emailMfaConfiguration); + } + /** * String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. * @@ -244,6 +262,21 @@ public Optional>> schemas() { return Optional.ofNullable(this.schemas); } + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + @Import(name="signInPolicy") + private @Nullable Output signInPolicy; + + /** + * @return Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + public Optional> signInPolicy() { + return Optional.ofNullable(this.signInPolicy); + } + /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. * @@ -349,6 +382,21 @@ public Optional> userPoolAddOns() { return Optional.ofNullable(this.userPoolAddOns); } + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + @Import(name="userPoolTier") + private @Nullable Output userPoolTier; + + /** + * @return The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + public Optional> userPoolTier() { + return Optional.ofNullable(this.userPoolTier); + } + /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. * @@ -394,6 +442,21 @@ public Optional> verificationMes return Optional.ofNullable(this.verificationMessageTemplate); } + /** + * Configuration block for web authn configuration. Detailed below. + * + */ + @Import(name="webAuthnConfiguration") + private @Nullable Output webAuthnConfiguration; + + /** + * @return Configuration block for web authn configuration. Detailed below. + * + */ + public Optional> webAuthnConfiguration() { + return Optional.ofNullable(this.webAuthnConfiguration); + } + private UserPoolArgs() {} private UserPoolArgs(UserPoolArgs $) { @@ -404,6 +467,7 @@ private UserPoolArgs(UserPoolArgs $) { this.deletionProtection = $.deletionProtection; this.deviceConfiguration = $.deviceConfiguration; this.emailConfiguration = $.emailConfiguration; + this.emailMfaConfiguration = $.emailMfaConfiguration; this.emailVerificationMessage = $.emailVerificationMessage; this.emailVerificationSubject = $.emailVerificationSubject; this.lambdaConfig = $.lambdaConfig; @@ -411,6 +475,7 @@ private UserPoolArgs(UserPoolArgs $) { this.name = $.name; this.passwordPolicy = $.passwordPolicy; this.schemas = $.schemas; + this.signInPolicy = $.signInPolicy; this.smsAuthenticationMessage = $.smsAuthenticationMessage; this.smsConfiguration = $.smsConfiguration; this.smsVerificationMessage = $.smsVerificationMessage; @@ -418,9 +483,11 @@ private UserPoolArgs(UserPoolArgs $) { this.tags = $.tags; this.userAttributeUpdateSettings = $.userAttributeUpdateSettings; this.userPoolAddOns = $.userPoolAddOns; + this.userPoolTier = $.userPoolTier; this.usernameAttributes = $.usernameAttributes; this.usernameConfiguration = $.usernameConfiguration; this.verificationMessageTemplate = $.verificationMessageTemplate; + this.webAuthnConfiguration = $.webAuthnConfiguration; } public static Builder builder() { @@ -608,6 +675,27 @@ public Builder emailConfiguration(UserPoolEmailConfigurationArgs emailConfigurat return emailConfiguration(Output.of(emailConfiguration)); } + /** + * @param emailMfaConfiguration Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + * @return builder + * + */ + public Builder emailMfaConfiguration(@Nullable Output emailMfaConfiguration) { + $.emailMfaConfiguration = emailMfaConfiguration; + return this; + } + + /** + * @param emailMfaConfiguration Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + * @return builder + * + */ + public Builder emailMfaConfiguration(UserPoolEmailMfaConfigurationArgs emailMfaConfiguration) { + return emailMfaConfiguration(Output.of(emailMfaConfiguration)); + } + /** * @param emailVerificationMessage String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. * @@ -769,6 +857,27 @@ public Builder schemas(UserPoolSchemaArgs... schemas) { return schemas(List.of(schemas)); } + /** + * @param signInPolicy Configuration block for information about the user pool sign in policy. Detailed below. + * + * @return builder + * + */ + public Builder signInPolicy(@Nullable Output signInPolicy) { + $.signInPolicy = signInPolicy; + return this; + } + + /** + * @param signInPolicy Configuration block for information about the user pool sign in policy. Detailed below. + * + * @return builder + * + */ + public Builder signInPolicy(UserPoolSignInPolicyArgs signInPolicy) { + return signInPolicy(Output.of(signInPolicy)); + } + /** * @param smsAuthenticationMessage String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. * @@ -916,6 +1025,27 @@ public Builder userPoolAddOns(UserPoolUserPoolAddOnsArgs userPoolAddOns) { return userPoolAddOns(Output.of(userPoolAddOns)); } + /** + * @param userPoolTier The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + * @return builder + * + */ + public Builder userPoolTier(@Nullable Output userPoolTier) { + $.userPoolTier = userPoolTier; + return this; + } + + /** + * @param userPoolTier The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + * @return builder + * + */ + public Builder userPoolTier(String userPoolTier) { + return userPoolTier(Output.of(userPoolTier)); + } + /** * @param usernameAttributes Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. * @@ -989,6 +1119,27 @@ public Builder verificationMessageTemplate(UserPoolVerificationMessageTemplateAr return verificationMessageTemplate(Output.of(verificationMessageTemplate)); } + /** + * @param webAuthnConfiguration Configuration block for web authn configuration. Detailed below. + * + * @return builder + * + */ + public Builder webAuthnConfiguration(@Nullable Output webAuthnConfiguration) { + $.webAuthnConfiguration = webAuthnConfiguration; + return this; + } + + /** + * @param webAuthnConfiguration Configuration block for web authn configuration. Detailed below. + * + * @return builder + * + */ + public Builder webAuthnConfiguration(UserPoolWebAuthnConfigurationArgs webAuthnConfiguration) { + return webAuthnConfiguration(Output.of(webAuthnConfiguration)); + } + public UserPoolArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolEmailMfaConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolEmailMfaConfigurationArgs.java new file mode 100644 index 00000000000..fd7a29dbf4a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolEmailMfaConfigurationArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UserPoolEmailMfaConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final UserPoolEmailMfaConfigurationArgs Empty = new UserPoolEmailMfaConfigurationArgs(); + + /** + * The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + */ + @Import(name="message") + private @Nullable Output message; + + /** + * @return The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + */ + public Optional> message() { + return Optional.ofNullable(this.message); + } + + /** + * The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + */ + @Import(name="subject") + private @Nullable Output subject; + + /** + * @return The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + */ + public Optional> subject() { + return Optional.ofNullable(this.subject); + } + + private UserPoolEmailMfaConfigurationArgs() {} + + private UserPoolEmailMfaConfigurationArgs(UserPoolEmailMfaConfigurationArgs $) { + this.message = $.message; + this.subject = $.subject; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UserPoolEmailMfaConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UserPoolEmailMfaConfigurationArgs $; + + public Builder() { + $ = new UserPoolEmailMfaConfigurationArgs(); + } + + public Builder(UserPoolEmailMfaConfigurationArgs defaults) { + $ = new UserPoolEmailMfaConfigurationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param message The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + * @return builder + * + */ + public Builder message(@Nullable Output message) { + $.message = message; + return this; + } + + /** + * @param message The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + * @return builder + * + */ + public Builder message(String message) { + return message(Output.of(message)); + } + + /** + * @param subject The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + * @return builder + * + */ + public Builder subject(@Nullable Output subject) { + $.subject = subject; + return this; + } + + /** + * @param subject The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + * @return builder + * + */ + public Builder subject(String subject) { + return subject(Output.of(subject)); + } + + public UserPoolEmailMfaConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolSignInPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolSignInPolicyArgs.java new file mode 100644 index 00000000000..d9448b81c26 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolSignInPolicyArgs.java @@ -0,0 +1,94 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UserPoolSignInPolicyArgs extends com.pulumi.resources.ResourceArgs { + + public static final UserPoolSignInPolicyArgs Empty = new UserPoolSignInPolicyArgs(); + + /** + * The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + */ + @Import(name="allowedFirstAuthFactors") + private @Nullable Output> allowedFirstAuthFactors; + + /** + * @return The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + */ + public Optional>> allowedFirstAuthFactors() { + return Optional.ofNullable(this.allowedFirstAuthFactors); + } + + private UserPoolSignInPolicyArgs() {} + + private UserPoolSignInPolicyArgs(UserPoolSignInPolicyArgs $) { + this.allowedFirstAuthFactors = $.allowedFirstAuthFactors; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UserPoolSignInPolicyArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UserPoolSignInPolicyArgs $; + + public Builder() { + $ = new UserPoolSignInPolicyArgs(); + } + + public Builder(UserPoolSignInPolicyArgs defaults) { + $ = new UserPoolSignInPolicyArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param allowedFirstAuthFactors The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + * @return builder + * + */ + public Builder allowedFirstAuthFactors(@Nullable Output> allowedFirstAuthFactors) { + $.allowedFirstAuthFactors = allowedFirstAuthFactors; + return this; + } + + /** + * @param allowedFirstAuthFactors The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + * @return builder + * + */ + public Builder allowedFirstAuthFactors(List allowedFirstAuthFactors) { + return allowedFirstAuthFactors(Output.of(allowedFirstAuthFactors)); + } + + /** + * @param allowedFirstAuthFactors The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + * @return builder + * + */ + public Builder allowedFirstAuthFactors(String... allowedFirstAuthFactors) { + return allowedFirstAuthFactors(List.of(allowedFirstAuthFactors)); + } + + public UserPoolSignInPolicyArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolState.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolState.java index 56bf7c85fbc..7524ba3404d 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolState.java @@ -7,15 +7,18 @@ import com.pulumi.aws.cognito.inputs.UserPoolAdminCreateUserConfigArgs; import com.pulumi.aws.cognito.inputs.UserPoolDeviceConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolEmailConfigurationArgs; +import com.pulumi.aws.cognito.inputs.UserPoolEmailMfaConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolLambdaConfigArgs; import com.pulumi.aws.cognito.inputs.UserPoolPasswordPolicyArgs; import com.pulumi.aws.cognito.inputs.UserPoolSchemaArgs; +import com.pulumi.aws.cognito.inputs.UserPoolSignInPolicyArgs; import com.pulumi.aws.cognito.inputs.UserPoolSmsConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolSoftwareTokenMfaConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolUserAttributeUpdateSettingsArgs; import com.pulumi.aws.cognito.inputs.UserPoolUserPoolAddOnsArgs; import com.pulumi.aws.cognito.inputs.UserPoolUsernameConfigurationArgs; import com.pulumi.aws.cognito.inputs.UserPoolVerificationMessageTemplateArgs; +import com.pulumi.aws.cognito.inputs.UserPoolWebAuthnConfigurationArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.Integer; @@ -196,6 +199,21 @@ public Optional> emailConfiguration() { return Optional.ofNullable(this.emailConfiguration); } + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + @Import(name="emailMfaConfiguration") + private @Nullable Output emailMfaConfiguration; + + /** + * @return Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + */ + public Optional> emailMfaConfiguration() { + return Optional.ofNullable(this.emailMfaConfiguration); + } + /** * String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. * @@ -350,6 +368,21 @@ public Optional>> schemas() { return Optional.ofNullable(this.schemas); } + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + @Import(name="signInPolicy") + private @Nullable Output signInPolicy; + + /** + * @return Configuration block for information about the user pool sign in policy. Detailed below. + * + */ + public Optional> signInPolicy() { + return Optional.ofNullable(this.signInPolicy); + } + /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. * @@ -478,6 +511,21 @@ public Optional> userPoolAddOns() { return Optional.ofNullable(this.userPoolAddOns); } + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + @Import(name="userPoolTier") + private @Nullable Output userPoolTier; + + /** + * @return The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + */ + public Optional> userPoolTier() { + return Optional.ofNullable(this.userPoolTier); + } + /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. * @@ -523,6 +571,21 @@ public Optional> verificationMes return Optional.ofNullable(this.verificationMessageTemplate); } + /** + * Configuration block for web authn configuration. Detailed below. + * + */ + @Import(name="webAuthnConfiguration") + private @Nullable Output webAuthnConfiguration; + + /** + * @return Configuration block for web authn configuration. Detailed below. + * + */ + public Optional> webAuthnConfiguration() { + return Optional.ofNullable(this.webAuthnConfiguration); + } + private UserPoolState() {} private UserPoolState(UserPoolState $) { @@ -537,6 +600,7 @@ private UserPoolState(UserPoolState $) { this.deviceConfiguration = $.deviceConfiguration; this.domain = $.domain; this.emailConfiguration = $.emailConfiguration; + this.emailMfaConfiguration = $.emailMfaConfiguration; this.emailVerificationMessage = $.emailVerificationMessage; this.emailVerificationSubject = $.emailVerificationSubject; this.endpoint = $.endpoint; @@ -547,6 +611,7 @@ private UserPoolState(UserPoolState $) { this.name = $.name; this.passwordPolicy = $.passwordPolicy; this.schemas = $.schemas; + this.signInPolicy = $.signInPolicy; this.smsAuthenticationMessage = $.smsAuthenticationMessage; this.smsConfiguration = $.smsConfiguration; this.smsVerificationMessage = $.smsVerificationMessage; @@ -555,9 +620,11 @@ private UserPoolState(UserPoolState $) { this.tagsAll = $.tagsAll; this.userAttributeUpdateSettings = $.userAttributeUpdateSettings; this.userPoolAddOns = $.userPoolAddOns; + this.userPoolTier = $.userPoolTier; this.usernameAttributes = $.usernameAttributes; this.usernameConfiguration = $.usernameConfiguration; this.verificationMessageTemplate = $.verificationMessageTemplate; + this.webAuthnConfiguration = $.webAuthnConfiguration; } public static Builder builder() { @@ -829,6 +896,27 @@ public Builder emailConfiguration(UserPoolEmailConfigurationArgs emailConfigurat return emailConfiguration(Output.of(emailConfiguration)); } + /** + * @param emailMfaConfiguration Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + * @return builder + * + */ + public Builder emailMfaConfiguration(@Nullable Output emailMfaConfiguration) { + $.emailMfaConfiguration = emailMfaConfiguration; + return this; + } + + /** + * @param emailMfaConfiguration Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + * + * @return builder + * + */ + public Builder emailMfaConfiguration(UserPoolEmailMfaConfigurationArgs emailMfaConfiguration) { + return emailMfaConfiguration(Output.of(emailMfaConfiguration)); + } + /** * @param emailVerificationMessage String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. * @@ -1053,6 +1141,27 @@ public Builder schemas(UserPoolSchemaArgs... schemas) { return schemas(List.of(schemas)); } + /** + * @param signInPolicy Configuration block for information about the user pool sign in policy. Detailed below. + * + * @return builder + * + */ + public Builder signInPolicy(@Nullable Output signInPolicy) { + $.signInPolicy = signInPolicy; + return this; + } + + /** + * @param signInPolicy Configuration block for information about the user pool sign in policy. Detailed below. + * + * @return builder + * + */ + public Builder signInPolicy(UserPoolSignInPolicyArgs signInPolicy) { + return signInPolicy(Output.of(signInPolicy)); + } + /** * @param smsAuthenticationMessage String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. * @@ -1229,6 +1338,27 @@ public Builder userPoolAddOns(UserPoolUserPoolAddOnsArgs userPoolAddOns) { return userPoolAddOns(Output.of(userPoolAddOns)); } + /** + * @param userPoolTier The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + * @return builder + * + */ + public Builder userPoolTier(@Nullable Output userPoolTier) { + $.userPoolTier = userPoolTier; + return this; + } + + /** + * @param userPoolTier The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + * + * @return builder + * + */ + public Builder userPoolTier(String userPoolTier) { + return userPoolTier(Output.of(userPoolTier)); + } + /** * @param usernameAttributes Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. * @@ -1302,6 +1432,27 @@ public Builder verificationMessageTemplate(UserPoolVerificationMessageTemplateAr return verificationMessageTemplate(Output.of(verificationMessageTemplate)); } + /** + * @param webAuthnConfiguration Configuration block for web authn configuration. Detailed below. + * + * @return builder + * + */ + public Builder webAuthnConfiguration(@Nullable Output webAuthnConfiguration) { + $.webAuthnConfiguration = webAuthnConfiguration; + return this; + } + + /** + * @param webAuthnConfiguration Configuration block for web authn configuration. Detailed below. + * + * @return builder + * + */ + public Builder webAuthnConfiguration(UserPoolWebAuthnConfigurationArgs webAuthnConfiguration) { + return webAuthnConfiguration(Output.of(webAuthnConfiguration)); + } + public UserPoolState build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolWebAuthnConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolWebAuthnConfigurationArgs.java new file mode 100644 index 00000000000..4e95b57438e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/inputs/UserPoolWebAuthnConfigurationArgs.java @@ -0,0 +1,120 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class UserPoolWebAuthnConfigurationArgs extends com.pulumi.resources.ResourceArgs { + + public static final UserPoolWebAuthnConfigurationArgs Empty = new UserPoolWebAuthnConfigurationArgs(); + + /** + * The authentication domain that passkeys providers use as a relying party. + * + */ + @Import(name="relyingPartyId") + private @Nullable Output relyingPartyId; + + /** + * @return The authentication domain that passkeys providers use as a relying party. + * + */ + public Optional> relyingPartyId() { + return Optional.ofNullable(this.relyingPartyId); + } + + /** + * If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + */ + @Import(name="userVerification") + private @Nullable Output userVerification; + + /** + * @return If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + */ + public Optional> userVerification() { + return Optional.ofNullable(this.userVerification); + } + + private UserPoolWebAuthnConfigurationArgs() {} + + private UserPoolWebAuthnConfigurationArgs(UserPoolWebAuthnConfigurationArgs $) { + this.relyingPartyId = $.relyingPartyId; + this.userVerification = $.userVerification; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(UserPoolWebAuthnConfigurationArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private UserPoolWebAuthnConfigurationArgs $; + + public Builder() { + $ = new UserPoolWebAuthnConfigurationArgs(); + } + + public Builder(UserPoolWebAuthnConfigurationArgs defaults) { + $ = new UserPoolWebAuthnConfigurationArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param relyingPartyId The authentication domain that passkeys providers use as a relying party. + * + * @return builder + * + */ + public Builder relyingPartyId(@Nullable Output relyingPartyId) { + $.relyingPartyId = relyingPartyId; + return this; + } + + /** + * @param relyingPartyId The authentication domain that passkeys providers use as a relying party. + * + * @return builder + * + */ + public Builder relyingPartyId(String relyingPartyId) { + return relyingPartyId(Output.of(relyingPartyId)); + } + + /** + * @param userVerification If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + * @return builder + * + */ + public Builder userVerification(@Nullable Output userVerification) { + $.userVerification = userVerification; + return this; + } + + /** + * @param userVerification If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + * @return builder + * + */ + public Builder userVerification(String userVerification) { + return userVerification(Output.of(userVerification)); + } + + public UserPoolWebAuthnConfigurationArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolEmailMfaConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolEmailMfaConfiguration.java new file mode 100644 index 00000000000..ddd8a785fdd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolEmailMfaConfiguration.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class UserPoolEmailMfaConfiguration { + /** + * @return The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + */ + private @Nullable String message; + /** + * @return The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + */ + private @Nullable String subject; + + private UserPoolEmailMfaConfiguration() {} + /** + * @return The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + * + */ + public Optional message() { + return Optional.ofNullable(this.message); + } + /** + * @return The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + * + */ + public Optional subject() { + return Optional.ofNullable(this.subject); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(UserPoolEmailMfaConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String message; + private @Nullable String subject; + public Builder() {} + public Builder(UserPoolEmailMfaConfiguration defaults) { + Objects.requireNonNull(defaults); + this.message = defaults.message; + this.subject = defaults.subject; + } + + @CustomType.Setter + public Builder message(@Nullable String message) { + + this.message = message; + return this; + } + @CustomType.Setter + public Builder subject(@Nullable String subject) { + + this.subject = subject; + return this; + } + public UserPoolEmailMfaConfiguration build() { + final var _resultValue = new UserPoolEmailMfaConfiguration(); + _resultValue.message = message; + _resultValue.subject = subject; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolSignInPolicy.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolSignInPolicy.java new file mode 100644 index 00000000000..993ef1f301d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolSignInPolicy.java @@ -0,0 +1,60 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import javax.annotation.Nullable; + +@CustomType +public final class UserPoolSignInPolicy { + /** + * @return The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + */ + private @Nullable List allowedFirstAuthFactors; + + private UserPoolSignInPolicy() {} + /** + * @return The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + * + */ + public List allowedFirstAuthFactors() { + return this.allowedFirstAuthFactors == null ? List.of() : this.allowedFirstAuthFactors; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(UserPoolSignInPolicy defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable List allowedFirstAuthFactors; + public Builder() {} + public Builder(UserPoolSignInPolicy defaults) { + Objects.requireNonNull(defaults); + this.allowedFirstAuthFactors = defaults.allowedFirstAuthFactors; + } + + @CustomType.Setter + public Builder allowedFirstAuthFactors(@Nullable List allowedFirstAuthFactors) { + + this.allowedFirstAuthFactors = allowedFirstAuthFactors; + return this; + } + public Builder allowedFirstAuthFactors(String... allowedFirstAuthFactors) { + return allowedFirstAuthFactors(List.of(allowedFirstAuthFactors)); + } + public UserPoolSignInPolicy build() { + final var _resultValue = new UserPoolSignInPolicy(); + _resultValue.allowedFirstAuthFactors = allowedFirstAuthFactors; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolWebAuthnConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolWebAuthnConfiguration.java new file mode 100644 index 00000000000..4a83e6c30b8 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/cognito/outputs/UserPoolWebAuthnConfiguration.java @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.cognito.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class UserPoolWebAuthnConfiguration { + /** + * @return The authentication domain that passkeys providers use as a relying party. + * + */ + private @Nullable String relyingPartyId; + /** + * @return If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + */ + private @Nullable String userVerification; + + private UserPoolWebAuthnConfiguration() {} + /** + * @return The authentication domain that passkeys providers use as a relying party. + * + */ + public Optional relyingPartyId() { + return Optional.ofNullable(this.relyingPartyId); + } + /** + * @return If your user pool should require a passkey. Must be one of `required` or `preferred`. + * + */ + public Optional userVerification() { + return Optional.ofNullable(this.userVerification); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(UserPoolWebAuthnConfiguration defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String relyingPartyId; + private @Nullable String userVerification; + public Builder() {} + public Builder(UserPoolWebAuthnConfiguration defaults) { + Objects.requireNonNull(defaults); + this.relyingPartyId = defaults.relyingPartyId; + this.userVerification = defaults.userVerification; + } + + @CustomType.Setter + public Builder relyingPartyId(@Nullable String relyingPartyId) { + + this.relyingPartyId = relyingPartyId; + return this; + } + @CustomType.Setter + public Builder userVerification(@Nullable String userVerification) { + + this.userVerification = userVerification; + return this; + } + public UserPoolWebAuthnConfiguration build() { + final var _resultValue = new UserPoolWebAuthnConfiguration(); + _resultValue.relyingPartyId = relyingPartyId; + _resultValue.userVerification = userVerification; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/dms/inputs/EndpointKafkaSettingsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/dms/inputs/EndpointKafkaSettingsArgs.java index 1b56aa5282a..29ddd1b5fff 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/dms/inputs/EndpointKafkaSettingsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/dms/inputs/EndpointKafkaSettingsArgs.java @@ -168,6 +168,21 @@ public Optional> partitionIncludeSchemaTable() { return Optional.ofNullable(this.partitionIncludeSchemaTable); } + /** + * For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + */ + @Import(name="saslMechanism") + private @Nullable Output saslMechanism; + + /** + * @return For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + */ + public Optional> saslMechanism() { + return Optional.ofNullable(this.saslMechanism); + } + /** * Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. * @@ -301,6 +316,7 @@ private EndpointKafkaSettingsArgs(EndpointKafkaSettingsArgs $) { this.messageMaxBytes = $.messageMaxBytes; this.noHexPrefix = $.noHexPrefix; this.partitionIncludeSchemaTable = $.partitionIncludeSchemaTable; + this.saslMechanism = $.saslMechanism; this.saslPassword = $.saslPassword; this.saslUsername = $.saslUsername; this.securityProtocol = $.securityProtocol; @@ -539,6 +555,27 @@ public Builder partitionIncludeSchemaTable(Boolean partitionIncludeSchemaTable) return partitionIncludeSchemaTable(Output.of(partitionIncludeSchemaTable)); } + /** + * @param saslMechanism For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + * @return builder + * + */ + public Builder saslMechanism(@Nullable Output saslMechanism) { + $.saslMechanism = saslMechanism; + return this; + } + + /** + * @param saslMechanism For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + * @return builder + * + */ + public Builder saslMechanism(String saslMechanism) { + return saslMechanism(Output.of(saslMechanism)); + } + /** * @param saslPassword Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/EndpointKafkaSettings.java b/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/EndpointKafkaSettings.java index 38e892daa1a..357073f656d 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/EndpointKafkaSettings.java +++ b/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/EndpointKafkaSettings.java @@ -64,6 +64,11 @@ public final class EndpointKafkaSettings { * */ private @Nullable Boolean partitionIncludeSchemaTable; + /** + * @return For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + */ + private @Nullable String saslMechanism; /** * @return Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. * @@ -176,6 +181,13 @@ public Optional noHexPrefix() { public Optional partitionIncludeSchemaTable() { return Optional.ofNullable(this.partitionIncludeSchemaTable); } + /** + * @return For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + * + */ + public Optional saslMechanism() { + return Optional.ofNullable(this.saslMechanism); + } /** * @return Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. * @@ -252,6 +264,7 @@ public static final class Builder { private @Nullable Integer messageMaxBytes; private @Nullable Boolean noHexPrefix; private @Nullable Boolean partitionIncludeSchemaTable; + private @Nullable String saslMechanism; private @Nullable String saslPassword; private @Nullable String saslUsername; private @Nullable String securityProtocol; @@ -273,6 +286,7 @@ public Builder(EndpointKafkaSettings defaults) { this.messageMaxBytes = defaults.messageMaxBytes; this.noHexPrefix = defaults.noHexPrefix; this.partitionIncludeSchemaTable = defaults.partitionIncludeSchemaTable; + this.saslMechanism = defaults.saslMechanism; this.saslPassword = defaults.saslPassword; this.saslUsername = defaults.saslUsername; this.securityProtocol = defaults.securityProtocol; @@ -346,6 +360,12 @@ public Builder partitionIncludeSchemaTable(@Nullable Boolean partitionIncludeSch return this; } @CustomType.Setter + public Builder saslMechanism(@Nullable String saslMechanism) { + + this.saslMechanism = saslMechanism; + return this; + } + @CustomType.Setter public Builder saslPassword(@Nullable String saslPassword) { this.saslPassword = saslPassword; @@ -405,6 +425,7 @@ public EndpointKafkaSettings build() { _resultValue.messageMaxBytes = messageMaxBytes; _resultValue.noHexPrefix = noHexPrefix; _resultValue.partitionIncludeSchemaTable = partitionIncludeSchemaTable; + _resultValue.saslMechanism = saslMechanism; _resultValue.saslPassword = saslPassword; _resultValue.saslUsername = saslUsername; _resultValue.securityProtocol = securityProtocol; diff --git a/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/GetEndpointKafkaSetting.java b/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/GetEndpointKafkaSetting.java index 28fff127ae7..3c5bdda8401 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/GetEndpointKafkaSetting.java +++ b/sdk/java/src/main/java/com/pulumi/aws/dms/outputs/GetEndpointKafkaSetting.java @@ -22,6 +22,7 @@ public final class GetEndpointKafkaSetting { private Integer messageMaxBytes; private Boolean noHexPrefix; private Boolean partitionIncludeSchemaTable; + private String saslMechanism; private String saslPassword; private String saslUsername; private String securityProtocol; @@ -62,6 +63,9 @@ public Boolean noHexPrefix() { public Boolean partitionIncludeSchemaTable() { return this.partitionIncludeSchemaTable; } + public String saslMechanism() { + return this.saslMechanism; + } public String saslPassword() { return this.saslPassword; } @@ -106,6 +110,7 @@ public static final class Builder { private Integer messageMaxBytes; private Boolean noHexPrefix; private Boolean partitionIncludeSchemaTable; + private String saslMechanism; private String saslPassword; private String saslUsername; private String securityProtocol; @@ -127,6 +132,7 @@ public Builder(GetEndpointKafkaSetting defaults) { this.messageMaxBytes = defaults.messageMaxBytes; this.noHexPrefix = defaults.noHexPrefix; this.partitionIncludeSchemaTable = defaults.partitionIncludeSchemaTable; + this.saslMechanism = defaults.saslMechanism; this.saslPassword = defaults.saslPassword; this.saslUsername = defaults.saslUsername; this.securityProtocol = defaults.securityProtocol; @@ -218,6 +224,14 @@ public Builder partitionIncludeSchemaTable(Boolean partitionIncludeSchemaTable) return this; } @CustomType.Setter + public Builder saslMechanism(String saslMechanism) { + if (saslMechanism == null) { + throw new MissingRequiredPropertyException("GetEndpointKafkaSetting", "saslMechanism"); + } + this.saslMechanism = saslMechanism; + return this; + } + @CustomType.Setter public Builder saslPassword(String saslPassword) { if (saslPassword == null) { throw new MissingRequiredPropertyException("GetEndpointKafkaSetting", "saslPassword"); @@ -293,6 +307,7 @@ public GetEndpointKafkaSetting build() { _resultValue.messageMaxBytes = messageMaxBytes; _resultValue.noHexPrefix = noHexPrefix; _resultValue.partitionIncludeSchemaTable = partitionIncludeSchemaTable; + _resultValue.saslMechanism = saslMechanism; _resultValue.saslPassword = saslPassword; _resultValue.saslUsername = saslUsername; _resultValue.securityProtocol = securityProtocol; diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociation.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociation.java index 0be846f07dc..c3c58db0b1e 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociation.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociation.java @@ -16,13 +16,11 @@ import javax.annotation.Nullable; /** - * Provides an AWS EIP Association as a top level resource, to associate and - * disassociate Elastic IPs from AWS Instances and Network Interfaces. + * Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. * * > **NOTE:** Do not use this resource to associate an EIP to `aws.lb.LoadBalancer` or `aws.ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. * - * > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either - * pre-existing or distributed to customers or users and therefore cannot be changed. + * > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. * * ## Example Usage * @@ -87,102 +85,98 @@ @ResourceType(type="aws:ec2/eipAssociation:EipAssociation") public class EipAssociation extends com.pulumi.resources.CustomResource { /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ @Export(name="allocationId", refs={String.class}, tree="[0]") private Output allocationId; /** - * @return The allocation ID. This is required for EC2-VPC. + * @return ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ public Output allocationId() { return this.allocationId; } /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ @Export(name="allowReassociation", refs={Boolean.class}, tree="[0]") private Output allowReassociation; /** - * @return Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @return Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ public Output> allowReassociation() { return Codegen.optional(this.allowReassociation); } /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Export(name="instanceId", refs={String.class}, tree="[0]") private Output instanceId; /** - * @return The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @return ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Output instanceId() { return this.instanceId; } /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Export(name="networkInterfaceId", refs={String.class}, tree="[0]") private Output networkInterfaceId; /** - * @return The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @return ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Output networkInterfaceId() { return this.networkInterfaceId; } /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ @Export(name="privateIpAddress", refs={String.class}, tree="[0]") private Output privateIpAddress; /** - * @return The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @return Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ public Output privateIpAddress() { return this.privateIpAddress; } /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. * */ @Export(name="publicIp", refs={String.class}, tree="[0]") private Output publicIp; /** - * @return The Elastic IP address. This is required for EC2-Classic. + * @return ) Address of the associated Elastic IP. * */ public Output publicIp() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociationArgs.java index daf6156e2e7..dfbdbac786f 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/EipAssociationArgs.java @@ -17,14 +17,16 @@ public final class EipAssociationArgs extends com.pulumi.resources.ResourceArgs public static final EipAssociationArgs Empty = new EipAssociationArgs(); /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ @Import(name="allocationId") private @Nullable Output allocationId; /** - * @return The allocation ID. This is required for EC2-VPC. + * @return ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ public Optional> allocationId() { @@ -32,16 +34,16 @@ public Optional> allocationId() { } /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ @Import(name="allowReassociation") private @Nullable Output allowReassociation; /** - * @return Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @return Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ public Optional> allowReassociation() { @@ -49,20 +51,18 @@ public Optional> allowReassociation() { } /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Import(name="instanceId") private @Nullable Output instanceId; /** - * @return The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @return ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Optional> instanceId() { @@ -70,18 +70,18 @@ public Optional> instanceId() { } /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Import(name="networkInterfaceId") private @Nullable Output networkInterfaceId; /** - * @return The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @return ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Optional> networkInterfaceId() { @@ -89,20 +89,16 @@ public Optional> networkInterfaceId() { } /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ @Import(name="privateIpAddress") private @Nullable Output privateIpAddress; /** - * @return The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @return Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ public Optional> privateIpAddress() { @@ -110,14 +106,14 @@ public Optional> privateIpAddress() { } /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. * */ @Import(name="publicIp") private @Nullable Output publicIp; /** - * @return The Elastic IP address. This is required for EC2-Classic. + * @return ) Address of the associated Elastic IP. * */ public Optional> publicIp() { @@ -154,7 +150,8 @@ public Builder(EipAssociationArgs defaults) { } /** - * @param allocationId The allocation ID. This is required for EC2-VPC. + * @param allocationId ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * * @return builder * @@ -165,7 +162,8 @@ public Builder allocationId(@Nullable Output allocationId) { } /** - * @param allocationId The allocation ID. This is required for EC2-VPC. + * @param allocationId ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * * @return builder * @@ -175,8 +173,8 @@ public Builder allocationId(String allocationId) { } /** - * @param allowReassociation Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @param allowReassociation Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * * @return builder * @@ -187,8 +185,8 @@ public Builder allowReassociation(@Nullable Output allowReassociation) } /** - * @param allowReassociation Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @param allowReassociation Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * * @return builder * @@ -198,10 +196,9 @@ public Builder allowReassociation(Boolean allowReassociation) { } /** - * @param instanceId The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @param instanceId ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -212,10 +209,9 @@ public Builder instanceId(@Nullable Output instanceId) { } /** - * @param instanceId The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @param instanceId ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -225,9 +221,9 @@ public Builder instanceId(String instanceId) { } /** - * @param networkInterfaceId The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @param networkInterfaceId ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -238,9 +234,9 @@ public Builder networkInterfaceId(@Nullable Output networkInterfaceId) { } /** - * @param networkInterfaceId The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @param networkInterfaceId ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -250,10 +246,8 @@ public Builder networkInterfaceId(String networkInterfaceId) { } /** - * @param privateIpAddress The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @param privateIpAddress Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * * @return builder * @@ -264,10 +258,8 @@ public Builder privateIpAddress(@Nullable Output privateIpAddress) { } /** - * @param privateIpAddress The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @param privateIpAddress Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * * @return builder * @@ -277,7 +269,7 @@ public Builder privateIpAddress(String privateIpAddress) { } /** - * @param publicIp The Elastic IP address. This is required for EC2-Classic. + * @param publicIp ) Address of the associated Elastic IP. * * @return builder * @@ -288,7 +280,7 @@ public Builder publicIp(@Nullable Output publicIp) { } /** - * @param publicIp The Elastic IP address. This is required for EC2-Classic. + * @param publicIp ) Address of the associated Elastic IP. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptions.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptions.java index 11f331e63ac..8928d28e24b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptions.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptions.java @@ -183,28 +183,28 @@ @ResourceType(type="aws:ec2/peeringConnectionOptions:PeeringConnectionOptions") public class PeeringConnectionOptions extends com.pulumi.resources.CustomResource { /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ @Export(name="accepter", refs={PeeringConnectionOptionsAccepter.class}, tree="[0]") private Output accepter; /** - * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ public Output accepter() { return this.accepter; } /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ @Export(name="requester", refs={PeeringConnectionOptionsRequester.class}, tree="[0]") private Output requester; /** - * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ public Output requester() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptionsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptionsArgs.java index 1e288bcccec..0c8770719db 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptionsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/PeeringConnectionOptionsArgs.java @@ -19,14 +19,14 @@ public final class PeeringConnectionOptionsArgs extends com.pulumi.resources.Res public static final PeeringConnectionOptionsArgs Empty = new PeeringConnectionOptionsArgs(); /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ @Import(name="accepter") private @Nullable Output accepter; /** - * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ public Optional> accepter() { @@ -34,14 +34,14 @@ public Optional> accepter() { } /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ @Import(name="requester") private @Nullable Output requester; /** - * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ public Optional> requester() { @@ -90,7 +90,7 @@ public Builder(PeeringConnectionOptionsArgs defaults) { } /** - * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * * @return builder * @@ -101,7 +101,7 @@ public Builder accepter(@Nullable Output a } /** - * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * * @return builder * @@ -111,7 +111,7 @@ public Builder accepter(PeeringConnectionOptionsAccepterArgs accepter) { } /** - * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * * @return builder * @@ -122,7 +122,7 @@ public Builder requester(@Nullable Output } /** - * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/EipAssociationState.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/EipAssociationState.java index 639511866bb..3421e887094 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/EipAssociationState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/EipAssociationState.java @@ -17,14 +17,16 @@ public final class EipAssociationState extends com.pulumi.resources.ResourceArgs public static final EipAssociationState Empty = new EipAssociationState(); /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ @Import(name="allocationId") private @Nullable Output allocationId; /** - * @return The allocation ID. This is required for EC2-VPC. + * @return ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * */ public Optional> allocationId() { @@ -32,16 +34,16 @@ public Optional> allocationId() { } /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ @Import(name="allowReassociation") private @Nullable Output allowReassociation; /** - * @return Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @return Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * */ public Optional> allowReassociation() { @@ -49,20 +51,18 @@ public Optional> allowReassociation() { } /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Import(name="instanceId") private @Nullable Output instanceId; /** - * @return The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @return ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Optional> instanceId() { @@ -70,18 +70,18 @@ public Optional> instanceId() { } /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ @Import(name="networkInterfaceId") private @Nullable Output networkInterfaceId; /** - * @return The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @return ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * */ public Optional> networkInterfaceId() { @@ -89,20 +89,16 @@ public Optional> networkInterfaceId() { } /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ @Import(name="privateIpAddress") private @Nullable Output privateIpAddress; /** - * @return The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @return Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * */ public Optional> privateIpAddress() { @@ -110,14 +106,14 @@ public Optional> privateIpAddress() { } /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. * */ @Import(name="publicIp") private @Nullable Output publicIp; /** - * @return The Elastic IP address. This is required for EC2-Classic. + * @return ) Address of the associated Elastic IP. * */ public Optional> publicIp() { @@ -154,7 +150,8 @@ public Builder(EipAssociationState defaults) { } /** - * @param allocationId The allocation ID. This is required for EC2-VPC. + * @param allocationId ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * * @return builder * @@ -165,7 +162,8 @@ public Builder allocationId(@Nullable Output allocationId) { } /** - * @param allocationId The allocation ID. This is required for EC2-VPC. + * @param allocationId ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. * * @return builder * @@ -175,8 +173,8 @@ public Builder allocationId(String allocationId) { } /** - * @param allowReassociation Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @param allowReassociation Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * * @return builder * @@ -187,8 +185,8 @@ public Builder allowReassociation(@Nullable Output allowReassociation) } /** - * @param allowReassociation Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * @param allowReassociation Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. * * @return builder * @@ -198,10 +196,9 @@ public Builder allowReassociation(Boolean allowReassociation) { } /** - * @param instanceId The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @param instanceId ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -212,10 +209,9 @@ public Builder instanceId(@Nullable Output instanceId) { } /** - * @param instanceId The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * @param instanceId ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -225,9 +221,9 @@ public Builder instanceId(String instanceId) { } /** - * @param networkInterfaceId The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @param networkInterfaceId ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -238,9 +234,9 @@ public Builder networkInterfaceId(@Nullable Output networkInterfaceId) { } /** - * @param networkInterfaceId The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * @param networkInterfaceId ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. * * @return builder * @@ -250,10 +246,8 @@ public Builder networkInterfaceId(String networkInterfaceId) { } /** - * @param privateIpAddress The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @param privateIpAddress Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * * @return builder * @@ -264,10 +258,8 @@ public Builder privateIpAddress(@Nullable Output privateIpAddress) { } /** - * @param privateIpAddress The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * @param privateIpAddress Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. * * @return builder * @@ -277,7 +269,7 @@ public Builder privateIpAddress(String privateIpAddress) { } /** - * @param publicIp The Elastic IP address. This is required for EC2-Classic. + * @param publicIp ) Address of the associated Elastic IP. * * @return builder * @@ -288,7 +280,7 @@ public Builder publicIp(@Nullable Output publicIp) { } /** - * @param publicIp The Elastic IP address. This is required for EC2-Classic. + * @param publicIp ) Address of the associated Elastic IP. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServiceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServiceArgs.java index 437c6ae8235..6c1f7dc79a3 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServiceArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServiceArgs.java @@ -63,6 +63,21 @@ public Optional> serviceName() { return Optional.ofNullable(this.serviceName); } + /** + * AWS regions in which to look for services. + * + */ + @Import(name="serviceRegions") + private @Nullable Output> serviceRegions; + + /** + * @return AWS regions in which to look for services. + * + */ + public Optional>> serviceRegions() { + return Optional.ofNullable(this.serviceRegions); + } + /** * Service type, `Gateway` or `Interface`. * @@ -103,6 +118,7 @@ private GetVpcEndpointServiceArgs(GetVpcEndpointServiceArgs $) { this.filters = $.filters; this.service = $.service; this.serviceName = $.serviceName; + this.serviceRegions = $.serviceRegions; this.serviceType = $.serviceType; this.tags = $.tags; } @@ -198,6 +214,37 @@ public Builder serviceName(String serviceName) { return serviceName(Output.of(serviceName)); } + /** + * @param serviceRegions AWS regions in which to look for services. + * + * @return builder + * + */ + public Builder serviceRegions(@Nullable Output> serviceRegions) { + $.serviceRegions = serviceRegions; + return this; + } + + /** + * @param serviceRegions AWS regions in which to look for services. + * + * @return builder + * + */ + public Builder serviceRegions(List serviceRegions) { + return serviceRegions(Output.of(serviceRegions)); + } + + /** + * @param serviceRegions AWS regions in which to look for services. + * + * @return builder + * + */ + public Builder serviceRegions(String... serviceRegions) { + return serviceRegions(List.of(serviceRegions)); + } + /** * @param serviceType Service type, `Gateway` or `Interface`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServicePlainArgs.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServicePlainArgs.java index f84d7fcffd5..1946df81252 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServicePlainArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/GetVpcEndpointServicePlainArgs.java @@ -62,6 +62,21 @@ public Optional serviceName() { return Optional.ofNullable(this.serviceName); } + /** + * AWS regions in which to look for services. + * + */ + @Import(name="serviceRegions") + private @Nullable List serviceRegions; + + /** + * @return AWS regions in which to look for services. + * + */ + public Optional> serviceRegions() { + return Optional.ofNullable(this.serviceRegions); + } + /** * Service type, `Gateway` or `Interface`. * @@ -102,6 +117,7 @@ private GetVpcEndpointServicePlainArgs(GetVpcEndpointServicePlainArgs $) { this.filters = $.filters; this.service = $.service; this.serviceName = $.serviceName; + this.serviceRegions = $.serviceRegions; this.serviceType = $.serviceType; this.tags = $.tags; } @@ -167,6 +183,27 @@ public Builder serviceName(@Nullable String serviceName) { return this; } + /** + * @param serviceRegions AWS regions in which to look for services. + * + * @return builder + * + */ + public Builder serviceRegions(@Nullable List serviceRegions) { + $.serviceRegions = serviceRegions; + return this; + } + + /** + * @param serviceRegions AWS regions in which to look for services. + * + * @return builder + * + */ + public Builder serviceRegions(String... serviceRegions) { + return serviceRegions(List.of(serviceRegions)); + } + /** * @param serviceType Service type, `Gateway` or `Interface`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/PeeringConnectionOptionsState.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/PeeringConnectionOptionsState.java index a9e52918aca..26dbea373b9 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/PeeringConnectionOptionsState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/inputs/PeeringConnectionOptionsState.java @@ -18,14 +18,14 @@ public final class PeeringConnectionOptionsState extends com.pulumi.resources.Re public static final PeeringConnectionOptionsState Empty = new PeeringConnectionOptionsState(); /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ @Import(name="accepter") private @Nullable Output accepter; /** - * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @return An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * */ public Optional> accepter() { @@ -33,14 +33,14 @@ public Optional> accepter() { } /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ @Import(name="requester") private @Nullable Output requester; /** - * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @return A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * */ public Optional> requester() { @@ -89,7 +89,7 @@ public Builder(PeeringConnectionOptionsState defaults) { } /** - * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * * @return builder * @@ -100,7 +100,7 @@ public Builder accepter(@Nullable Output a } /** - * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * @param accepter An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). * * @return builder * @@ -110,7 +110,7 @@ public Builder accepter(PeeringConnectionOptionsAccepterArgs accepter) { } /** - * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * * @return builder * @@ -121,7 +121,7 @@ public Builder requester(@Nullable Output } /** - * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * @param requester A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/ec2/outputs/GetVpcEndpointServiceResult.java b/sdk/java/src/main/java/com/pulumi/aws/ec2/outputs/GetVpcEndpointServiceResult.java index 2f40c94d415..b97cffee189 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ec2/outputs/GetVpcEndpointServiceResult.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ec2/outputs/GetVpcEndpointServiceResult.java @@ -27,7 +27,7 @@ public final class GetVpcEndpointServiceResult { */ private String arn; /** - * @return Availability Zones in which the service is available. + * @return Availability Zones in which the service is available. Not available for endpoint services in other regions. * */ private List availabilityZones; @@ -62,6 +62,11 @@ public final class GetVpcEndpointServiceResult { * */ private List privateDnsNames; + /** + * @return Region of the endpoint service. + * + */ + private String region; private @Nullable String service; /** * @return ID of the endpoint service. @@ -69,6 +74,7 @@ public final class GetVpcEndpointServiceResult { */ private String serviceId; private String serviceName; + private @Nullable List serviceRegions; private String serviceType; /** * @return The supported IP address types. @@ -102,7 +108,7 @@ public String arn() { return this.arn; } /** - * @return Availability Zones in which the service is available. + * @return Availability Zones in which the service is available. Not available for endpoint services in other regions. * */ public List availabilityZones() { @@ -153,6 +159,13 @@ public String privateDnsName() { public List privateDnsNames() { return this.privateDnsNames; } + /** + * @return Region of the endpoint service. + * + */ + public String region() { + return this.region; + } public Optional service() { return Optional.ofNullable(this.service); } @@ -166,6 +179,9 @@ public String serviceId() { public String serviceName() { return this.serviceName; } + public List serviceRegions() { + return this.serviceRegions == null ? List.of() : this.serviceRegions; + } public String serviceType() { return this.serviceType; } @@ -210,9 +226,11 @@ public static final class Builder { private String owner; private String privateDnsName; private List privateDnsNames; + private String region; private @Nullable String service; private String serviceId; private String serviceName; + private @Nullable List serviceRegions; private String serviceType; private List supportedIpAddressTypes; private Map tags; @@ -230,9 +248,11 @@ public Builder(GetVpcEndpointServiceResult defaults) { this.owner = defaults.owner; this.privateDnsName = defaults.privateDnsName; this.privateDnsNames = defaults.privateDnsNames; + this.region = defaults.region; this.service = defaults.service; this.serviceId = defaults.serviceId; this.serviceName = defaults.serviceName; + this.serviceRegions = defaults.serviceRegions; this.serviceType = defaults.serviceType; this.supportedIpAddressTypes = defaults.supportedIpAddressTypes; this.tags = defaults.tags; @@ -330,6 +350,14 @@ public Builder privateDnsNames(String... privateDnsNames) { return privateDnsNames(List.of(privateDnsNames)); } @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetVpcEndpointServiceResult", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter public Builder service(@Nullable String service) { this.service = service; @@ -352,6 +380,15 @@ public Builder serviceName(String serviceName) { return this; } @CustomType.Setter + public Builder serviceRegions(@Nullable List serviceRegions) { + + this.serviceRegions = serviceRegions; + return this; + } + public Builder serviceRegions(String... serviceRegions) { + return serviceRegions(List.of(serviceRegions)); + } + @CustomType.Setter public Builder serviceType(String serviceType) { if (serviceType == null) { throw new MissingRequiredPropertyException("GetVpcEndpointServiceResult", "serviceType"); @@ -398,9 +435,11 @@ public GetVpcEndpointServiceResult build() { _resultValue.owner = owner; _resultValue.privateDnsName = privateDnsName; _resultValue.privateDnsNames = privateDnsNames; + _resultValue.region = region; _resultValue.service = service; _resultValue.serviceId = serviceId; _resultValue.serviceName = serviceName; + _resultValue.serviceRegions = serviceRegions; _resultValue.serviceType = serviceType; _resultValue.supportedIpAddressTypes = supportedIpAddressTypes; _resultValue.tags = tags; diff --git a/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSetting.java b/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSetting.java index 83bee1c49da..4dd25de6964 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSetting.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSetting.java @@ -18,6 +18,8 @@ * * ## Example Usage * + * ### Configuring Basic Scanning + * * <!--Start PulumiCodeChooser --> *
  * {@code
@@ -41,9 +43,45 @@
  *     }
  * 
  *     public static void stack(Context ctx) {
- *         var foo = new AccountSetting("foo", AccountSettingArgs.builder()
+ *         var basicScanTypeVersion = new AccountSetting("basicScanTypeVersion", AccountSettingArgs.builder()
  *             .name("BASIC_SCAN_TYPE_VERSION")
- *             .value("CLAIR")
+ *             .value("AWS_NATIVE")
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### Configuring Registry Policy Scope + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.ecr.AccountSetting;
+ * import com.pulumi.aws.ecr.AccountSettingArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var registryPolicyScope = new AccountSetting("registryPolicyScope", AccountSettingArgs.builder()
+ *             .name("REGISTRY_POLICY_SCOPE")
+ *             .value("V2")
  *             .build());
  * 
  *     }
@@ -54,7 +92,7 @@
  * 
  * ## Import
  * 
- * Using `pulumi import`, import EMR Security Configurations using the `name`. For example:
+ * Using `pulumi import`, import EMR Security Configurations using the account setting name. For example:
  * 
  * ```sh
  * $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION
@@ -64,28 +102,32 @@
 @ResourceType(type="aws:ecr/accountSetting:AccountSetting")
 public class AccountSetting extends com.pulumi.resources.CustomResource {
     /**
-     * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     @Export(name="name", refs={String.class}, tree="[0]")
     private Output name;
 
     /**
-     * @return The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * @return Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     public Output name() {
         return this.name;
     }
     /**
-     * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     @Export(name="value", refs={String.class}, tree="[0]")
     private Output value;
 
     /**
-     * @return The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * @return Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     public Output value() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSettingArgs.java b/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSettingArgs.java
index e0dbb29843e..155b6b602d1 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSettingArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/ecr/AccountSettingArgs.java
@@ -17,14 +17,14 @@ public final class AccountSettingArgs extends com.pulumi.resources.ResourceArgs
     public static final AccountSettingArgs Empty = new AccountSettingArgs();
 
     /**
-     * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     @Import(name="name")
     private @Nullable Output name;
 
     /**
-     * @return The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * @return Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     public Optional> name() {
@@ -32,14 +32,18 @@ public Optional> name() {
     }
 
     /**
-     * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     @Import(name="value", required=true)
     private Output value;
 
     /**
-     * @return The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * @return Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     public Output value() {
@@ -72,7 +76,7 @@ public Builder(AccountSettingArgs defaults) {
         }
 
         /**
-         * @param name The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+         * @param name Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
          * 
          * @return builder
          * 
@@ -83,7 +87,7 @@ public Builder name(@Nullable Output name) {
         }
 
         /**
-         * @param name The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+         * @param name Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
          * 
          * @return builder
          * 
@@ -93,7 +97,9 @@ public Builder name(String name) {
         }
 
         /**
-         * @param value The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+         * @param value Setting value that is specified. Valid values are:
+         * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+         * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
          * 
          * @return builder
          * 
@@ -104,7 +110,9 @@ public Builder value(Output value) {
         }
 
         /**
-         * @param value The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+         * @param value Setting value that is specified. Valid values are:
+         * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+         * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/ecr/inputs/AccountSettingState.java b/sdk/java/src/main/java/com/pulumi/aws/ecr/inputs/AccountSettingState.java
index 8cd4589c0f0..6aeab67ea69 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/ecr/inputs/AccountSettingState.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/ecr/inputs/AccountSettingState.java
@@ -16,14 +16,14 @@ public final class AccountSettingState extends com.pulumi.resources.ResourceArgs
     public static final AccountSettingState Empty = new AccountSettingState();
 
     /**
-     * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     @Import(name="name")
     private @Nullable Output name;
 
     /**
-     * @return The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+     * @return Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
      * 
      */
     public Optional> name() {
@@ -31,14 +31,18 @@ public Optional> name() {
     }
 
     /**
-     * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     @Import(name="value")
     private @Nullable Output value;
 
     /**
-     * @return The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+     * @return Setting value that is specified. Valid values are:
+     * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+     * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
      * 
      */
     public Optional> value() {
@@ -71,7 +75,7 @@ public Builder(AccountSettingState defaults) {
         }
 
         /**
-         * @param name The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+         * @param name Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
          * 
          * @return builder
          * 
@@ -82,7 +86,7 @@ public Builder name(@Nullable Output name) {
         }
 
         /**
-         * @param name The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`.
+         * @param name Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`.
          * 
          * @return builder
          * 
@@ -92,7 +96,9 @@ public Builder name(String name) {
         }
 
         /**
-         * @param value The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+         * @param value Setting value that is specified. Valid values are:
+         * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+         * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
          * 
          * @return builder
          * 
@@ -103,7 +109,9 @@ public Builder value(@Nullable Output value) {
         }
 
         /**
-         * @param value The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`.
+         * @param value Setting value that is specified. Valid values are:
+         * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`.
+         * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/ecs/EcsFunctions.java b/sdk/java/src/main/java/com/pulumi/aws/ecs/EcsFunctions.java
index edf27dea51a..d04f932b055 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/ecs/EcsFunctions.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/ecs/EcsFunctions.java
@@ -15,6 +15,7 @@
 import com.pulumi.aws.ecs.inputs.GetTaskExecutionArgs;
 import com.pulumi.aws.ecs.inputs.GetTaskExecutionPlainArgs;
 import com.pulumi.aws.ecs.outputs.GetClusterResult;
+import com.pulumi.aws.ecs.outputs.GetClustersResult;
 import com.pulumi.aws.ecs.outputs.GetContainerDefinitionResult;
 import com.pulumi.aws.ecs.outputs.GetServiceResult;
 import com.pulumi.aws.ecs.outputs.GetTaskDefinitionResult;
@@ -24,6 +25,7 @@
 import com.pulumi.deployment.Deployment;
 import com.pulumi.deployment.InvokeOptions;
 import com.pulumi.deployment.InvokeOutputOptions;
+import com.pulumi.resources.InvokeArgs;
 import java.util.concurrent.CompletableFuture;
 
 public final class EcsFunctions {
@@ -242,6 +244,293 @@ public static Output getCluster(GetClusterArgs args, InvokeOut
     public static CompletableFuture getClusterPlain(GetClusterPlainArgs args, InvokeOptions options) {
         return Deployment.getInstance().invokeAsync("aws:ecs/getCluster:getCluster", TypeShape.of(GetClusterResult.class), args, Utilities.withVersion(options));
     }
+    /**
+     * Data source for managing an AWS ECS (Elastic Container) Clusters.
+     * 
+     * ## Example Usage
+     * 
+     * ### Basic Usage
+     * 
+     * <!--Start PulumiCodeChooser -->
+     * 
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getClusters() { + return getClusters(InvokeArgs.Empty, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getClustersPlain() { + return getClustersPlain(InvokeArgs.Empty, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getClusters(InvokeArgs args) { + return getClusters(args, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getClustersPlain(InvokeArgs args) { + return getClustersPlain(args, InvokeOptions.Empty); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getClusters(InvokeArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("aws:ecs/getClusters:getClusters", TypeShape.of(GetClustersResult.class), args, Utilities.withVersion(options)); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getClusters(InvokeArgs args, InvokeOutputOptions options) { + return Deployment.getInstance().invoke("aws:ecs/getClusters:getClusters", TypeShape.of(GetClustersResult.class), args, Utilities.withVersion(options)); + } + /** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.ecs.EcsFunctions;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var example = EcsFunctions.getClusters();
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getClustersPlain(InvokeArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("aws:ecs/getClusters:getClusters", TypeShape.of(GetClustersResult.class), args, Utilities.withVersion(options)); + } /** * The ECS container definition data source allows access to details of * a specific container within an AWS ECS service. diff --git a/sdk/java/src/main/java/com/pulumi/aws/ecs/outputs/GetClustersResult.java b/sdk/java/src/main/java/com/pulumi/aws/ecs/outputs/GetClustersResult.java new file mode 100644 index 00000000000..bade34e1451 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/ecs/outputs/GetClustersResult.java @@ -0,0 +1,85 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.ecs.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetClustersResult { + /** + * @return List of ECS cluster ARNs associated with the account. + * + */ + private List clusterArns; + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + + private GetClustersResult() {} + /** + * @return List of ECS cluster ARNs associated with the account. + * + */ + public List clusterArns() { + return this.clusterArns; + } + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetClustersResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private List clusterArns; + private String id; + public Builder() {} + public Builder(GetClustersResult defaults) { + Objects.requireNonNull(defaults); + this.clusterArns = defaults.clusterArns; + this.id = defaults.id; + } + + @CustomType.Setter + public Builder clusterArns(List clusterArns) { + if (clusterArns == null) { + throw new MissingRequiredPropertyException("GetClustersResult", "clusterArns"); + } + this.clusterArns = clusterArns; + return this; + } + public Builder clusterArns(String... clusterArns) { + return clusterArns(List.of(clusterArns)); + } + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetClustersResult", "id"); + } + this.id = id; + return this; + } + public GetClustersResult build() { + final var _resultValue = new GetClustersResult(); + _resultValue.clusterArns = clusterArns; + _resultValue.id = id; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroup.java b/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroup.java index d648bf0b21b..df3d4d7218b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroup.java +++ b/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroup.java @@ -7,6 +7,7 @@ import com.pulumi.aws.eks.NodeGroupArgs; import com.pulumi.aws.eks.inputs.NodeGroupState; import com.pulumi.aws.eks.outputs.NodeGroupLaunchTemplate; +import com.pulumi.aws.eks.outputs.NodeGroupNodeRepairConfig; import com.pulumi.aws.eks.outputs.NodeGroupRemoteAccess; import com.pulumi.aws.eks.outputs.NodeGroupResource; import com.pulumi.aws.eks.outputs.NodeGroupScalingConfig; @@ -401,6 +402,20 @@ public Output nodeGroupName() { public Output nodeGroupNamePrefix() { return this.nodeGroupNamePrefix; } + /** + * The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + @Export(name="nodeRepairConfig", refs={NodeGroupNodeRepairConfig.class}, tree="[0]") + private Output nodeRepairConfig; + + /** + * @return The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + public Output nodeRepairConfig() { + return this.nodeRepairConfig; + } /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroupArgs.java b/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroupArgs.java index eb577a87724..ea75933ae61 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroupArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/eks/NodeGroupArgs.java @@ -4,6 +4,7 @@ package com.pulumi.aws.eks; import com.pulumi.aws.eks.inputs.NodeGroupLaunchTemplateArgs; +import com.pulumi.aws.eks.inputs.NodeGroupNodeRepairConfigArgs; import com.pulumi.aws.eks.inputs.NodeGroupRemoteAccessArgs; import com.pulumi.aws.eks.inputs.NodeGroupScalingConfigArgs; import com.pulumi.aws.eks.inputs.NodeGroupTaintArgs; @@ -175,6 +176,21 @@ public Optional> nodeGroupNamePrefix() { return Optional.ofNullable(this.nodeGroupNamePrefix); } + /** + * The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + @Import(name="nodeRepairConfig") + private @Nullable Output nodeRepairConfig; + + /** + * @return The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + public Optional> nodeRepairConfig() { + return Optional.ofNullable(this.nodeRepairConfig); + } + /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. * @@ -327,6 +343,7 @@ private NodeGroupArgs(NodeGroupArgs $) { this.launchTemplate = $.launchTemplate; this.nodeGroupName = $.nodeGroupName; this.nodeGroupNamePrefix = $.nodeGroupNamePrefix; + this.nodeRepairConfig = $.nodeRepairConfig; this.nodeRoleArn = $.nodeRoleArn; this.releaseVersion = $.releaseVersion; this.remoteAccess = $.remoteAccess; @@ -576,6 +593,27 @@ public Builder nodeGroupNamePrefix(String nodeGroupNamePrefix) { return nodeGroupNamePrefix(Output.of(nodeGroupNamePrefix)); } + /** + * @param nodeRepairConfig The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + * @return builder + * + */ + public Builder nodeRepairConfig(@Nullable Output nodeRepairConfig) { + $.nodeRepairConfig = nodeRepairConfig; + return this; + } + + /** + * @param nodeRepairConfig The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + * @return builder + * + */ + public Builder nodeRepairConfig(NodeGroupNodeRepairConfigArgs nodeRepairConfig) { + return nodeRepairConfig(Output.of(nodeRepairConfig)); + } + /** * @param nodeRoleArn Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupNodeRepairConfigArgs.java b/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupNodeRepairConfigArgs.java new file mode 100644 index 00000000000..b8ded1790e1 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupNodeRepairConfigArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.eks.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class NodeGroupNodeRepairConfigArgs extends com.pulumi.resources.ResourceArgs { + + public static final NodeGroupNodeRepairConfigArgs Empty = new NodeGroupNodeRepairConfigArgs(); + + /** + * Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + */ + @Import(name="enabled") + private @Nullable Output enabled; + + /** + * @return Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + */ + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + private NodeGroupNodeRepairConfigArgs() {} + + private NodeGroupNodeRepairConfigArgs(NodeGroupNodeRepairConfigArgs $) { + this.enabled = $.enabled; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NodeGroupNodeRepairConfigArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NodeGroupNodeRepairConfigArgs $; + + public Builder() { + $ = new NodeGroupNodeRepairConfigArgs(); + } + + public Builder(NodeGroupNodeRepairConfigArgs defaults) { + $ = new NodeGroupNodeRepairConfigArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param enabled Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + * @return builder + * + */ + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + public NodeGroupNodeRepairConfigArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupState.java b/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupState.java index eca4cf80ce0..62469e3f6ff 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/eks/inputs/NodeGroupState.java @@ -4,6 +4,7 @@ package com.pulumi.aws.eks.inputs; import com.pulumi.aws.eks.inputs.NodeGroupLaunchTemplateArgs; +import com.pulumi.aws.eks.inputs.NodeGroupNodeRepairConfigArgs; import com.pulumi.aws.eks.inputs.NodeGroupRemoteAccessArgs; import com.pulumi.aws.eks.inputs.NodeGroupResourceArgs; import com.pulumi.aws.eks.inputs.NodeGroupScalingConfigArgs; @@ -190,6 +191,21 @@ public Optional> nodeGroupNamePrefix() { return Optional.ofNullable(this.nodeGroupNamePrefix); } + /** + * The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + @Import(name="nodeRepairConfig") + private @Nullable Output nodeRepairConfig; + + /** + * @return The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + */ + public Optional> nodeRepairConfig() { + return Optional.ofNullable(this.nodeRepairConfig); + } + /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. * @@ -396,6 +412,7 @@ private NodeGroupState(NodeGroupState $) { this.launchTemplate = $.launchTemplate; this.nodeGroupName = $.nodeGroupName; this.nodeGroupNamePrefix = $.nodeGroupNamePrefix; + this.nodeRepairConfig = $.nodeRepairConfig; this.nodeRoleArn = $.nodeRoleArn; this.releaseVersion = $.releaseVersion; this.remoteAccess = $.remoteAccess; @@ -669,6 +686,27 @@ public Builder nodeGroupNamePrefix(String nodeGroupNamePrefix) { return nodeGroupNamePrefix(Output.of(nodeGroupNamePrefix)); } + /** + * @param nodeRepairConfig The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + * @return builder + * + */ + public Builder nodeRepairConfig(@Nullable Output nodeRepairConfig) { + $.nodeRepairConfig = nodeRepairConfig; + return this; + } + + /** + * @param nodeRepairConfig The node auto repair configuration for the node group. See `node_repair_config` below for details. + * + * @return builder + * + */ + public Builder nodeRepairConfig(NodeGroupNodeRepairConfigArgs nodeRepairConfig) { + return nodeRepairConfig(Output.of(nodeRepairConfig)); + } + /** * @param nodeRoleArn Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/eks/outputs/NodeGroupNodeRepairConfig.java b/sdk/java/src/main/java/com/pulumi/aws/eks/outputs/NodeGroupNodeRepairConfig.java new file mode 100644 index 00000000000..90aa8b78daf --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/eks/outputs/NodeGroupNodeRepairConfig.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.eks.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.Boolean; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class NodeGroupNodeRepairConfig { + /** + * @return Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + */ + private @Nullable Boolean enabled; + + private NodeGroupNodeRepairConfig() {} + /** + * @return Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + * + */ + public Optional enabled() { + return Optional.ofNullable(this.enabled); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(NodeGroupNodeRepairConfig defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Boolean enabled; + public Builder() {} + public Builder(NodeGroupNodeRepairConfig defaults) { + Objects.requireNonNull(defaults); + this.enabled = defaults.enabled; + } + + @CustomType.Setter + public Builder enabled(@Nullable Boolean enabled) { + + this.enabled = enabled; + return this; + } + public NodeGroupNodeRepairConfig build() { + final var _resultValue = new NodeGroupNodeRepairConfig(); + _resultValue.enabled = enabled; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/User.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/User.java index 6807b45ffc6..93259f2e2b1 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/User.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/User.java @@ -198,14 +198,14 @@ public Output authenticationMode() { return this.authenticationMode; } /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. * */ @Export(name="engine", refs={String.class}, tree="[0]") private Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported values are `REDIS`, `VALKEY`. * */ public Output engine() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserArgs.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserArgs.java index 7de4bb3e04d..f9108e6af1d 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserArgs.java @@ -51,14 +51,14 @@ public Optional> authenticationMode() { } /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. * */ @Import(name="engine", required=true) private Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported values are `REDIS`, `VALKEY`. * */ public Output engine() { @@ -218,7 +218,7 @@ public Builder authenticationMode(UserAuthenticationModeArgs authenticationMode) } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported values are `REDIS`, `VALKEY`. * * @return builder * @@ -229,7 +229,7 @@ public Builder engine(Output engine) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported values are `REDIS`, `VALKEY`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroup.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroup.java index 5c1ac95d0cb..1aa323a7287 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroup.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroup.java @@ -92,14 +92,14 @@ public Output arn() { return this.arn; } /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. * */ @Export(name="engine", refs={String.class}, tree="[0]") private Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported value are `REDIS`, `VALKEY`. * */ public Output engine() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroupArgs.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroupArgs.java index 75448bb9ecf..0fc8d3c92a0 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroupArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/UserGroupArgs.java @@ -19,14 +19,14 @@ public final class UserGroupArgs extends com.pulumi.resources.ResourceArgs { public static final UserGroupArgs Empty = new UserGroupArgs(); /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. * */ @Import(name="engine", required=true) private Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported value are `REDIS`, `VALKEY`. * */ public Output engine() { @@ -110,7 +110,7 @@ public Builder(UserGroupArgs defaults) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported value are `REDIS`, `VALKEY`. * * @return builder * @@ -121,7 +121,7 @@ public Builder engine(Output engine) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported value are `REDIS`, `VALKEY`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserGroupState.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserGroupState.java index 00aa7896d49..c36230125c9 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserGroupState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserGroupState.java @@ -33,14 +33,14 @@ public Optional> arn() { } /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. * */ @Import(name="engine") private @Nullable Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported value are `REDIS`, `VALKEY`. * */ public Optional> engine() { @@ -170,7 +170,7 @@ public Builder arn(String arn) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported value are `REDIS`, `VALKEY`. * * @return builder * @@ -181,7 +181,7 @@ public Builder engine(@Nullable Output engine) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported value are `REDIS`, `VALKEY`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserState.java b/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserState.java index e69b861c99f..599c0130c00 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/elasticache/inputs/UserState.java @@ -65,14 +65,14 @@ public Optional> authenticationMode() { } /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. * */ @Import(name="engine") private @Nullable Output engine; /** - * @return The current supported value is `REDIS`. + * @return The current supported values are `REDIS`, `VALKEY`. * */ public Optional> engine() { @@ -274,7 +274,7 @@ public Builder authenticationMode(UserAuthenticationModeArgs authenticationMode) } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported values are `REDIS`, `VALKEY`. * * @return builder * @@ -285,7 +285,7 @@ public Builder engine(@Nullable Output engine) { } /** - * @param engine The current supported value is `REDIS`. + * @param engine The current supported values are `REDIS`, `VALKEY`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/emr/Studio.java b/sdk/java/src/main/java/com/pulumi/aws/emr/Studio.java index 66371e397cd..ff36acff53f 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/emr/Studio.java +++ b/sdk/java/src/main/java/com/pulumi/aws/emr/Studio.java @@ -129,6 +129,20 @@ public Output defaultS3Location() { public Output> description() { return Codegen.optional(this.description); } + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + @Export(name="encryptionKeyArn", refs={String.class}, tree="[0]") + private Output encryptionKeyArn; + + /** + * @return The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + public Output> encryptionKeyArn() { + return Codegen.optional(this.encryptionKeyArn); + } /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/emr/StudioArgs.java b/sdk/java/src/main/java/com/pulumi/aws/emr/StudioArgs.java index 9de9169b4f8..5b48d430c55 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/emr/StudioArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/emr/StudioArgs.java @@ -63,6 +63,21 @@ public Optional> description() { return Optional.ofNullable(this.description); } + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + @Import(name="encryptionKeyArn") + private @Nullable Output encryptionKeyArn; + + /** + * @return The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + public Optional> encryptionKeyArn() { + return Optional.ofNullable(this.encryptionKeyArn); + } + /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. * @@ -223,6 +238,7 @@ private StudioArgs(StudioArgs $) { this.authMode = $.authMode; this.defaultS3Location = $.defaultS3Location; this.description = $.description; + this.encryptionKeyArn = $.encryptionKeyArn; this.engineSecurityGroupId = $.engineSecurityGroupId; this.idpAuthUrl = $.idpAuthUrl; this.idpRelayStateParameterName = $.idpRelayStateParameterName; @@ -316,6 +332,27 @@ public Builder description(String description) { return description(Output.of(description)); } + /** + * @param encryptionKeyArn The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + * @return builder + * + */ + public Builder encryptionKeyArn(@Nullable Output encryptionKeyArn) { + $.encryptionKeyArn = encryptionKeyArn; + return this; + } + + /** + * @param encryptionKeyArn The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + * @return builder + * + */ + public Builder encryptionKeyArn(String encryptionKeyArn) { + return encryptionKeyArn(Output.of(encryptionKeyArn)); + } + /** * @param engineSecurityGroupId The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/emr/inputs/StudioState.java b/sdk/java/src/main/java/com/pulumi/aws/emr/inputs/StudioState.java index 7f0cf8ee154..2f4420ff4c4 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/emr/inputs/StudioState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/emr/inputs/StudioState.java @@ -77,6 +77,21 @@ public Optional> description() { return Optional.ofNullable(this.description); } + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + @Import(name="encryptionKeyArn") + private @Nullable Output encryptionKeyArn; + + /** + * @return The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + */ + public Optional> encryptionKeyArn() { + return Optional.ofNullable(this.encryptionKeyArn); + } + /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. * @@ -272,6 +287,7 @@ private StudioState(StudioState $) { this.authMode = $.authMode; this.defaultS3Location = $.defaultS3Location; this.description = $.description; + this.encryptionKeyArn = $.encryptionKeyArn; this.engineSecurityGroupId = $.engineSecurityGroupId; this.idpAuthUrl = $.idpAuthUrl; this.idpRelayStateParameterName = $.idpRelayStateParameterName; @@ -388,6 +404,27 @@ public Builder description(String description) { return description(Output.of(description)); } + /** + * @param encryptionKeyArn The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + * @return builder + * + */ + public Builder encryptionKeyArn(@Nullable Output encryptionKeyArn) { + $.encryptionKeyArn = encryptionKeyArn; + return this; + } + + /** + * @param encryptionKeyArn The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + * + * @return builder + * + */ + public Builder encryptionKeyArn(String encryptionKeyArn) { + return encryptionKeyArn(Output.of(encryptionKeyArn)); + } + /** * @param engineSecurityGroupId The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/fsx/WindowsFileSystem.java b/sdk/java/src/main/java/com/pulumi/aws/fsx/WindowsFileSystem.java index d3d86e7e049..8ced77434ab 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/fsx/WindowsFileSystem.java +++ b/sdk/java/src/main/java/com/pulumi/aws/fsx/WindowsFileSystem.java @@ -58,9 +58,9 @@ * var example = new WindowsFileSystem("example", WindowsFileSystemArgs.builder() * .activeDirectoryId(exampleAwsDirectoryServiceDirectory.id()) * .kmsKeyId(exampleAwsKmsKey.arn()) - * .storageCapacity(300) + * .storageCapacity(32) * .subnetIds(exampleAwsSubnet.id()) - * .throughputCapacity(1024) + * .throughputCapacity(32) * .build()); * * } @@ -99,9 +99,9 @@ * public static void stack(Context ctx) { * var example = new WindowsFileSystem("example", WindowsFileSystemArgs.builder() * .kmsKeyId(exampleAwsKmsKey.arn()) - * .storageCapacity(300) + * .storageCapacity(32) * .subnetIds(exampleAwsSubnet.id()) - * .throughputCapacity(1024) + * .throughputCapacity(32) * .selfManagedActiveDirectory(WindowsFileSystemSelfManagedActiveDirectoryArgs.builder() * .dnsIps( * "10.0.0.111", diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfiguration.java index 3be9adffac6..c1a6fdf9cff 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfiguration.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfiguration.java @@ -130,14 +130,14 @@ public Output autoEnableOrganizationMembers() { return this.autoEnableOrganizationMembers; } /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ @Export(name="datasources", refs={OrganizationConfigurationDatasources.class}, tree="[0]") private Output datasources; /** - * @return Configuration for the collected datasources. + * @return Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ public Output datasources() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfigurationArgs.java index b15f9b300ca..e8cb3eb0fed 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfigurationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/OrganizationConfigurationArgs.java @@ -57,14 +57,14 @@ public Optional> autoEnableOrganizationMembers() { } /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ @Import(name="datasources") private @Nullable Output datasources; /** - * @return Configuration for the collected datasources. + * @return Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ public Optional> datasources() { @@ -164,7 +164,7 @@ public Builder autoEnableOrganizationMembers(String autoEnableOrganizationMember } /** - * @param datasources Configuration for the collected datasources. + * @param datasources Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * * @return builder * @@ -175,7 +175,7 @@ public Builder datasources(@Nullable Output> autoEnableOrganizationMembers() { } /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ @Import(name="datasources") private @Nullable Output datasources; /** - * @return Configuration for the collected datasources. + * @return Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * */ public Optional> datasources() { @@ -163,7 +163,7 @@ public Builder autoEnableOrganizationMembers(String autoEnableOrganizationMember } /** - * @param datasources Configuration for the collected datasources. + * @param datasources Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. * * @return builder * @@ -174,7 +174,7 @@ public Builder datasources(@Nullable Output + * {@code + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.aws.lb.TrustStore; + * import com.pulumi.aws.lb.TrustStoreArgs; + * import com.pulumi.aws.lb.Listener; + * import com.pulumi.aws.lb.ListenerArgs; + * import com.pulumi.aws.lb.inputs.ListenerDefaultActionArgs; + * import com.pulumi.aws.lb.inputs.ListenerMutualAuthenticationArgs; + * import java.util.List; + * import java.util.ArrayList; + * import java.util.Map; + * import java.io.File; + * import java.nio.file.Files; + * import java.nio.file.Paths; + * + * public class App { + * public static void main(String[] args) { + * Pulumi.run(App::stack); + * } + * + * public static void stack(Context ctx) { + * var test = new TrustStore("test", TrustStoreArgs.builder() + * .name("tf-example-lb-ts") + * .caCertificatesBundleS3Bucket("...") + * .caCertificatesBundleS3Key("...") + * .build()); + * + * var example = new Listener("example", ListenerArgs.builder() + * .loadBalancerArn(exampleAwsLb.id()) + * .defaultActions(ListenerDefaultActionArgs.builder() + * .targetGroupArn(exampleAwsLbTargetGroup.id()) + * .type("forward") + * .build()) + * .mutualAuthentication(ListenerMutualAuthenticationArgs.builder() + * .mode("verify") + * .trustStoreArn(test.arn()) + * .build()) + * .build()); + * + * } + * } + * } + *
+ * <!--End PulumiCodeChooser --> + * * ## Import * * Using `pulumi import`, import Target Groups using their ARN. For example: diff --git a/sdk/java/src/main/java/com/pulumi/aws/msk/Replicator.java b/sdk/java/src/main/java/com/pulumi/aws/msk/Replicator.java index 82f6e46e10e..ffd8978667a 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/msk/Replicator.java +++ b/sdk/java/src/main/java/com/pulumi/aws/msk/Replicator.java @@ -80,7 +80,9 @@ * .targetKafkaClusterArn(target.arn()) * .targetCompressionType("NONE") * .topicReplications(ReplicatorReplicationInfoListTopicReplicationArgs.builder() - * .topicConfigurationName(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference)) + * .topicNameConfiguration(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.builder() + * .type("PREFIXED_WITH_SOURCE_CLUSTER_ALIAS") + * .build()) * .topicsToReplicates(".*") * .startingPosition(ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs.builder() * .type("LATEST") diff --git a/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationArgs.java index 2b5c66a37db..0624a6d762b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationArgs.java @@ -80,9 +80,17 @@ public Optional topicNameConfiguration; + /** + * @return Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + * + */ public Optional> topicNameConfiguration() { return Optional.ofNullable(this.topicNameConfiguration); } @@ -231,11 +239,23 @@ public Builder startingPosition(ReplicatorReplicationInfoListTopicReplicationSta return startingPosition(Output.of(startingPosition)); } + /** + * @param topicNameConfiguration Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + * + * @return builder + * + */ public Builder topicNameConfiguration(@Nullable Output topicNameConfiguration) { $.topicNameConfiguration = topicNameConfiguration; return this; } + /** + * @param topicNameConfiguration Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + * + * @return builder + * + */ public Builder topicNameConfiguration(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs topicNameConfiguration) { return topicNameConfiguration(Output.of(topicNameConfiguration)); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.java index 8c4e017ac55..1e107e1f26a 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/msk/inputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs.java @@ -15,9 +15,17 @@ public final class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigu public static final ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs Empty = new ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs(); + /** + * The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + */ @Import(name="type") private @Nullable Output type; + /** + * @return The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + */ public Optional> type() { return Optional.ofNullable(this.type); } @@ -46,11 +54,23 @@ public Builder(ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurati $ = new ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs(Objects.requireNonNull(defaults)); } + /** + * @param type The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + * @return builder + * + */ public Builder type(@Nullable Output type) { $.type = type; return this; } + /** + * @param type The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + * @return builder + * + */ public Builder type(String type) { return type(Output.of(type)); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplication.java b/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplication.java index 9cc47f10e4d..d585e743967 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplication.java +++ b/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplication.java @@ -36,6 +36,10 @@ public final class ReplicatorReplicationInfoListTopicReplication { * */ private @Nullable ReplicatorReplicationInfoListTopicReplicationStartingPosition startingPosition; + /** + * @return Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + * + */ private @Nullable ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration topicNameConfiguration; /** * @return List of regular expression patterns indicating the topics that should not be replica. @@ -77,6 +81,10 @@ public Optional detectAndCopyNewTopics() { public Optional startingPosition() { return Optional.ofNullable(this.startingPosition); } + /** + * @return Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + * + */ public Optional topicNameConfiguration() { return Optional.ofNullable(this.topicNameConfiguration); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.java index 082c54ac297..6da1b2f5164 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.java +++ b/sdk/java/src/main/java/com/pulumi/aws/msk/outputs/ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration.java @@ -11,9 +11,17 @@ @CustomType public final class ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration { + /** + * @return The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + */ private @Nullable String type; private ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration() {} + /** + * @return The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + * + */ public Optional type() { return Optional.ofNullable(this.type); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/quicksight/User.java b/sdk/java/src/main/java/com/pulumi/aws/quicksight/User.java index 4e77089194a..d1ac34fa646 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/quicksight/User.java +++ b/sdk/java/src/main/java/com/pulumi/aws/quicksight/User.java @@ -19,6 +19,8 @@ * * ## Example Usage * + * ### Create User With IAM Identity Type Using an IAM Role + * * <!--Start PulumiCodeChooser --> *
  * {@code
@@ -43,12 +45,88 @@
  * 
  *     public static void stack(Context ctx) }{{@code
  *         var example = new User("example", UserArgs.builder()
- *             .sessionName("an-author")
- *             .email("author}{@literal @}{@code example.com")
- *             .namespace("foo")
+ *             .email("author1}{@literal @}{@code example.com")
  *             .identityType("IAM")
- *             .iamArn("arn:aws:iam::123456789012:user/Example")
  *             .userRole("AUTHOR")
+ *             .iamArn("arn:aws:iam::123456789012:role/AuthorRole")
+ *             .sessionName("author1")
+ *             .build());
+ * 
+ *     }}{@code
+ * }}{@code
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### Create User With IAM Identity Type Using an IAM User + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.quicksight.User;
+ * import com.pulumi.aws.quicksight.UserArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App }{{@code
+ *     public static void main(String[] args) }{{@code
+ *         Pulumi.run(App::stack);
+ *     }}{@code
+ * 
+ *     public static void stack(Context ctx) }{{@code
+ *         var example = new User("example", UserArgs.builder()
+ *             .email("authorpro1}{@literal @}{@code example.com")
+ *             .identityType("IAM")
+ *             .userRole("AUTHOR_PRO")
+ *             .iamArn("arn:aws:iam::123456789012:user/authorpro1")
+ *             .build());
+ * 
+ *     }}{@code
+ * }}{@code
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### Create User With QuickSight Identity Type in Non-Default Namespace + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.quicksight.User;
+ * import com.pulumi.aws.quicksight.UserArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App }{{@code
+ *     public static void main(String[] args) }{{@code
+ *         Pulumi.run(App::stack);
+ *     }}{@code
+ * 
+ *     public static void stack(Context ctx) }{{@code
+ *         var example = new User("example", UserArgs.builder()
+ *             .email("reader1}{@literal @}{@code example.com")
+ *             .identityType("QUICKSIGHT")
+ *             .userRole("READER")
+ *             .namespace("example")
+ *             .userName("reader1")
  *             .build());
  * 
  *     }}{@code
@@ -65,70 +143,70 @@
 @ResourceType(type="aws:quicksight/user:User")
 public class User extends com.pulumi.resources.CustomResource {
     /**
-     * Amazon Resource Name (ARN) of the user
+     * Amazon Resource Name (ARN) for the user.
      * 
      */
     @Export(name="arn", refs={String.class}, tree="[0]")
     private Output arn;
 
     /**
-     * @return Amazon Resource Name (ARN) of the user
+     * @return Amazon Resource Name (ARN) for the user.
      * 
      */
     public Output arn() {
         return this.arn;
     }
     /**
-     * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     @Export(name="awsAccountId", refs={String.class}, tree="[0]")
     private Output awsAccountId;
 
     /**
-     * @return The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * @return ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     public Output awsAccountId() {
         return this.awsAccountId;
     }
     /**
-     * The email address of the user that you want to register.
+     * Email address of the user that you want to register.
      * 
      */
     @Export(name="email", refs={String.class}, tree="[0]")
     private Output email;
 
     /**
-     * @return The email address of the user that you want to register.
+     * @return Email address of the user that you want to register.
      * 
      */
     public Output email() {
         return this.email;
     }
     /**
-     * The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     @Export(name="iamArn", refs={String.class}, tree="[0]")
     private Output iamArn;
 
     /**
-     * @return The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * @return ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     public Output> iamArn() {
         return Codegen.optional(this.iamArn);
     }
     /**
-     * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     @Export(name="identityType", refs={String.class}, tree="[0]")
     private Output identityType;
 
     /**
-     * @return Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * @return Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     public Output identityType() {
@@ -149,42 +227,60 @@ public Output> namespace() {
         return Codegen.optional(this.namespace);
     }
     /**
-     * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     @Export(name="sessionName", refs={String.class}, tree="[0]")
     private Output sessionName;
 
     /**
-     * @return The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * @return Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     public Output> sessionName() {
         return Codegen.optional(this.sessionName);
     }
     /**
-     * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+     * 
+     */
+    @Export(name="userInvitationUrl", refs={String.class}, tree="[0]")
+    private Output userInvitationUrl;
+
+    /**
+     * @return URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+     * 
+     */
+    public Output userInvitationUrl() {
+        return this.userInvitationUrl;
+    }
+    /**
+     * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     @Export(name="userName", refs={String.class}, tree="[0]")
     private Output userName;
 
     /**
-     * @return The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * @return Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     public Output> userName() {
         return Codegen.optional(this.userName);
     }
     /**
-     * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     @Export(name="userRole", refs={String.class}, tree="[0]")
     private Output userRole;
 
     /**
-     * @return The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * @return Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     public Output userRole() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/quicksight/UserArgs.java b/sdk/java/src/main/java/com/pulumi/aws/quicksight/UserArgs.java
index 029949bee5b..08f8acf527b 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/quicksight/UserArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/quicksight/UserArgs.java
@@ -17,14 +17,14 @@ public final class UserArgs extends com.pulumi.resources.ResourceArgs {
     public static final UserArgs Empty = new UserArgs();
 
     /**
-     * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     @Import(name="awsAccountId")
     private @Nullable Output awsAccountId;
 
     /**
-     * @return The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * @return ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     public Optional> awsAccountId() {
@@ -32,14 +32,14 @@ public Optional> awsAccountId() {
     }
 
     /**
-     * The email address of the user that you want to register.
+     * Email address of the user that you want to register.
      * 
      */
     @Import(name="email", required=true)
     private Output email;
 
     /**
-     * @return The email address of the user that you want to register.
+     * @return Email address of the user that you want to register.
      * 
      */
     public Output email() {
@@ -47,14 +47,14 @@ public Output email() {
     }
 
     /**
-     * The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     @Import(name="iamArn")
     private @Nullable Output iamArn;
 
     /**
-     * @return The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * @return ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     public Optional> iamArn() {
@@ -62,14 +62,14 @@ public Optional> iamArn() {
     }
 
     /**
-     * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     @Import(name="identityType", required=true)
     private Output identityType;
 
     /**
-     * @return Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * @return Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     public Output identityType() {
@@ -92,14 +92,14 @@ public Optional> namespace() {
     }
 
     /**
-     * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     @Import(name="sessionName")
     private @Nullable Output sessionName;
 
     /**
-     * @return The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * @return Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     public Optional> sessionName() {
@@ -107,14 +107,14 @@ public Optional> sessionName() {
     }
 
     /**
-     * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     @Import(name="userName")
     private @Nullable Output userName;
 
     /**
-     * @return The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * @return Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     public Optional> userName() {
@@ -122,14 +122,18 @@ public Optional> userName() {
     }
 
     /**
-     * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     @Import(name="userRole", required=true)
     private Output userRole;
 
     /**
-     * @return The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * @return Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     public Output userRole() {
@@ -168,7 +172,7 @@ public Builder(UserArgs defaults) {
         }
 
         /**
-         * @param awsAccountId The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+         * @param awsAccountId ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
          * 
          * @return builder
          * 
@@ -179,7 +183,7 @@ public Builder awsAccountId(@Nullable Output awsAccountId) {
         }
 
         /**
-         * @param awsAccountId The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+         * @param awsAccountId ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
          * 
          * @return builder
          * 
@@ -189,7 +193,7 @@ public Builder awsAccountId(String awsAccountId) {
         }
 
         /**
-         * @param email The email address of the user that you want to register.
+         * @param email Email address of the user that you want to register.
          * 
          * @return builder
          * 
@@ -200,7 +204,7 @@ public Builder email(Output email) {
         }
 
         /**
-         * @param email The email address of the user that you want to register.
+         * @param email Email address of the user that you want to register.
          * 
          * @return builder
          * 
@@ -210,7 +214,7 @@ public Builder email(String email) {
         }
 
         /**
-         * @param iamArn The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+         * @param iamArn ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
          * 
          * @return builder
          * 
@@ -221,7 +225,7 @@ public Builder iamArn(@Nullable Output iamArn) {
         }
 
         /**
-         * @param iamArn The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+         * @param iamArn ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
          * 
          * @return builder
          * 
@@ -231,7 +235,7 @@ public Builder iamArn(String iamArn) {
         }
 
         /**
-         * @param identityType Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+         * @param identityType Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -242,7 +246,7 @@ public Builder identityType(Output identityType) {
         }
 
         /**
-         * @param identityType Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+         * @param identityType Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -273,7 +277,7 @@ public Builder namespace(String namespace) {
         }
 
         /**
-         * @param sessionName The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+         * @param sessionName Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
          * 
          * @return builder
          * 
@@ -284,7 +288,7 @@ public Builder sessionName(@Nullable Output sessionName) {
         }
 
         /**
-         * @param sessionName The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+         * @param sessionName Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
          * 
          * @return builder
          * 
@@ -294,7 +298,7 @@ public Builder sessionName(String sessionName) {
         }
 
         /**
-         * @param userName The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+         * @param userName Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -305,7 +309,7 @@ public Builder userName(@Nullable Output userName) {
         }
 
         /**
-         * @param userName The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+         * @param userName Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -315,7 +319,9 @@ public Builder userName(String userName) {
         }
 
         /**
-         * @param userRole The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+         * @param userRole Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+         * 
+         * The following arguments are optional:
          * 
          * @return builder
          * 
@@ -326,7 +332,9 @@ public Builder userRole(Output userRole) {
         }
 
         /**
-         * @param userRole The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+         * @param userRole Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+         * 
+         * The following arguments are optional:
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/quicksight/inputs/UserState.java b/sdk/java/src/main/java/com/pulumi/aws/quicksight/inputs/UserState.java
index b54ed493bb7..b2f9a6f0d3c 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/quicksight/inputs/UserState.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/quicksight/inputs/UserState.java
@@ -16,14 +16,14 @@ public final class UserState extends com.pulumi.resources.ResourceArgs {
     public static final UserState Empty = new UserState();
 
     /**
-     * Amazon Resource Name (ARN) of the user
+     * Amazon Resource Name (ARN) for the user.
      * 
      */
     @Import(name="arn")
     private @Nullable Output arn;
 
     /**
-     * @return Amazon Resource Name (ARN) of the user
+     * @return Amazon Resource Name (ARN) for the user.
      * 
      */
     public Optional> arn() {
@@ -31,14 +31,14 @@ public Optional> arn() {
     }
 
     /**
-     * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     @Import(name="awsAccountId")
     private @Nullable Output awsAccountId;
 
     /**
-     * @return The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+     * @return ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
      * 
      */
     public Optional> awsAccountId() {
@@ -46,14 +46,14 @@ public Optional> awsAccountId() {
     }
 
     /**
-     * The email address of the user that you want to register.
+     * Email address of the user that you want to register.
      * 
      */
     @Import(name="email")
     private @Nullable Output email;
 
     /**
-     * @return The email address of the user that you want to register.
+     * @return Email address of the user that you want to register.
      * 
      */
     public Optional> email() {
@@ -61,14 +61,14 @@ public Optional> email() {
     }
 
     /**
-     * The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     @Import(name="iamArn")
     private @Nullable Output iamArn;
 
     /**
-     * @return The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+     * @return ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
      * 
      */
     public Optional> iamArn() {
@@ -76,14 +76,14 @@ public Optional> iamArn() {
     }
 
     /**
-     * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     @Import(name="identityType")
     private @Nullable Output identityType;
 
     /**
-     * @return Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+     * @return Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
      * 
      */
     public Optional> identityType() {
@@ -106,14 +106,14 @@ public Optional> namespace() {
     }
 
     /**
-     * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     @Import(name="sessionName")
     private @Nullable Output sessionName;
 
     /**
-     * @return The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+     * @return Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
      * 
      */
     public Optional> sessionName() {
@@ -121,14 +121,29 @@ public Optional> sessionName() {
     }
 
     /**
-     * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+     * 
+     */
+    @Import(name="userInvitationUrl")
+    private @Nullable Output userInvitationUrl;
+
+    /**
+     * @return URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+     * 
+     */
+    public Optional> userInvitationUrl() {
+        return Optional.ofNullable(this.userInvitationUrl);
+    }
+
+    /**
+     * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     @Import(name="userName")
     private @Nullable Output userName;
 
     /**
-     * @return The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+     * @return Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
      * 
      */
     public Optional> userName() {
@@ -136,14 +151,18 @@ public Optional> userName() {
     }
 
     /**
-     * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     @Import(name="userRole")
     private @Nullable Output userRole;
 
     /**
-     * @return The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+     * @return Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+     * 
+     * The following arguments are optional:
      * 
      */
     public Optional> userRole() {
@@ -160,6 +179,7 @@ private UserState(UserState $) {
         this.identityType = $.identityType;
         this.namespace = $.namespace;
         this.sessionName = $.sessionName;
+        this.userInvitationUrl = $.userInvitationUrl;
         this.userName = $.userName;
         this.userRole = $.userRole;
     }
@@ -183,7 +203,7 @@ public Builder(UserState defaults) {
         }
 
         /**
-         * @param arn Amazon Resource Name (ARN) of the user
+         * @param arn Amazon Resource Name (ARN) for the user.
          * 
          * @return builder
          * 
@@ -194,7 +214,7 @@ public Builder arn(@Nullable Output arn) {
         }
 
         /**
-         * @param arn Amazon Resource Name (ARN) of the user
+         * @param arn Amazon Resource Name (ARN) for the user.
          * 
          * @return builder
          * 
@@ -204,7 +224,7 @@ public Builder arn(String arn) {
         }
 
         /**
-         * @param awsAccountId The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+         * @param awsAccountId ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
          * 
          * @return builder
          * 
@@ -215,7 +235,7 @@ public Builder awsAccountId(@Nullable Output awsAccountId) {
         }
 
         /**
-         * @param awsAccountId The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account.
+         * @param awsAccountId ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account.
          * 
          * @return builder
          * 
@@ -225,7 +245,7 @@ public Builder awsAccountId(String awsAccountId) {
         }
 
         /**
-         * @param email The email address of the user that you want to register.
+         * @param email Email address of the user that you want to register.
          * 
          * @return builder
          * 
@@ -236,7 +256,7 @@ public Builder email(@Nullable Output email) {
         }
 
         /**
-         * @param email The email address of the user that you want to register.
+         * @param email Email address of the user that you want to register.
          * 
          * @return builder
          * 
@@ -246,7 +266,7 @@ public Builder email(String email) {
         }
 
         /**
-         * @param iamArn The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+         * @param iamArn ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
          * 
          * @return builder
          * 
@@ -257,7 +277,7 @@ public Builder iamArn(@Nullable Output iamArn) {
         }
 
         /**
-         * @param iamArn The ARN of the IAM user or role that you are registering with Amazon QuickSight.
+         * @param iamArn ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`.
          * 
          * @return builder
          * 
@@ -267,7 +287,7 @@ public Builder iamArn(String iamArn) {
         }
 
         /**
-         * @param identityType Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+         * @param identityType Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -278,7 +298,7 @@ public Builder identityType(@Nullable Output identityType) {
         }
 
         /**
-         * @param identityType Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either  `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified.
+         * @param identityType Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -309,7 +329,7 @@ public Builder namespace(String namespace) {
         }
 
         /**
-         * @param sessionName The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+         * @param sessionName Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
          * 
          * @return builder
          * 
@@ -320,7 +340,7 @@ public Builder sessionName(@Nullable Output sessionName) {
         }
 
         /**
-         * @param sessionName The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
+         * @param sessionName Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name.
          * 
          * @return builder
          * 
@@ -330,7 +350,28 @@ public Builder sessionName(String sessionName) {
         }
 
         /**
-         * @param userName The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+         * @param userInvitationUrl URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder userInvitationUrl(@Nullable Output userInvitationUrl) {
+            $.userInvitationUrl = userInvitationUrl;
+            return this;
+        }
+
+        /**
+         * @param userInvitationUrl URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder userInvitationUrl(String userInvitationUrl) {
+            return userInvitationUrl(Output.of(userInvitationUrl));
+        }
+
+        /**
+         * @param userName Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -341,7 +382,7 @@ public Builder userName(@Nullable Output userName) {
         }
 
         /**
-         * @param userName The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`.
+         * @param userName Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`.
          * 
          * @return builder
          * 
@@ -351,7 +392,9 @@ public Builder userName(String userName) {
         }
 
         /**
-         * @param userRole The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+         * @param userRole Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+         * 
+         * The following arguments are optional:
          * 
          * @return builder
          * 
@@ -362,7 +405,9 @@ public Builder userRole(@Nullable Output userRole) {
         }
 
         /**
-         * @param userRole The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`.
+         * @param userRole Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`.
+         * 
+         * The following arguments are optional:
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/Cluster.java b/sdk/java/src/main/java/com/pulumi/aws/rds/Cluster.java
index bfbfecfbf9a..38a1039eda8 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/Cluster.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/Cluster.java
@@ -1116,14 +1116,14 @@ public Output networkType() {
         return this.networkType;
     }
     /**
-     * Enables Performance Insights for the RDS Cluster
+     * Enables Performance Insights.
      * 
      */
     @Export(name="performanceInsightsEnabled", refs={Boolean.class}, tree="[0]")
     private Output performanceInsightsEnabled;
 
     /**
-     * @return Enables Performance Insights for the RDS Cluster
+     * @return Enables Performance Insights.
      * 
      */
     public Output> performanceInsightsEnabled() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterArgs.java
index 66b5bd55deb..2cf3f0fc878 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterArgs.java
@@ -640,14 +640,14 @@ public Optional> networkType() {
     }
 
     /**
-     * Enables Performance Insights for the RDS Cluster
+     * Enables Performance Insights.
      * 
      */
     @Import(name="performanceInsightsEnabled")
     private @Nullable Output performanceInsightsEnabled;
 
     /**
-     * @return Enables Performance Insights for the RDS Cluster
+     * @return Enables Performance Insights.
      * 
      */
     public Optional> performanceInsightsEnabled() {
@@ -1918,7 +1918,7 @@ public Builder networkType(String networkType) {
         }
 
         /**
-         * @param performanceInsightsEnabled Enables Performance Insights for the RDS Cluster
+         * @param performanceInsightsEnabled Enables Performance Insights.
          * 
          * @return builder
          * 
@@ -1929,7 +1929,7 @@ public Builder performanceInsightsEnabled(@Nullable Output performanceI
         }
 
         /**
-         * @param performanceInsightsEnabled Enables Performance Insights for the RDS Cluster
+         * @param performanceInsightsEnabled Enables Performance Insights.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstance.java b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstance.java
index 45936f82c0b..1f0301e184a 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstance.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstance.java
@@ -427,14 +427,14 @@ public Output networkType() {
         return this.networkType;
     }
     /**
-     * Specifies whether Performance Insights is enabled or not.
+     * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     @Export(name="performanceInsightsEnabled", refs={Boolean.class}, tree="[0]")
     private Output performanceInsightsEnabled;
 
     /**
-     * @return Specifies whether Performance Insights is enabled or not.
+     * @return Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     public Output performanceInsightsEnabled() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstanceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstanceArgs.java
index 760c7f6dc8b..155ce415bd8 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstanceArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/ClusterInstanceArgs.java
@@ -279,14 +279,14 @@ public Optional> monitoringRoleArn() {
     }
 
     /**
-     * Specifies whether Performance Insights is enabled or not.
+     * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     @Import(name="performanceInsightsEnabled")
     private @Nullable Output performanceInsightsEnabled;
 
     /**
-     * @return Specifies whether Performance Insights is enabled or not.
+     * @return Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     public Optional> performanceInsightsEnabled() {
@@ -826,7 +826,7 @@ public Builder monitoringRoleArn(String monitoringRoleArn) {
         }
 
         /**
-         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not.
+         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
          * 
          * @return builder
          * 
@@ -837,7 +837,7 @@ public Builder performanceInsightsEnabled(@Nullable Output performanceI
         }
 
         /**
-         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not.
+         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/Integration.java b/sdk/java/src/main/java/com/pulumi/aws/rds/Integration.java
index 346ee104076..b61d032a5ee 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/Integration.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/Integration.java
@@ -166,14 +166,18 @@
 @ResourceType(type="aws:rds/integration:Integration")
 public class Integration extends com.pulumi.resources.CustomResource {
     /**
-     * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     @Export(name="additionalEncryptionContext", refs={Map.class,String.class}, tree="[0,1,1]")
     private Output> additionalEncryptionContext;
 
     /**
-     * @return Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * @return Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     public Output>> additionalEncryptionContext() {
@@ -193,6 +197,28 @@ public Output>> additionalEncryptionContext() {
     public Output arn() {
         return this.arn;
     }
+    /**
+     * Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    @Export(name="dataFilter", refs={String.class}, tree="[0]")
+    private Output dataFilter;
+
+    /**
+     * @return Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    public Output dataFilter() {
+        return this.dataFilter;
+    }
     /**
      * Name of the integration.
      * 
@@ -208,14 +234,18 @@ public Output integrationName() {
         return this.integrationName;
     }
     /**
-     * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     @Export(name="kmsKeyId", refs={String.class}, tree="[0]")
     private Output kmsKeyId;
 
     /**
-     * @return KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * @return KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     public Output kmsKeyId() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/IntegrationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/IntegrationArgs.java
index 96dd57fc191..3e9f694dd52 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/IntegrationArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/IntegrationArgs.java
@@ -19,20 +19,47 @@ public final class IntegrationArgs extends com.pulumi.resources.ResourceArgs {
     public static final IntegrationArgs Empty = new IntegrationArgs();
 
     /**
-     * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     @Import(name="additionalEncryptionContext")
     private @Nullable Output> additionalEncryptionContext;
 
     /**
-     * @return Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * @return Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     public Optional>> additionalEncryptionContext() {
         return Optional.ofNullable(this.additionalEncryptionContext);
     }
 
+    /**
+     * Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    @Import(name="dataFilter")
+    private @Nullable Output dataFilter;
+
+    /**
+     * @return Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    public Optional> dataFilter() {
+        return Optional.ofNullable(this.dataFilter);
+    }
+
     /**
      * Name of the integration.
      * 
@@ -49,14 +76,18 @@ public Output integrationName() {
     }
 
     /**
-     * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     @Import(name="kmsKeyId")
     private @Nullable Output kmsKeyId;
 
     /**
-     * @return KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * @return KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     public Optional> kmsKeyId() {
@@ -123,6 +154,7 @@ private IntegrationArgs() {}
 
     private IntegrationArgs(IntegrationArgs $) {
         this.additionalEncryptionContext = $.additionalEncryptionContext;
+        this.dataFilter = $.dataFilter;
         this.integrationName = $.integrationName;
         this.kmsKeyId = $.kmsKeyId;
         this.sourceArn = $.sourceArn;
@@ -150,7 +182,9 @@ public Builder(IntegrationArgs defaults) {
         }
 
         /**
-         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data.
+         * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+         * You can only include this parameter if you specify the `kms_key_id` parameter.
          * 
          * @return builder
          * 
@@ -161,7 +195,9 @@ public Builder additionalEncryptionContext(@Nullable Output>
         }
 
         /**
-         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data.
+         * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+         * You can only include this parameter if you specify the `kms_key_id` parameter.
          * 
          * @return builder
          * 
@@ -170,6 +206,35 @@ public Builder additionalEncryptionContext(Map additionalEncrypti
             return additionalEncryptionContext(Output.of(additionalEncryptionContext));
         }
 
+        /**
+         * @param dataFilter Data filters for the integration.
+         * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+         * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+         * Multiple expressions are separated by a comma.
+         * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder dataFilter(@Nullable Output dataFilter) {
+            $.dataFilter = dataFilter;
+            return this;
+        }
+
+        /**
+         * @param dataFilter Data filters for the integration.
+         * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+         * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+         * Multiple expressions are separated by a comma.
+         * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder dataFilter(String dataFilter) {
+            return dataFilter(Output.of(dataFilter));
+        }
+
         /**
          * @param integrationName Name of the integration.
          * 
@@ -192,7 +257,9 @@ public Builder integrationName(String integrationName) {
         }
 
         /**
-         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration.
+         * If you don't specify an encryption key, RDS uses a default AWS owned key.
+         * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
          * 
          * @return builder
          * 
@@ -203,7 +270,9 @@ public Builder kmsKeyId(@Nullable Output kmsKeyId) {
         }
 
         /**
-         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration.
+         * If you don't specify an encryption key, RDS uses a default AWS owned key.
+         * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterInstanceState.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterInstanceState.java
index 440cbf3079a..0f457bda163 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterInstanceState.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterInstanceState.java
@@ -368,14 +368,14 @@ public Optional> networkType() {
     }
 
     /**
-     * Specifies whether Performance Insights is enabled or not.
+     * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     @Import(name="performanceInsightsEnabled")
     private @Nullable Output performanceInsightsEnabled;
 
     /**
-     * @return Specifies whether Performance Insights is enabled or not.
+     * @return Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
      * 
      */
     public Optional> performanceInsightsEnabled() {
@@ -1119,7 +1119,7 @@ public Builder networkType(String networkType) {
         }
 
         /**
-         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not.
+         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
          * 
          * @return builder
          * 
@@ -1130,7 +1130,7 @@ public Builder performanceInsightsEnabled(@Nullable Output performanceI
         }
 
         /**
-         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not.
+         * @param performanceInsightsEnabled Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterState.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterState.java
index c4200bb96f7..c3baab85dc6 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterState.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ClusterState.java
@@ -745,14 +745,14 @@ public Optional> networkType() {
     }
 
     /**
-     * Enables Performance Insights for the RDS Cluster
+     * Enables Performance Insights.
      * 
      */
     @Import(name="performanceInsightsEnabled")
     private @Nullable Output performanceInsightsEnabled;
 
     /**
-     * @return Enables Performance Insights for the RDS Cluster
+     * @return Enables Performance Insights.
      * 
      */
     public Optional> performanceInsightsEnabled() {
@@ -2229,7 +2229,7 @@ public Builder networkType(String networkType) {
         }
 
         /**
-         * @param performanceInsightsEnabled Enables Performance Insights for the RDS Cluster
+         * @param performanceInsightsEnabled Enables Performance Insights.
          * 
          * @return builder
          * 
@@ -2240,7 +2240,7 @@ public Builder performanceInsightsEnabled(@Nullable Output performanceI
         }
 
         /**
-         * @param performanceInsightsEnabled Enables Performance Insights for the RDS Cluster
+         * @param performanceInsightsEnabled Enables Performance Insights.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificateArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificateArgs.java
index e315a9f0e6b..4d0dbca5d1f 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificateArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificateArgs.java
@@ -16,6 +16,21 @@ public final class GetCertificateArgs extends com.pulumi.resources.InvokeArgs {
 
     public static final GetCertificateArgs Empty = new GetCertificateArgs();
 
+    /**
+     * When enabled, returns the default certificate for new RDS instances.
+     * 
+     */
+    @Import(name="defaultForNewLaunches")
+    private @Nullable Output defaultForNewLaunches;
+
+    /**
+     * @return When enabled, returns the default certificate for new RDS instances.
+     * 
+     */
+    public Optional> defaultForNewLaunches() {
+        return Optional.ofNullable(this.defaultForNewLaunches);
+    }
+
     /**
      * Certificate identifier. For example, `rds-ca-2019`.
      * 
@@ -49,6 +64,7 @@ public Optional> latestValidTill() {
     private GetCertificateArgs() {}
 
     private GetCertificateArgs(GetCertificateArgs $) {
+        this.defaultForNewLaunches = $.defaultForNewLaunches;
         this.id = $.id;
         this.latestValidTill = $.latestValidTill;
     }
@@ -71,6 +87,27 @@ public Builder(GetCertificateArgs defaults) {
             $ = new GetCertificateArgs(Objects.requireNonNull(defaults));
         }
 
+        /**
+         * @param defaultForNewLaunches When enabled, returns the default certificate for new RDS instances.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder defaultForNewLaunches(@Nullable Output defaultForNewLaunches) {
+            $.defaultForNewLaunches = defaultForNewLaunches;
+            return this;
+        }
+
+        /**
+         * @param defaultForNewLaunches When enabled, returns the default certificate for new RDS instances.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder defaultForNewLaunches(Boolean defaultForNewLaunches) {
+            return defaultForNewLaunches(Output.of(defaultForNewLaunches));
+        }
+
         /**
          * @param id Certificate identifier. For example, `rds-ca-2019`.
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificatePlainArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificatePlainArgs.java
index f591291ee34..b1770b542b2 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificatePlainArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetCertificatePlainArgs.java
@@ -15,6 +15,21 @@ public final class GetCertificatePlainArgs extends com.pulumi.resources.InvokeAr
 
     public static final GetCertificatePlainArgs Empty = new GetCertificatePlainArgs();
 
+    /**
+     * When enabled, returns the default certificate for new RDS instances.
+     * 
+     */
+    @Import(name="defaultForNewLaunches")
+    private @Nullable Boolean defaultForNewLaunches;
+
+    /**
+     * @return When enabled, returns the default certificate for new RDS instances.
+     * 
+     */
+    public Optional defaultForNewLaunches() {
+        return Optional.ofNullable(this.defaultForNewLaunches);
+    }
+
     /**
      * Certificate identifier. For example, `rds-ca-2019`.
      * 
@@ -48,6 +63,7 @@ public Optional latestValidTill() {
     private GetCertificatePlainArgs() {}
 
     private GetCertificatePlainArgs(GetCertificatePlainArgs $) {
+        this.defaultForNewLaunches = $.defaultForNewLaunches;
         this.id = $.id;
         this.latestValidTill = $.latestValidTill;
     }
@@ -70,6 +86,17 @@ public Builder(GetCertificatePlainArgs defaults) {
             $ = new GetCertificatePlainArgs(Objects.requireNonNull(defaults));
         }
 
+        /**
+         * @param defaultForNewLaunches When enabled, returns the default certificate for new RDS instances.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder defaultForNewLaunches(@Nullable Boolean defaultForNewLaunches) {
+            $.defaultForNewLaunches = defaultForNewLaunches;
+            return this;
+        }
+
         /**
          * @param id Certificate identifier. For example, `rds-ca-2019`.
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/IntegrationState.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/IntegrationState.java
index e78c2f1cc0a..304e989740f 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/IntegrationState.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/IntegrationState.java
@@ -18,14 +18,18 @@ public final class IntegrationState extends com.pulumi.resources.ResourceArgs {
     public static final IntegrationState Empty = new IntegrationState();
 
     /**
-     * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     @Import(name="additionalEncryptionContext")
     private @Nullable Output> additionalEncryptionContext;
 
     /**
-     * @return Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+     * @return Set of non-secret key–value pairs that contains additional contextual information about the data.
+     * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+     * You can only include this parameter if you specify the `kms_key_id` parameter.
      * 
      */
     public Optional>> additionalEncryptionContext() {
@@ -47,6 +51,29 @@ public Optional> arn() {
         return Optional.ofNullable(this.arn);
     }
 
+    /**
+     * Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    @Import(name="dataFilter")
+    private @Nullable Output dataFilter;
+
+    /**
+     * @return Data filters for the integration.
+     * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+     * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+     * Multiple expressions are separated by a comma.
+     * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+     * 
+     */
+    public Optional> dataFilter() {
+        return Optional.ofNullable(this.dataFilter);
+    }
+
     /**
      * Name of the integration.
      * 
@@ -63,14 +90,18 @@ public Optional> integrationName() {
     }
 
     /**
-     * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     @Import(name="kmsKeyId")
     private @Nullable Output kmsKeyId;
 
     /**
-     * @return KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+     * @return KMS key identifier for the key to use to encrypt the integration.
+     * If you don't specify an encryption key, RDS uses a default AWS owned key.
+     * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
      * 
      */
     public Optional> kmsKeyId() {
@@ -161,6 +192,7 @@ private IntegrationState() {}
     private IntegrationState(IntegrationState $) {
         this.additionalEncryptionContext = $.additionalEncryptionContext;
         this.arn = $.arn;
+        this.dataFilter = $.dataFilter;
         this.integrationName = $.integrationName;
         this.kmsKeyId = $.kmsKeyId;
         this.sourceArn = $.sourceArn;
@@ -189,7 +221,9 @@ public Builder(IntegrationState defaults) {
         }
 
         /**
-         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data.
+         * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+         * You can only include this parameter if you specify the `kms_key_id` parameter.
          * 
          * @return builder
          * 
@@ -200,7 +234,9 @@ public Builder additionalEncryptionContext(@Nullable Output>
         }
 
         /**
-         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter.
+         * @param additionalEncryptionContext Set of non-secret key–value pairs that contains additional contextual information about the data.
+         * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context).
+         * You can only include this parameter if you specify the `kms_key_id` parameter.
          * 
          * @return builder
          * 
@@ -230,6 +266,35 @@ public Builder arn(String arn) {
             return arn(Output.of(arn));
         }
 
+        /**
+         * @param dataFilter Data filters for the integration.
+         * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+         * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+         * Multiple expressions are separated by a comma.
+         * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder dataFilter(@Nullable Output dataFilter) {
+            $.dataFilter = dataFilter;
+            return this;
+        }
+
+        /**
+         * @param dataFilter Data filters for the integration.
+         * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse.
+         * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression.
+         * Multiple expressions are separated by a comma.
+         * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details.
+         * 
+         * @return builder
+         * 
+         */
+        public Builder dataFilter(String dataFilter) {
+            return dataFilter(Output.of(dataFilter));
+        }
+
         /**
          * @param integrationName Name of the integration.
          * 
@@ -252,7 +317,9 @@ public Builder integrationName(String integrationName) {
         }
 
         /**
-         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration.
+         * If you don't specify an encryption key, RDS uses a default AWS owned key.
+         * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
          * 
          * @return builder
          * 
@@ -263,7 +330,9 @@ public Builder kmsKeyId(@Nullable Output kmsKeyId) {
         }
 
         /**
-         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
+         * @param kmsKeyId KMS key identifier for the key to use to encrypt the integration.
+         * If you don't specify an encryption key, RDS uses a default AWS owned key.
+         * If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ProxyAuthArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ProxyAuthArgs.java
index bcad7b03ffd..c3920c536f9 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ProxyAuthArgs.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/ProxyAuthArgs.java
@@ -31,14 +31,14 @@ public Optional> authScheme() {
     }
 
     /**
-     * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+     * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
      * 
      */
     @Import(name="clientPasswordAuthType")
     private @Nullable Output clientPasswordAuthType;
 
     /**
-     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
      * 
      */
     public Optional> clientPasswordAuthType() {
@@ -156,7 +156,7 @@ public Builder authScheme(String authScheme) {
         }
 
         /**
-         * @param clientPasswordAuthType The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+         * @param clientPasswordAuthType The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
          * 
          * @return builder
          * 
@@ -167,7 +167,7 @@ public Builder clientPasswordAuthType(@Nullable Output clientPasswordAut
         }
 
         /**
-         * @param clientPasswordAuthType The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+         * @param clientPasswordAuthType The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
          * 
          * @return builder
          * 
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetCertificateResult.java b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetCertificateResult.java
index 9268362981f..9305adc4fe1 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetCertificateResult.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetCertificateResult.java
@@ -33,6 +33,7 @@ public final class GetCertificateResult {
      * 
      */
     private String customerOverrideValidTill;
+    private @Nullable Boolean defaultForNewLaunches;
     private String id;
     private @Nullable Boolean latestValidTill;
     /**
@@ -80,6 +81,9 @@ public Boolean customerOverride() {
     public String customerOverrideValidTill() {
         return this.customerOverrideValidTill;
     }
+    public Optional defaultForNewLaunches() {
+        return Optional.ofNullable(this.defaultForNewLaunches);
+    }
     public String id() {
         return this.id;
     }
@@ -121,6 +125,7 @@ public static final class Builder {
         private String certificateType;
         private Boolean customerOverride;
         private String customerOverrideValidTill;
+        private @Nullable Boolean defaultForNewLaunches;
         private String id;
         private @Nullable Boolean latestValidTill;
         private String thumbprint;
@@ -133,6 +138,7 @@ public Builder(GetCertificateResult defaults) {
     	      this.certificateType = defaults.certificateType;
     	      this.customerOverride = defaults.customerOverride;
     	      this.customerOverrideValidTill = defaults.customerOverrideValidTill;
+    	      this.defaultForNewLaunches = defaults.defaultForNewLaunches;
     	      this.id = defaults.id;
     	      this.latestValidTill = defaults.latestValidTill;
     	      this.thumbprint = defaults.thumbprint;
@@ -173,6 +179,12 @@ public Builder customerOverrideValidTill(String customerOverrideValidTill) {
             return this;
         }
         @CustomType.Setter
+        public Builder defaultForNewLaunches(@Nullable Boolean defaultForNewLaunches) {
+
+            this.defaultForNewLaunches = defaultForNewLaunches;
+            return this;
+        }
+        @CustomType.Setter
         public Builder id(String id) {
             if (id == null) {
               throw new MissingRequiredPropertyException("GetCertificateResult", "id");
@@ -216,6 +228,7 @@ public GetCertificateResult build() {
             _resultValue.certificateType = certificateType;
             _resultValue.customerOverride = customerOverride;
             _resultValue.customerOverrideValidTill = customerOverrideValidTill;
+            _resultValue.defaultForNewLaunches = defaultForNewLaunches;
             _resultValue.id = id;
             _resultValue.latestValidTill = latestValidTill;
             _resultValue.thumbprint = thumbprint;
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetEngineVersionResult.java b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetEngineVersionResult.java
index 07d5ba24582..e8a822c157f 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetEngineVersionResult.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/GetEngineVersionResult.java
@@ -71,16 +71,31 @@ public final class GetEngineVersionResult {
      * 
      */
     private List supportedTimezones;
+    /**
+     * @return Whether the certificates can be rotated without restarting the Aurora instance.
+     * 
+     */
+    private Boolean supportsCertificateRotationWithoutRestart;
     /**
      * @return Whether you can use Aurora global databases with the engine version.
      * 
      */
     private Boolean supportsGlobalDatabases;
+    /**
+     * @return Whether the engine version supports integrations with other AWS services.
+     * 
+     */
+    private Boolean supportsIntegrations;
     /**
      * @return Whether the engine version supports Aurora Limitless Database.
      * 
      */
     private Boolean supportsLimitlessDatabase;
+    /**
+     * @return Whether the engine version supports local write forwarding or not.
+     * 
+     */
+    private Boolean supportsLocalWriteForwarding;
     /**
      * @return Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs.
      * 
@@ -220,6 +235,13 @@ public List supportedModes() {
     public List supportedTimezones() {
         return this.supportedTimezones;
     }
+    /**
+     * @return Whether the certificates can be rotated without restarting the Aurora instance.
+     * 
+     */
+    public Boolean supportsCertificateRotationWithoutRestart() {
+        return this.supportsCertificateRotationWithoutRestart;
+    }
     /**
      * @return Whether you can use Aurora global databases with the engine version.
      * 
@@ -227,6 +249,13 @@ public List supportedTimezones() {
     public Boolean supportsGlobalDatabases() {
         return this.supportsGlobalDatabases;
     }
+    /**
+     * @return Whether the engine version supports integrations with other AWS services.
+     * 
+     */
+    public Boolean supportsIntegrations() {
+        return this.supportsIntegrations;
+    }
     /**
      * @return Whether the engine version supports Aurora Limitless Database.
      * 
@@ -234,6 +263,13 @@ public Boolean supportsGlobalDatabases() {
     public Boolean supportsLimitlessDatabase() {
         return this.supportsLimitlessDatabase;
     }
+    /**
+     * @return Whether the engine version supports local write forwarding or not.
+     * 
+     */
+    public Boolean supportsLocalWriteForwarding() {
+        return this.supportsLocalWriteForwarding;
+    }
     /**
      * @return Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs.
      * 
@@ -323,8 +359,11 @@ public static final class Builder {
         private List supportedFeatureNames;
         private List supportedModes;
         private List supportedTimezones;
+        private Boolean supportsCertificateRotationWithoutRestart;
         private Boolean supportsGlobalDatabases;
+        private Boolean supportsIntegrations;
         private Boolean supportsLimitlessDatabase;
+        private Boolean supportsLocalWriteForwarding;
         private Boolean supportsLogExportsToCloudwatch;
         private Boolean supportsParallelQuery;
         private Boolean supportsReadReplica;
@@ -357,8 +396,11 @@ public Builder(GetEngineVersionResult defaults) {
     	      this.supportedFeatureNames = defaults.supportedFeatureNames;
     	      this.supportedModes = defaults.supportedModes;
     	      this.supportedTimezones = defaults.supportedTimezones;
+    	      this.supportsCertificateRotationWithoutRestart = defaults.supportsCertificateRotationWithoutRestart;
     	      this.supportsGlobalDatabases = defaults.supportsGlobalDatabases;
+    	      this.supportsIntegrations = defaults.supportsIntegrations;
     	      this.supportsLimitlessDatabase = defaults.supportsLimitlessDatabase;
+    	      this.supportsLocalWriteForwarding = defaults.supportsLocalWriteForwarding;
     	      this.supportsLogExportsToCloudwatch = defaults.supportsLogExportsToCloudwatch;
     	      this.supportsParallelQuery = defaults.supportsParallelQuery;
     	      this.supportsReadReplica = defaults.supportsReadReplica;
@@ -540,6 +582,14 @@ public Builder supportedTimezones(String... supportedTimezones) {
             return supportedTimezones(List.of(supportedTimezones));
         }
         @CustomType.Setter
+        public Builder supportsCertificateRotationWithoutRestart(Boolean supportsCertificateRotationWithoutRestart) {
+            if (supportsCertificateRotationWithoutRestart == null) {
+              throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsCertificateRotationWithoutRestart");
+            }
+            this.supportsCertificateRotationWithoutRestart = supportsCertificateRotationWithoutRestart;
+            return this;
+        }
+        @CustomType.Setter
         public Builder supportsGlobalDatabases(Boolean supportsGlobalDatabases) {
             if (supportsGlobalDatabases == null) {
               throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsGlobalDatabases");
@@ -548,6 +598,14 @@ public Builder supportsGlobalDatabases(Boolean supportsGlobalDatabases) {
             return this;
         }
         @CustomType.Setter
+        public Builder supportsIntegrations(Boolean supportsIntegrations) {
+            if (supportsIntegrations == null) {
+              throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsIntegrations");
+            }
+            this.supportsIntegrations = supportsIntegrations;
+            return this;
+        }
+        @CustomType.Setter
         public Builder supportsLimitlessDatabase(Boolean supportsLimitlessDatabase) {
             if (supportsLimitlessDatabase == null) {
               throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsLimitlessDatabase");
@@ -556,6 +614,14 @@ public Builder supportsLimitlessDatabase(Boolean supportsLimitlessDatabase) {
             return this;
         }
         @CustomType.Setter
+        public Builder supportsLocalWriteForwarding(Boolean supportsLocalWriteForwarding) {
+            if (supportsLocalWriteForwarding == null) {
+              throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsLocalWriteForwarding");
+            }
+            this.supportsLocalWriteForwarding = supportsLocalWriteForwarding;
+            return this;
+        }
+        @CustomType.Setter
         public Builder supportsLogExportsToCloudwatch(Boolean supportsLogExportsToCloudwatch) {
             if (supportsLogExportsToCloudwatch == null) {
               throw new MissingRequiredPropertyException("GetEngineVersionResult", "supportsLogExportsToCloudwatch");
@@ -658,8 +724,11 @@ public GetEngineVersionResult build() {
             _resultValue.supportedFeatureNames = supportedFeatureNames;
             _resultValue.supportedModes = supportedModes;
             _resultValue.supportedTimezones = supportedTimezones;
+            _resultValue.supportsCertificateRotationWithoutRestart = supportsCertificateRotationWithoutRestart;
             _resultValue.supportsGlobalDatabases = supportsGlobalDatabases;
+            _resultValue.supportsIntegrations = supportsIntegrations;
             _resultValue.supportsLimitlessDatabase = supportsLimitlessDatabase;
+            _resultValue.supportsLocalWriteForwarding = supportsLocalWriteForwarding;
             _resultValue.supportsLogExportsToCloudwatch = supportsLogExportsToCloudwatch;
             _resultValue.supportsParallelQuery = supportsParallelQuery;
             _resultValue.supportsReadReplica = supportsReadReplica;
diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/ProxyAuth.java b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/ProxyAuth.java
index e83a9f83c80..5598cc9024d 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/ProxyAuth.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/rds/outputs/ProxyAuth.java
@@ -17,7 +17,7 @@ public final class ProxyAuth {
      */
     private @Nullable String authScheme;
     /**
-     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
      * 
      */
     private @Nullable String clientPasswordAuthType;
@@ -51,7 +51,7 @@ public Optional authScheme() {
         return Optional.ofNullable(this.authScheme);
     }
     /**
-     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
+     * @return The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`.
      * 
      */
     public Optional clientPasswordAuthType() {
diff --git a/sdk/java/src/main/java/com/pulumi/aws/resiliencehub/ResiliencyPolicy.java b/sdk/java/src/main/java/com/pulumi/aws/resiliencehub/ResiliencyPolicy.java
index 59644686d85..5bfd34e1587 100644
--- a/sdk/java/src/main/java/com/pulumi/aws/resiliencehub/ResiliencyPolicy.java
+++ b/sdk/java/src/main/java/com/pulumi/aws/resiliencehub/ResiliencyPolicy.java
@@ -23,6 +23,57 @@
  * ## Example Usage
  * 
  * <!--Start PulumiCodeChooser -->
+ * 
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.resiliencehub.ResiliencyPolicy;
+ * import com.pulumi.aws.resiliencehub.ResiliencyPolicyArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new ResiliencyPolicy("example", ResiliencyPolicyArgs.builder()
+ *             .name("testexample")
+ *             .description("testexample")
+ *             .tier("NonCritical")
+ *             .dataLocationConstraint("AnyLocation")
+ *             .policy(ResiliencyPolicyPolicyArgs.builder()
+ *                 .region(ResiliencyPolicyPolicyRegionArgs.builder()
+ *                     .rpo("24h")
+ *                     .rto("24h")
+ *                     .build())
+ *                 .az(ResiliencyPolicyPolicyAzArgs.builder()
+ *                     .rpo("24h")
+ *                     .rto("24h")
+ *                     .build())
+ *                 .hardware(ResiliencyPolicyPolicyHardwareArgs.builder()
+ *                     .rpo("24h")
+ *                     .rto("24h")
+ *                     .build())
+ *                 .software(ResiliencyPolicyPolicySoftwareArgs.builder()
+ *                     .rpo("24h")
+ *                     .rto("24h")
+ *                     .build())
+ *                 .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
* <!--End PulumiCodeChooser --> * * ## Import diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/Record.java b/sdk/java/src/main/java/com/pulumi/aws/route53/Record.java index 8b65fd12172..e4a8a6a2095 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/route53/Record.java +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/Record.java @@ -299,12 +299,12 @@ * Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): * * ```sh - * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS + * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS * ``` * If the record also contains a set identifier, append it: * * ```sh - * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev + * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev * ``` * */ diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/Route53Functions.java b/sdk/java/src/main/java/com/pulumi/aws/route53/Route53Functions.java index 23143d8618e..ec6cda44dca 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/route53/Route53Functions.java +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/Route53Functions.java @@ -8,6 +8,8 @@ import com.pulumi.aws.route53.inputs.GetDelegationSetPlainArgs; import com.pulumi.aws.route53.inputs.GetQueryLogConfigArgs; import com.pulumi.aws.route53.inputs.GetQueryLogConfigPlainArgs; +import com.pulumi.aws.route53.inputs.GetRecordsArgs; +import com.pulumi.aws.route53.inputs.GetRecordsPlainArgs; import com.pulumi.aws.route53.inputs.GetResolverEndpointArgs; import com.pulumi.aws.route53.inputs.GetResolverEndpointPlainArgs; import com.pulumi.aws.route53.inputs.GetResolverFirewallConfigArgs; @@ -31,6 +33,7 @@ import com.pulumi.aws.route53.outputs.GetDelegationSetResult; import com.pulumi.aws.route53.outputs.GetProfilesProfilesResult; import com.pulumi.aws.route53.outputs.GetQueryLogConfigResult; +import com.pulumi.aws.route53.outputs.GetRecordsResult; import com.pulumi.aws.route53.outputs.GetResolverEndpointResult; import com.pulumi.aws.route53.outputs.GetResolverFirewallConfigResult; import com.pulumi.aws.route53.outputs.GetResolverFirewallDomainListResult; @@ -1149,6 +1152,486 @@ public static Output getQueryLogConfig(GetQueryLogConfi public static CompletableFuture getQueryLogConfigPlain(GetQueryLogConfigPlainArgs args, InvokeOptions options) { return Deployment.getInstance().invokeAsync("aws:route53/getQueryLogConfig:getQueryLogConfig", TypeShape.of(GetQueryLogConfigResult.class), args, Utilities.withVersion(options)); } + /** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .nameRegex("^www")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRecords(GetRecordsArgs args) { + return getRecords(args, InvokeOptions.Empty); + } + /** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .nameRegex("^www")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRecordsPlain(GetRecordsPlainArgs args) { + return getRecordsPlain(args, InvokeOptions.Empty); + } + /** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .nameRegex("^www")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRecords(GetRecordsArgs args, InvokeOptions options) { + return Deployment.getInstance().invoke("aws:route53/getRecords:getRecords", TypeShape.of(GetRecordsResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .nameRegex("^www")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static Output getRecords(GetRecordsArgs args, InvokeOutputOptions options) { + return Deployment.getInstance().invoke("aws:route53/getRecords:getRecords", TypeShape.of(GetRecordsResult.class), args, Utilities.withVersion(options)); + } + /** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * <!--Start PulumiCodeChooser --> + *
+     * {@code
+     * package generated_program;
+     * 
+     * import com.pulumi.Context;
+     * import com.pulumi.Pulumi;
+     * import com.pulumi.core.Output;
+     * import com.pulumi.aws.route53.Route53Functions;
+     * import com.pulumi.aws.route53.inputs.GetZoneArgs;
+     * import com.pulumi.aws.route53.inputs.GetRecordsArgs;
+     * import java.util.List;
+     * import java.util.ArrayList;
+     * import java.util.Map;
+     * import java.io.File;
+     * import java.nio.file.Files;
+     * import java.nio.file.Paths;
+     * 
+     * public class App {
+     *     public static void main(String[] args) {
+     *         Pulumi.run(App::stack);
+     *     }
+     * 
+     *     public static void stack(Context ctx) {
+     *         final var selected = Route53Functions.getZone(GetZoneArgs.builder()
+     *             .name("test.com.")
+     *             .privateZone(true)
+     *             .build());
+     * 
+     *         final var example = Route53Functions.getRecords(GetRecordsArgs.builder()
+     *             .zoneId(selected.applyValue(getZoneResult -> getZoneResult.zoneId()))
+     *             .nameRegex("^www")
+     *             .build());
+     * 
+     *     }
+     * }
+     * }
+     * 
+ * <!--End PulumiCodeChooser --> + * + */ + public static CompletableFuture getRecordsPlain(GetRecordsPlainArgs args, InvokeOptions options) { + return Deployment.getInstance().invokeAsync("aws:route53/getRecords:getRecords", TypeShape.of(GetRecordsResult.class), args, Utilities.withVersion(options)); + } /** * `aws.route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsArgs.java new file mode 100644 index 00000000000..b36b9ec9126 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsArgs.java @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRecordsArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRecordsArgs Empty = new GetRecordsArgs(); + + /** + * Regex string to apply to the resource record names returned by AWS. + * + */ + @Import(name="nameRegex") + private @Nullable Output nameRegex; + + /** + * @return Regex string to apply to the resource record names returned by AWS. + * + */ + public Optional> nameRegex() { + return Optional.ofNullable(this.nameRegex); + } + + /** + * The ID of the hosted zone that contains the resource record sets that you want to list. + * + */ + @Import(name="zoneId", required=true) + private Output zoneId; + + /** + * @return The ID of the hosted zone that contains the resource record sets that you want to list. + * + */ + public Output zoneId() { + return this.zoneId; + } + + private GetRecordsArgs() {} + + private GetRecordsArgs(GetRecordsArgs $) { + this.nameRegex = $.nameRegex; + this.zoneId = $.zoneId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRecordsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRecordsArgs $; + + public Builder() { + $ = new GetRecordsArgs(); + } + + public Builder(GetRecordsArgs defaults) { + $ = new GetRecordsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param nameRegex Regex string to apply to the resource record names returned by AWS. + * + * @return builder + * + */ + public Builder nameRegex(@Nullable Output nameRegex) { + $.nameRegex = nameRegex; + return this; + } + + /** + * @param nameRegex Regex string to apply to the resource record names returned by AWS. + * + * @return builder + * + */ + public Builder nameRegex(String nameRegex) { + return nameRegex(Output.of(nameRegex)); + } + + /** + * @param zoneId The ID of the hosted zone that contains the resource record sets that you want to list. + * + * @return builder + * + */ + public Builder zoneId(Output zoneId) { + $.zoneId = zoneId; + return this; + } + + /** + * @param zoneId The ID of the hosted zone that contains the resource record sets that you want to list. + * + * @return builder + * + */ + public Builder zoneId(String zoneId) { + return zoneId(Output.of(zoneId)); + } + + public GetRecordsArgs build() { + if ($.zoneId == null) { + throw new MissingRequiredPropertyException("GetRecordsArgs", "zoneId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsPlainArgs.java b/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsPlainArgs.java new file mode 100644 index 00000000000..63a0ff62039 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/inputs/GetRecordsPlainArgs.java @@ -0,0 +1,103 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.inputs; + +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class GetRecordsPlainArgs extends com.pulumi.resources.InvokeArgs { + + public static final GetRecordsPlainArgs Empty = new GetRecordsPlainArgs(); + + /** + * Regex string to apply to the resource record names returned by AWS. + * + */ + @Import(name="nameRegex") + private @Nullable String nameRegex; + + /** + * @return Regex string to apply to the resource record names returned by AWS. + * + */ + public Optional nameRegex() { + return Optional.ofNullable(this.nameRegex); + } + + /** + * The ID of the hosted zone that contains the resource record sets that you want to list. + * + */ + @Import(name="zoneId", required=true) + private String zoneId; + + /** + * @return The ID of the hosted zone that contains the resource record sets that you want to list. + * + */ + public String zoneId() { + return this.zoneId; + } + + private GetRecordsPlainArgs() {} + + private GetRecordsPlainArgs(GetRecordsPlainArgs $) { + this.nameRegex = $.nameRegex; + this.zoneId = $.zoneId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(GetRecordsPlainArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private GetRecordsPlainArgs $; + + public Builder() { + $ = new GetRecordsPlainArgs(); + } + + public Builder(GetRecordsPlainArgs defaults) { + $ = new GetRecordsPlainArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param nameRegex Regex string to apply to the resource record names returned by AWS. + * + * @return builder + * + */ + public Builder nameRegex(@Nullable String nameRegex) { + $.nameRegex = nameRegex; + return this; + } + + /** + * @param zoneId The ID of the hosted zone that contains the resource record sets that you want to list. + * + * @return builder + * + */ + public Builder zoneId(String zoneId) { + $.zoneId = zoneId; + return this; + } + + public GetRecordsPlainArgs build() { + if ($.zoneId == null) { + throw new MissingRequiredPropertyException("GetRecordsPlainArgs", "zoneId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSet.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSet.java new file mode 100644 index 00000000000..6a46e3e6869 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSet.java @@ -0,0 +1,391 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetAliasTarget; +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetCidrRoutingConfig; +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetGeolocation; +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetGeoproximityLocation; +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetResourceRecord; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.Integer; +import java.lang.String; +import java.util.List; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSet { + /** + * @return Information about the AWS resource traffic is routed to. + * + */ + private GetRecordsResourceRecordSetAliasTarget aliasTarget; + /** + * @return Information about the CIDR location traffic is routed to. + * + */ + private GetRecordsResourceRecordSetCidrRoutingConfig cidrRoutingConfig; + /** + * @return `PRIMARY` or `SECONDARY`. + * + */ + private String failover; + /** + * @return Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + * + */ + private GetRecordsResourceRecordSetGeolocation geolocation; + /** + * @return Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + * + */ + private GetRecordsResourceRecordSetGeoproximityLocation geoproximityLocation; + /** + * @return ID of any applicable health check. + * + */ + private String healthCheckId; + /** + * @return Traffic is routed approximately randomly to multiple resources. + * + */ + private Boolean multiValueAnswer; + /** + * @return The name of the record. + * + */ + private String name; + /** + * @return The Amazon EC2 Region of the resource that this resource record set refers to. + * + */ + private String region; + /** + * @return The resource records. + * + */ + private List resourceRecords; + /** + * @return An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + * + */ + private String setIdentifier; + /** + * @return The ID of any traffic policy instance that Route 53 created this resource record set for. + * + */ + private String trafficPolicyInstanceId; + /** + * @return The resource record cache time to live (TTL), in seconds. + * + */ + private Integer ttl; + /** + * @return The DNS record type. + * + */ + private String type; + /** + * @return Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + * + */ + private Integer weight; + + private GetRecordsResourceRecordSet() {} + /** + * @return Information about the AWS resource traffic is routed to. + * + */ + public GetRecordsResourceRecordSetAliasTarget aliasTarget() { + return this.aliasTarget; + } + /** + * @return Information about the CIDR location traffic is routed to. + * + */ + public GetRecordsResourceRecordSetCidrRoutingConfig cidrRoutingConfig() { + return this.cidrRoutingConfig; + } + /** + * @return `PRIMARY` or `SECONDARY`. + * + */ + public String failover() { + return this.failover; + } + /** + * @return Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + * + */ + public GetRecordsResourceRecordSetGeolocation geolocation() { + return this.geolocation; + } + /** + * @return Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + * + */ + public GetRecordsResourceRecordSetGeoproximityLocation geoproximityLocation() { + return this.geoproximityLocation; + } + /** + * @return ID of any applicable health check. + * + */ + public String healthCheckId() { + return this.healthCheckId; + } + /** + * @return Traffic is routed approximately randomly to multiple resources. + * + */ + public Boolean multiValueAnswer() { + return this.multiValueAnswer; + } + /** + * @return The name of the record. + * + */ + public String name() { + return this.name; + } + /** + * @return The Amazon EC2 Region of the resource that this resource record set refers to. + * + */ + public String region() { + return this.region; + } + /** + * @return The resource records. + * + */ + public List resourceRecords() { + return this.resourceRecords; + } + /** + * @return An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + * + */ + public String setIdentifier() { + return this.setIdentifier; + } + /** + * @return The ID of any traffic policy instance that Route 53 created this resource record set for. + * + */ + public String trafficPolicyInstanceId() { + return this.trafficPolicyInstanceId; + } + /** + * @return The resource record cache time to live (TTL), in seconds. + * + */ + public Integer ttl() { + return this.ttl; + } + /** + * @return The DNS record type. + * + */ + public String type() { + return this.type; + } + /** + * @return Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + * + */ + public Integer weight() { + return this.weight; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSet defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private GetRecordsResourceRecordSetAliasTarget aliasTarget; + private GetRecordsResourceRecordSetCidrRoutingConfig cidrRoutingConfig; + private String failover; + private GetRecordsResourceRecordSetGeolocation geolocation; + private GetRecordsResourceRecordSetGeoproximityLocation geoproximityLocation; + private String healthCheckId; + private Boolean multiValueAnswer; + private String name; + private String region; + private List resourceRecords; + private String setIdentifier; + private String trafficPolicyInstanceId; + private Integer ttl; + private String type; + private Integer weight; + public Builder() {} + public Builder(GetRecordsResourceRecordSet defaults) { + Objects.requireNonNull(defaults); + this.aliasTarget = defaults.aliasTarget; + this.cidrRoutingConfig = defaults.cidrRoutingConfig; + this.failover = defaults.failover; + this.geolocation = defaults.geolocation; + this.geoproximityLocation = defaults.geoproximityLocation; + this.healthCheckId = defaults.healthCheckId; + this.multiValueAnswer = defaults.multiValueAnswer; + this.name = defaults.name; + this.region = defaults.region; + this.resourceRecords = defaults.resourceRecords; + this.setIdentifier = defaults.setIdentifier; + this.trafficPolicyInstanceId = defaults.trafficPolicyInstanceId; + this.ttl = defaults.ttl; + this.type = defaults.type; + this.weight = defaults.weight; + } + + @CustomType.Setter + public Builder aliasTarget(GetRecordsResourceRecordSetAliasTarget aliasTarget) { + if (aliasTarget == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "aliasTarget"); + } + this.aliasTarget = aliasTarget; + return this; + } + @CustomType.Setter + public Builder cidrRoutingConfig(GetRecordsResourceRecordSetCidrRoutingConfig cidrRoutingConfig) { + if (cidrRoutingConfig == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "cidrRoutingConfig"); + } + this.cidrRoutingConfig = cidrRoutingConfig; + return this; + } + @CustomType.Setter + public Builder failover(String failover) { + if (failover == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "failover"); + } + this.failover = failover; + return this; + } + @CustomType.Setter + public Builder geolocation(GetRecordsResourceRecordSetGeolocation geolocation) { + if (geolocation == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "geolocation"); + } + this.geolocation = geolocation; + return this; + } + @CustomType.Setter + public Builder geoproximityLocation(GetRecordsResourceRecordSetGeoproximityLocation geoproximityLocation) { + if (geoproximityLocation == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "geoproximityLocation"); + } + this.geoproximityLocation = geoproximityLocation; + return this; + } + @CustomType.Setter + public Builder healthCheckId(String healthCheckId) { + if (healthCheckId == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "healthCheckId"); + } + this.healthCheckId = healthCheckId; + return this; + } + @CustomType.Setter + public Builder multiValueAnswer(Boolean multiValueAnswer) { + if (multiValueAnswer == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "multiValueAnswer"); + } + this.multiValueAnswer = multiValueAnswer; + return this; + } + @CustomType.Setter + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "name"); + } + this.name = name; + return this; + } + @CustomType.Setter + public Builder region(String region) { + if (region == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "region"); + } + this.region = region; + return this; + } + @CustomType.Setter + public Builder resourceRecords(List resourceRecords) { + if (resourceRecords == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "resourceRecords"); + } + this.resourceRecords = resourceRecords; + return this; + } + public Builder resourceRecords(GetRecordsResourceRecordSetResourceRecord... resourceRecords) { + return resourceRecords(List.of(resourceRecords)); + } + @CustomType.Setter + public Builder setIdentifier(String setIdentifier) { + if (setIdentifier == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "setIdentifier"); + } + this.setIdentifier = setIdentifier; + return this; + } + @CustomType.Setter + public Builder trafficPolicyInstanceId(String trafficPolicyInstanceId) { + if (trafficPolicyInstanceId == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "trafficPolicyInstanceId"); + } + this.trafficPolicyInstanceId = trafficPolicyInstanceId; + return this; + } + @CustomType.Setter + public Builder ttl(Integer ttl) { + if (ttl == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "ttl"); + } + this.ttl = ttl; + return this; + } + @CustomType.Setter + public Builder type(String type) { + if (type == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "type"); + } + this.type = type; + return this; + } + @CustomType.Setter + public Builder weight(Integer weight) { + if (weight == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSet", "weight"); + } + this.weight = weight; + return this; + } + public GetRecordsResourceRecordSet build() { + final var _resultValue = new GetRecordsResourceRecordSet(); + _resultValue.aliasTarget = aliasTarget; + _resultValue.cidrRoutingConfig = cidrRoutingConfig; + _resultValue.failover = failover; + _resultValue.geolocation = geolocation; + _resultValue.geoproximityLocation = geoproximityLocation; + _resultValue.healthCheckId = healthCheckId; + _resultValue.multiValueAnswer = multiValueAnswer; + _resultValue.name = name; + _resultValue.region = region; + _resultValue.resourceRecords = resourceRecords; + _resultValue.setIdentifier = setIdentifier; + _resultValue.trafficPolicyInstanceId = trafficPolicyInstanceId; + _resultValue.ttl = ttl; + _resultValue.type = type; + _resultValue.weight = weight; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetAliasTarget.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetAliasTarget.java new file mode 100644 index 00000000000..ca440e1558f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetAliasTarget.java @@ -0,0 +1,105 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetAliasTarget { + /** + * @return Target DNS name. + * + */ + private String dnsName; + /** + * @return Whether an alias resource record set inherits the health of the referenced AWS resource. + * + */ + private Boolean evaluateTargetHealth; + /** + * @return Target hosted zone ID. + * + */ + private String hostedZoneId; + + private GetRecordsResourceRecordSetAliasTarget() {} + /** + * @return Target DNS name. + * + */ + public String dnsName() { + return this.dnsName; + } + /** + * @return Whether an alias resource record set inherits the health of the referenced AWS resource. + * + */ + public Boolean evaluateTargetHealth() { + return this.evaluateTargetHealth; + } + /** + * @return Target hosted zone ID. + * + */ + public String hostedZoneId() { + return this.hostedZoneId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetAliasTarget defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String dnsName; + private Boolean evaluateTargetHealth; + private String hostedZoneId; + public Builder() {} + public Builder(GetRecordsResourceRecordSetAliasTarget defaults) { + Objects.requireNonNull(defaults); + this.dnsName = defaults.dnsName; + this.evaluateTargetHealth = defaults.evaluateTargetHealth; + this.hostedZoneId = defaults.hostedZoneId; + } + + @CustomType.Setter + public Builder dnsName(String dnsName) { + if (dnsName == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetAliasTarget", "dnsName"); + } + this.dnsName = dnsName; + return this; + } + @CustomType.Setter + public Builder evaluateTargetHealth(Boolean evaluateTargetHealth) { + if (evaluateTargetHealth == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetAliasTarget", "evaluateTargetHealth"); + } + this.evaluateTargetHealth = evaluateTargetHealth; + return this; + } + @CustomType.Setter + public Builder hostedZoneId(String hostedZoneId) { + if (hostedZoneId == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetAliasTarget", "hostedZoneId"); + } + this.hostedZoneId = hostedZoneId; + return this; + } + public GetRecordsResourceRecordSetAliasTarget build() { + final var _resultValue = new GetRecordsResourceRecordSetAliasTarget(); + _resultValue.dnsName = dnsName; + _resultValue.evaluateTargetHealth = evaluateTargetHealth; + _resultValue.hostedZoneId = hostedZoneId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetCidrRoutingConfig.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetCidrRoutingConfig.java new file mode 100644 index 00000000000..4a57792ccd0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetCidrRoutingConfig.java @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetCidrRoutingConfig { + /** + * @return The CIDR collection ID. + * + */ + private String collectionId; + /** + * @return The CIDR collection location name. + * + */ + private String locationName; + + private GetRecordsResourceRecordSetCidrRoutingConfig() {} + /** + * @return The CIDR collection ID. + * + */ + public String collectionId() { + return this.collectionId; + } + /** + * @return The CIDR collection location name. + * + */ + public String locationName() { + return this.locationName; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetCidrRoutingConfig defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String collectionId; + private String locationName; + public Builder() {} + public Builder(GetRecordsResourceRecordSetCidrRoutingConfig defaults) { + Objects.requireNonNull(defaults); + this.collectionId = defaults.collectionId; + this.locationName = defaults.locationName; + } + + @CustomType.Setter + public Builder collectionId(String collectionId) { + if (collectionId == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetCidrRoutingConfig", "collectionId"); + } + this.collectionId = collectionId; + return this; + } + @CustomType.Setter + public Builder locationName(String locationName) { + if (locationName == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetCidrRoutingConfig", "locationName"); + } + this.locationName = locationName; + return this; + } + public GetRecordsResourceRecordSetCidrRoutingConfig build() { + final var _resultValue = new GetRecordsResourceRecordSetCidrRoutingConfig(); + _resultValue.collectionId = collectionId; + _resultValue.locationName = locationName; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeolocation.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeolocation.java new file mode 100644 index 00000000000..4ae0ac4a5ba --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeolocation.java @@ -0,0 +1,104 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetGeolocation { + /** + * @return The two-letter code for the continent. + * + */ + private String continentCode; + /** + * @return The two-letter code for a country. + * + */ + private String countryCode; + /** + * @return The two-letter code for a state of the United States. + * + */ + private String subdivisionCode; + + private GetRecordsResourceRecordSetGeolocation() {} + /** + * @return The two-letter code for the continent. + * + */ + public String continentCode() { + return this.continentCode; + } + /** + * @return The two-letter code for a country. + * + */ + public String countryCode() { + return this.countryCode; + } + /** + * @return The two-letter code for a state of the United States. + * + */ + public String subdivisionCode() { + return this.subdivisionCode; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetGeolocation defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String continentCode; + private String countryCode; + private String subdivisionCode; + public Builder() {} + public Builder(GetRecordsResourceRecordSetGeolocation defaults) { + Objects.requireNonNull(defaults); + this.continentCode = defaults.continentCode; + this.countryCode = defaults.countryCode; + this.subdivisionCode = defaults.subdivisionCode; + } + + @CustomType.Setter + public Builder continentCode(String continentCode) { + if (continentCode == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeolocation", "continentCode"); + } + this.continentCode = continentCode; + return this; + } + @CustomType.Setter + public Builder countryCode(String countryCode) { + if (countryCode == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeolocation", "countryCode"); + } + this.countryCode = countryCode; + return this; + } + @CustomType.Setter + public Builder subdivisionCode(String subdivisionCode) { + if (subdivisionCode == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeolocation", "subdivisionCode"); + } + this.subdivisionCode = subdivisionCode; + return this; + } + public GetRecordsResourceRecordSetGeolocation build() { + final var _resultValue = new GetRecordsResourceRecordSetGeolocation(); + _resultValue.continentCode = continentCode; + _resultValue.countryCode = countryCode; + _resultValue.subdivisionCode = subdivisionCode; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocation.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocation.java new file mode 100644 index 00000000000..7ab15fca876 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocation.java @@ -0,0 +1,129 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSetGeoproximityLocationCoordinates; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetGeoproximityLocation { + /** + * @return The AWS Region the resource you are directing DNS traffic to, is in. + * + */ + private String awsRegion; + /** + * @return The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + * + */ + private Integer bias; + /** + * @return Contains the longitude and latitude for a geographic region. + * + */ + private GetRecordsResourceRecordSetGeoproximityLocationCoordinates coordinates; + /** + * @return An AWS Local Zone Group. + * + */ + private String localZoneGroup; + + private GetRecordsResourceRecordSetGeoproximityLocation() {} + /** + * @return The AWS Region the resource you are directing DNS traffic to, is in. + * + */ + public String awsRegion() { + return this.awsRegion; + } + /** + * @return The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + * + */ + public Integer bias() { + return this.bias; + } + /** + * @return Contains the longitude and latitude for a geographic region. + * + */ + public GetRecordsResourceRecordSetGeoproximityLocationCoordinates coordinates() { + return this.coordinates; + } + /** + * @return An AWS Local Zone Group. + * + */ + public String localZoneGroup() { + return this.localZoneGroup; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetGeoproximityLocation defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String awsRegion; + private Integer bias; + private GetRecordsResourceRecordSetGeoproximityLocationCoordinates coordinates; + private String localZoneGroup; + public Builder() {} + public Builder(GetRecordsResourceRecordSetGeoproximityLocation defaults) { + Objects.requireNonNull(defaults); + this.awsRegion = defaults.awsRegion; + this.bias = defaults.bias; + this.coordinates = defaults.coordinates; + this.localZoneGroup = defaults.localZoneGroup; + } + + @CustomType.Setter + public Builder awsRegion(String awsRegion) { + if (awsRegion == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocation", "awsRegion"); + } + this.awsRegion = awsRegion; + return this; + } + @CustomType.Setter + public Builder bias(Integer bias) { + if (bias == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocation", "bias"); + } + this.bias = bias; + return this; + } + @CustomType.Setter + public Builder coordinates(GetRecordsResourceRecordSetGeoproximityLocationCoordinates coordinates) { + if (coordinates == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocation", "coordinates"); + } + this.coordinates = coordinates; + return this; + } + @CustomType.Setter + public Builder localZoneGroup(String localZoneGroup) { + if (localZoneGroup == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocation", "localZoneGroup"); + } + this.localZoneGroup = localZoneGroup; + return this; + } + public GetRecordsResourceRecordSetGeoproximityLocation build() { + final var _resultValue = new GetRecordsResourceRecordSetGeoproximityLocation(); + _resultValue.awsRegion = awsRegion; + _resultValue.bias = bias; + _resultValue.coordinates = coordinates; + _resultValue.localZoneGroup = localZoneGroup; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinates.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinates.java new file mode 100644 index 00000000000..340ca8a9923 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetGeoproximityLocationCoordinates.java @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetGeoproximityLocationCoordinates { + /** + * @return Latitude. + * + */ + private String latitude; + /** + * @return Longitude. + * + */ + private String longitude; + + private GetRecordsResourceRecordSetGeoproximityLocationCoordinates() {} + /** + * @return Latitude. + * + */ + public String latitude() { + return this.latitude; + } + /** + * @return Longitude. + * + */ + public String longitude() { + return this.longitude; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetGeoproximityLocationCoordinates defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String latitude; + private String longitude; + public Builder() {} + public Builder(GetRecordsResourceRecordSetGeoproximityLocationCoordinates defaults) { + Objects.requireNonNull(defaults); + this.latitude = defaults.latitude; + this.longitude = defaults.longitude; + } + + @CustomType.Setter + public Builder latitude(String latitude) { + if (latitude == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocationCoordinates", "latitude"); + } + this.latitude = latitude; + return this; + } + @CustomType.Setter + public Builder longitude(String longitude) { + if (longitude == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetGeoproximityLocationCoordinates", "longitude"); + } + this.longitude = longitude; + return this; + } + public GetRecordsResourceRecordSetGeoproximityLocationCoordinates build() { + final var _resultValue = new GetRecordsResourceRecordSetGeoproximityLocationCoordinates(); + _resultValue.latitude = latitude; + _resultValue.longitude = longitude; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetResourceRecord.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetResourceRecord.java new file mode 100644 index 00000000000..d3ebc02682e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResourceRecordSetResourceRecord.java @@ -0,0 +1,58 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class GetRecordsResourceRecordSetResourceRecord { + /** + * @return The DNS record value. + * + */ + private String value; + + private GetRecordsResourceRecordSetResourceRecord() {} + /** + * @return The DNS record value. + * + */ + public String value() { + return this.value; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResourceRecordSetResourceRecord defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String value; + public Builder() {} + public Builder(GetRecordsResourceRecordSetResourceRecord defaults) { + Objects.requireNonNull(defaults); + this.value = defaults.value; + } + + @CustomType.Setter + public Builder value(String value) { + if (value == null) { + throw new MissingRequiredPropertyException("GetRecordsResourceRecordSetResourceRecord", "value"); + } + this.value = value; + return this; + } + public GetRecordsResourceRecordSetResourceRecord build() { + final var _resultValue = new GetRecordsResourceRecordSetResourceRecord(); + _resultValue.value = value; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResult.java b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResult.java new file mode 100644 index 00000000000..7c4a199bee3 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/route53/outputs/GetRecordsResult.java @@ -0,0 +1,116 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.route53.outputs; + +import com.pulumi.aws.route53.outputs.GetRecordsResourceRecordSet; +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class GetRecordsResult { + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + private String id; + private @Nullable String nameRegex; + /** + * @return The resource records sets. + * + */ + private List resourceRecordSets; + private String zoneId; + + private GetRecordsResult() {} + /** + * @return The provider-assigned unique ID for this managed resource. + * + */ + public String id() { + return this.id; + } + public Optional nameRegex() { + return Optional.ofNullable(this.nameRegex); + } + /** + * @return The resource records sets. + * + */ + public List resourceRecordSets() { + return this.resourceRecordSets; + } + public String zoneId() { + return this.zoneId; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(GetRecordsResult defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String id; + private @Nullable String nameRegex; + private List resourceRecordSets; + private String zoneId; + public Builder() {} + public Builder(GetRecordsResult defaults) { + Objects.requireNonNull(defaults); + this.id = defaults.id; + this.nameRegex = defaults.nameRegex; + this.resourceRecordSets = defaults.resourceRecordSets; + this.zoneId = defaults.zoneId; + } + + @CustomType.Setter + public Builder id(String id) { + if (id == null) { + throw new MissingRequiredPropertyException("GetRecordsResult", "id"); + } + this.id = id; + return this; + } + @CustomType.Setter + public Builder nameRegex(@Nullable String nameRegex) { + + this.nameRegex = nameRegex; + return this; + } + @CustomType.Setter + public Builder resourceRecordSets(List resourceRecordSets) { + if (resourceRecordSets == null) { + throw new MissingRequiredPropertyException("GetRecordsResult", "resourceRecordSets"); + } + this.resourceRecordSets = resourceRecordSets; + return this; + } + public Builder resourceRecordSets(GetRecordsResourceRecordSet... resourceRecordSets) { + return resourceRecordSets(List.of(resourceRecordSets)); + } + @CustomType.Setter + public Builder zoneId(String zoneId) { + if (zoneId == null) { + throw new MissingRequiredPropertyException("GetRecordsResult", "zoneId"); + } + this.zoneId = zoneId; + return this; + } + public GetRecordsResult build() { + final var _resultValue = new GetRecordsResult(); + _resultValue.id = id; + _resultValue.nameRegex = nameRegex; + _resultValue.resourceRecordSets = resourceRecordSets; + _resultValue.zoneId = zoneId; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopy.java b/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopy.java index f1a6534f555..b2ba2164bf8 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopy.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopy.java @@ -7,6 +7,7 @@ import com.pulumi.aws.s3.ObjectCopyArgs; import com.pulumi.aws.s3.inputs.ObjectCopyState; import com.pulumi.aws.s3.outputs.ObjectCopyGrant; +import com.pulumi.aws.s3.outputs.ObjectCopyOverrideProvider; import com.pulumi.core.Output; import com.pulumi.core.annotations.Export; import com.pulumi.core.annotations.ResourceType; @@ -64,6 +65,53 @@ *
* <!--End PulumiCodeChooser --> * + * ### Ignoring Provider `default_tags` + * + * S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). + * If the resource's own `tags` and the provider-level `default_tags` would together lead to more than 10 tags on an S3 object copy, use the `override_provider` configuration block to suppress any provider-level `default_tags`. + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.s3.ObjectCopy;
+ * import com.pulumi.aws.s3.ObjectCopyArgs;
+ * import com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderArgs;
+ * import com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderDefaultTagsArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var test = new ObjectCopy("test", ObjectCopyArgs.builder()
+ *             .bucket("destination_bucket")
+ *             .key("destination_key")
+ *             .source("source_bucket/source_key")
+ *             .overrideProvider(ObjectCopyOverrideProviderArgs.builder()
+ *                 .defaultTags(ObjectCopyOverrideProviderDefaultTagsArgs.builder()
+ *                     .tags()
+ *                     .build())
+ *                 .build())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * */ @ResourceType(type="aws:s3/objectCopy:ObjectCopy") public class ObjectCopy extends com.pulumi.resources.CustomResource { @@ -577,6 +625,12 @@ public Output objectLockMode() { public Output objectLockRetainUntilDate() { return this.objectLockRetainUntilDate; } + @Export(name="overrideProvider", refs={ObjectCopyOverrideProvider.class}, tree="[0]") + private Output overrideProvider; + + public Output> overrideProvider() { + return Codegen.optional(this.overrideProvider); + } /** * If present, indicates that the requester was successfully charged for the request. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopyArgs.java b/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopyArgs.java index cc33ad8aaab..9faa4eb8b18 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/ObjectCopyArgs.java @@ -4,6 +4,7 @@ package com.pulumi.aws.s3; import com.pulumi.aws.s3.inputs.ObjectCopyGrantArgs; +import com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import com.pulumi.exceptions.MissingRequiredPropertyException; @@ -447,6 +448,13 @@ public Optional> objectLockRetainUntilDate() { return Optional.ofNullable(this.objectLockRetainUntilDate); } + @Import(name="overrideProvider") + private @Nullable Output overrideProvider; + + public Optional> overrideProvider() { + return Optional.ofNullable(this.overrideProvider); + } + /** * Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. * @@ -633,6 +641,7 @@ private ObjectCopyArgs(ObjectCopyArgs $) { this.objectLockLegalHoldStatus = $.objectLockLegalHoldStatus; this.objectLockMode = $.objectLockMode; this.objectLockRetainUntilDate = $.objectLockRetainUntilDate; + this.overrideProvider = $.overrideProvider; this.requestPayer = $.requestPayer; this.serverSideEncryption = $.serverSideEncryption; this.source = $.source; @@ -1270,6 +1279,15 @@ public Builder objectLockRetainUntilDate(String objectLockRetainUntilDate) { return objectLockRetainUntilDate(Output.of(objectLockRetainUntilDate)); } + public Builder overrideProvider(@Nullable Output overrideProvider) { + $.overrideProvider = overrideProvider; + return this; + } + + public Builder overrideProvider(ObjectCopyOverrideProviderArgs overrideProvider) { + return overrideProvider(Output.of(overrideProvider)); + } + /** * @param requestPayer Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderArgs.java b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderArgs.java new file mode 100644 index 00000000000..b280ecd4078 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.s3.inputs; + +import com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderDefaultTagsArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ObjectCopyOverrideProviderArgs extends com.pulumi.resources.ResourceArgs { + + public static final ObjectCopyOverrideProviderArgs Empty = new ObjectCopyOverrideProviderArgs(); + + /** + * Override the provider `default_tags` configuration block. + * + */ + @Import(name="defaultTags") + private @Nullable Output defaultTags; + + /** + * @return Override the provider `default_tags` configuration block. + * + */ + public Optional> defaultTags() { + return Optional.ofNullable(this.defaultTags); + } + + private ObjectCopyOverrideProviderArgs() {} + + private ObjectCopyOverrideProviderArgs(ObjectCopyOverrideProviderArgs $) { + this.defaultTags = $.defaultTags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ObjectCopyOverrideProviderArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ObjectCopyOverrideProviderArgs $; + + public Builder() { + $ = new ObjectCopyOverrideProviderArgs(); + } + + public Builder(ObjectCopyOverrideProviderArgs defaults) { + $ = new ObjectCopyOverrideProviderArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param defaultTags Override the provider `default_tags` configuration block. + * + * @return builder + * + */ + public Builder defaultTags(@Nullable Output defaultTags) { + $.defaultTags = defaultTags; + return this; + } + + /** + * @param defaultTags Override the provider `default_tags` configuration block. + * + * @return builder + * + */ + public Builder defaultTags(ObjectCopyOverrideProviderDefaultTagsArgs defaultTags) { + return defaultTags(Output.of(defaultTags)); + } + + public ObjectCopyOverrideProviderArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderDefaultTagsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderDefaultTagsArgs.java new file mode 100644 index 00000000000..2fd5cbbf612 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyOverrideProviderDefaultTagsArgs.java @@ -0,0 +1,84 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.s3.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ObjectCopyOverrideProviderDefaultTagsArgs extends com.pulumi.resources.ResourceArgs { + + public static final ObjectCopyOverrideProviderDefaultTagsArgs Empty = new ObjectCopyOverrideProviderDefaultTagsArgs(); + + /** + * Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + private ObjectCopyOverrideProviderDefaultTagsArgs() {} + + private ObjectCopyOverrideProviderDefaultTagsArgs(ObjectCopyOverrideProviderDefaultTagsArgs $) { + this.tags = $.tags; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ObjectCopyOverrideProviderDefaultTagsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ObjectCopyOverrideProviderDefaultTagsArgs $; + + public Builder() { + $ = new ObjectCopyOverrideProviderDefaultTagsArgs(); + } + + public Builder(ObjectCopyOverrideProviderDefaultTagsArgs defaults) { + $ = new ObjectCopyOverrideProviderDefaultTagsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param tags Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public ObjectCopyOverrideProviderDefaultTagsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyState.java b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyState.java index a312be9b678..ac91ac92e04 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/ObjectCopyState.java @@ -4,6 +4,7 @@ package com.pulumi.aws.s3.inputs; import com.pulumi.aws.s3.inputs.ObjectCopyGrantArgs; +import com.pulumi.aws.s3.inputs.ObjectCopyOverrideProviderArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.Boolean; @@ -566,6 +567,13 @@ public Optional> objectLockRetainUntilDate() { return Optional.ofNullable(this.objectLockRetainUntilDate); } + @Import(name="overrideProvider") + private @Nullable Output overrideProvider; + + public Optional> overrideProvider() { + return Optional.ofNullable(this.overrideProvider); + } + /** * If present, indicates that the requester was successfully charged for the request. * @@ -828,6 +836,7 @@ private ObjectCopyState(ObjectCopyState $) { this.objectLockLegalHoldStatus = $.objectLockLegalHoldStatus; this.objectLockMode = $.objectLockMode; this.objectLockRetainUntilDate = $.objectLockRetainUntilDate; + this.overrideProvider = $.overrideProvider; this.requestCharged = $.requestCharged; this.requestPayer = $.requestPayer; this.serverSideEncryption = $.serverSideEncryption; @@ -1637,6 +1646,15 @@ public Builder objectLockRetainUntilDate(String objectLockRetainUntilDate) { return objectLockRetainUntilDate(Output.of(objectLockRetainUntilDate)); } + public Builder overrideProvider(@Nullable Output overrideProvider) { + $.overrideProvider = overrideProvider; + return this; + } + + public Builder overrideProvider(ObjectCopyOverrideProviderArgs overrideProvider) { + return overrideProvider(Output.of(overrideProvider)); + } + /** * @param requestCharged If present, indicates that the requester was successfully charged for the request. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProvider.java b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProvider.java new file mode 100644 index 00000000000..17fc427fbe2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProvider.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.s3.outputs; + +import com.pulumi.aws.s3.outputs.ObjectCopyOverrideProviderDefaultTags; +import com.pulumi.core.annotations.CustomType; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class ObjectCopyOverrideProvider { + /** + * @return Override the provider `default_tags` configuration block. + * + */ + private @Nullable ObjectCopyOverrideProviderDefaultTags defaultTags; + + private ObjectCopyOverrideProvider() {} + /** + * @return Override the provider `default_tags` configuration block. + * + */ + public Optional defaultTags() { + return Optional.ofNullable(this.defaultTags); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(ObjectCopyOverrideProvider defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable ObjectCopyOverrideProviderDefaultTags defaultTags; + public Builder() {} + public Builder(ObjectCopyOverrideProvider defaults) { + Objects.requireNonNull(defaults); + this.defaultTags = defaults.defaultTags; + } + + @CustomType.Setter + public Builder defaultTags(@Nullable ObjectCopyOverrideProviderDefaultTags defaultTags) { + + this.defaultTags = defaultTags; + return this; + } + public ObjectCopyOverrideProvider build() { + final var _resultValue = new ObjectCopyOverrideProvider(); + _resultValue.defaultTags = defaultTags; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProviderDefaultTags.java b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProviderDefaultTags.java new file mode 100644 index 00000000000..cb43c967d42 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/ObjectCopyOverrideProviderDefaultTags.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.s3.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import javax.annotation.Nullable; + +@CustomType +public final class ObjectCopyOverrideProviderDefaultTags { + /** + * @return Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + private @Nullable Map tags; + + private ObjectCopyOverrideProviderDefaultTags() {} + /** + * @return Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Map tags() { + return this.tags == null ? Map.of() : this.tags; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(ObjectCopyOverrideProviderDefaultTags defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Map tags; + public Builder() {} + public Builder(ObjectCopyOverrideProviderDefaultTags defaults) { + Objects.requireNonNull(defaults); + this.tags = defaults.tags; + } + + @CustomType.Setter + public Builder tags(@Nullable Map tags) { + + this.tags = tags; + return this; + } + public ObjectCopyOverrideProviderDefaultTags build() { + final var _resultValue = new ObjectCopyOverrideProviderDefaultTags(); + _resultValue.tags = tags; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3tables/Table.java b/sdk/java/src/main/java/com/pulumi/aws/s3tables/Table.java index 27d89545812..43d72a06082 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3tables/Table.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3tables/Table.java @@ -59,7 +59,7 @@ * * var example = new Table("example", TableArgs.builder() * .name("example-table") - * .namespace(exampleNamespace) + * .namespace(exampleNamespace.namespace()) * .tableBucketArn(exampleNamespace.tableBucketArn()) * .format("ICEBERG") * .build()); diff --git a/sdk/java/src/main/java/com/pulumi/aws/ssmincidents/outputs/GetReplicationSetResult.java b/sdk/java/src/main/java/com/pulumi/aws/ssmincidents/outputs/GetReplicationSetResult.java index e01595ddb4b..a11fbefaec4 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ssmincidents/outputs/GetReplicationSetResult.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ssmincidents/outputs/GetReplicationSetResult.java @@ -15,7 +15,7 @@ @CustomType public final class GetReplicationSetResult { /** - * @return The Amazon Resouce Name (ARN) of the replication set. + * @return The Amazon Resource Name (ARN) of the replication set. * */ private String arn; @@ -54,7 +54,7 @@ public final class GetReplicationSetResult { private GetReplicationSetResult() {} /** - * @return The Amazon Resouce Name (ARN) of the replication set. + * @return The Amazon Resource Name (ARN) of the replication set. * */ public String arn() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/ssoadmin/ManagedPolicyAttachment.java b/sdk/java/src/main/java/com/pulumi/aws/ssoadmin/ManagedPolicyAttachment.java index 50b9365381f..615ab77686b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/ssoadmin/ManagedPolicyAttachment.java +++ b/sdk/java/src/main/java/com/pulumi/aws/ssoadmin/ManagedPolicyAttachment.java @@ -115,7 +115,7 @@ * .description("Admin Group") * .build()); * - * var accountAssignment = new AccountAssignment("accountAssignment", AccountAssignmentArgs.builder() + * var exampleAccountAssignment = new AccountAssignment("exampleAccountAssignment", AccountAssignmentArgs.builder() * .instanceArn(example.applyValue(getInstancesResult -> getInstancesResult.arns()[0])) * .permissionSetArn(examplePermissionSet.arn()) * .principalId(exampleGroup.groupId()) @@ -129,7 +129,7 @@ * .managedPolicyArn("arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup") * .permissionSetArn(examplePermissionSet.arn()) * .build(), CustomResourceOptions.builder() - * .dependsOn(exampleAwsSsoadminAccountAssignment) + * .dependsOn(exampleAccountAssignment) * .build()); * * } diff --git a/sdk/java/src/main/java/com/pulumi/aws/transfer/outputs/GetConnectorSftpConfig.java b/sdk/java/src/main/java/com/pulumi/aws/transfer/outputs/GetConnectorSftpConfig.java index 7426b87cd2f..0b379cb4b32 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/transfer/outputs/GetConnectorSftpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/aws/transfer/outputs/GetConnectorSftpConfig.java @@ -17,7 +17,7 @@ public final class GetConnectorSftpConfig { */ private List trustedHostKeys; /** - * @return Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + * @return Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. * */ private String userSecretId; @@ -31,7 +31,7 @@ public List trustedHostKeys() { return this.trustedHostKeys; } /** - * @return Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + * @return Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. * */ public String userSecretId() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGateway.java b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGateway.java new file mode 100644 index 00000000000..be5bc921710 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGateway.java @@ -0,0 +1,347 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.vpclattice; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.vpclattice.ResourceGatewayArgs; +import com.pulumi.aws.vpclattice.inputs.ResourceGatewayState; +import com.pulumi.aws.vpclattice.outputs.ResourceGatewayTimeouts; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Export; +import com.pulumi.core.annotations.ResourceType; +import com.pulumi.core.internal.Codegen; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import javax.annotation.Nullable; + +/** + * Resource for managing an AWS VPC Lattice Resource Gateway. + * + * ## Example Usage + * + * ### Basic Usage + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.vpclattice.ResourceGateway;
+ * import com.pulumi.aws.vpclattice.ResourceGatewayArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new ResourceGateway("example", ResourceGatewayArgs.builder()
+ *             .name("Example")
+ *             .vpcId(exampleAwsVpc.id())
+ *             .subnetIds(exampleAwsSubnet.id())
+ *             .tags(Map.of("Environment", "Example"))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### Specifying IP address type + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.vpclattice.ResourceGateway;
+ * import com.pulumi.aws.vpclattice.ResourceGatewayArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new ResourceGateway("example", ResourceGatewayArgs.builder()
+ *             .name("Example")
+ *             .vpcId(exampleAwsVpc.id())
+ *             .subnetIds(exampleAwsSubnet.id())
+ *             .ipAddressType("DUALSTACK")
+ *             .tags(Map.of("Environment", "Example"))
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ### With security groups + * + * <!--Start PulumiCodeChooser --> + *
+ * {@code
+ * package generated_program;
+ * 
+ * import com.pulumi.Context;
+ * import com.pulumi.Pulumi;
+ * import com.pulumi.core.Output;
+ * import com.pulumi.aws.vpclattice.ResourceGateway;
+ * import com.pulumi.aws.vpclattice.ResourceGatewayArgs;
+ * import java.util.List;
+ * import java.util.ArrayList;
+ * import java.util.Map;
+ * import java.io.File;
+ * import java.nio.file.Files;
+ * import java.nio.file.Paths;
+ * 
+ * public class App {
+ *     public static void main(String[] args) {
+ *         Pulumi.run(App::stack);
+ *     }
+ * 
+ *     public static void stack(Context ctx) {
+ *         var example = new ResourceGateway("example", ResourceGatewayArgs.builder()
+ *             .name("Example")
+ *             .vpcId(exampleAwsVpc.id())
+ *             .securityGroupIds(test.id())
+ *             .subnetIds(exampleAwsSubnet.id())
+ *             .build());
+ * 
+ *     }
+ * }
+ * }
+ * 
+ * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: + * + * ```sh + * $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f + * ``` + * + */ +@ResourceType(type="aws:vpclattice/resourceGateway:ResourceGateway") +public class ResourceGateway extends com.pulumi.resources.CustomResource { + /** + * ARN of the resource gateway. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return ARN of the resource gateway. + * + */ + public Output arn() { + return this.arn; + } + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + @Export(name="ipAddressType", refs={String.class}, tree="[0]") + private Output ipAddressType; + + /** + * @return IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + public Output ipAddressType() { + return this.ipAddressType; + } + /** + * Name of the resource gateway. + * + */ + @Export(name="name", refs={String.class}, tree="[0]") + private Output name; + + /** + * @return Name of the resource gateway. + * + */ + public Output name() { + return this.name; + } + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + @Export(name="securityGroupIds", refs={List.class,String.class}, tree="[0,1]") + private Output> securityGroupIds; + + /** + * @return Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + public Output> securityGroupIds() { + return this.securityGroupIds; + } + /** + * Status of the resource gateway. + * + */ + @Export(name="status", refs={String.class}, tree="[0]") + private Output status; + + /** + * @return Status of the resource gateway. + * + */ + public Output status() { + return this.status; + } + /** + * IDs of the VPC subnets in which to create the resource gateway. + * + */ + @Export(name="subnetIds", refs={List.class,String.class}, tree="[0,1]") + private Output> subnetIds; + + /** + * @return IDs of the VPC subnets in which to create the resource gateway. + * + */ + public Output> subnetIds() { + return this.subnetIds; + } + /** + * Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Output>> tags() { + return Codegen.optional(this.tags); + } + /** + * Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tagsAll; + + /** + * @return Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + */ + public Output> tagsAll() { + return this.tagsAll; + } + @Export(name="timeouts", refs={ResourceGatewayTimeouts.class}, tree="[0]") + private Output timeouts; + + public Output> timeouts() { + return Codegen.optional(this.timeouts); + } + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + @Export(name="vpcId", refs={String.class}, tree="[0]") + private Output vpcId; + + /** + * @return ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + public Output vpcId() { + return this.vpcId; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public ResourceGateway(java.lang.String name) { + this(name, ResourceGatewayArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public ResourceGateway(java.lang.String name, ResourceGatewayArgs args) { + this(name, args, null); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + * @param options A bag of options that control this resource's behavior. + */ + public ResourceGateway(java.lang.String name, ResourceGatewayArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:vpclattice/resourceGateway:ResourceGateway", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); + } + + private ResourceGateway(java.lang.String name, Output id, @Nullable ResourceGatewayState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:vpclattice/resourceGateway:ResourceGateway", name, state, makeResourceOptions(options, id), false); + } + + private static ResourceGatewayArgs makeArgs(ResourceGatewayArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + if (options != null && options.getUrn().isPresent()) { + return null; + } + return args == null ? ResourceGatewayArgs.Empty : args; + } + + private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { + var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() + .version(Utilities.getVersion()) + .build(); + return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); + } + + /** + * Get an existing Host 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 + * @param options Optional settings to control the behavior of the CustomResource. + */ + public static ResourceGateway get(java.lang.String name, Output id, @Nullable ResourceGatewayState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new ResourceGateway(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGatewayArgs.java b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGatewayArgs.java new file mode 100644 index 00000000000..e15d9907d20 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/ResourceGatewayArgs.java @@ -0,0 +1,323 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.vpclattice; + +import com.pulumi.aws.vpclattice.inputs.ResourceGatewayTimeoutsArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ResourceGatewayArgs extends com.pulumi.resources.ResourceArgs { + + public static final ResourceGatewayArgs Empty = new ResourceGatewayArgs(); + + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + @Import(name="ipAddressType") + private @Nullable Output ipAddressType; + + /** + * @return IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + public Optional> ipAddressType() { + return Optional.ofNullable(this.ipAddressType); + } + + /** + * Name of the resource gateway. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the resource gateway. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + @Import(name="securityGroupIds") + private @Nullable Output> securityGroupIds; + + /** + * @return Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + public Optional>> securityGroupIds() { + return Optional.ofNullable(this.securityGroupIds); + } + + /** + * IDs of the VPC subnets in which to create the resource gateway. + * + */ + @Import(name="subnetIds", required=true) + private Output> subnetIds; + + /** + * @return IDs of the VPC subnets in which to create the resource gateway. + * + */ + public Output> subnetIds() { + return this.subnetIds; + } + + /** + * Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + @Import(name="vpcId", required=true) + private Output vpcId; + + /** + * @return ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + public Output vpcId() { + return this.vpcId; + } + + private ResourceGatewayArgs() {} + + private ResourceGatewayArgs(ResourceGatewayArgs $) { + this.ipAddressType = $.ipAddressType; + this.name = $.name; + this.securityGroupIds = $.securityGroupIds; + this.subnetIds = $.subnetIds; + this.tags = $.tags; + this.timeouts = $.timeouts; + this.vpcId = $.vpcId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ResourceGatewayArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ResourceGatewayArgs $; + + public Builder() { + $ = new ResourceGatewayArgs(); + } + + public Builder(ResourceGatewayArgs defaults) { + $ = new ResourceGatewayArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param ipAddressType IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + * @return builder + * + */ + public Builder ipAddressType(@Nullable Output ipAddressType) { + $.ipAddressType = ipAddressType; + return this; + } + + /** + * @param ipAddressType IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + * @return builder + * + */ + public Builder ipAddressType(String ipAddressType) { + return ipAddressType(Output.of(ipAddressType)); + } + + /** + * @param name Name of the resource gateway. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the resource gateway. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(@Nullable Output> securityGroupIds) { + $.securityGroupIds = securityGroupIds; + return this; + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(List securityGroupIds) { + return securityGroupIds(Output.of(securityGroupIds)); + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(String... securityGroupIds) { + return securityGroupIds(List.of(securityGroupIds)); + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(Output> subnetIds) { + $.subnetIds = subnetIds; + return this; + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(List subnetIds) { + return subnetIds(Output.of(subnetIds)); + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(String... subnetIds) { + return subnetIds(List.of(subnetIds)); + } + + /** + * @param tags Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + public Builder timeouts(@Nullable Output timeouts) { + $.timeouts = timeouts; + return this; + } + + public Builder timeouts(ResourceGatewayTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + /** + * @param vpcId ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + * @return builder + * + */ + public Builder vpcId(Output vpcId) { + $.vpcId = vpcId; + return this; + } + + /** + * @param vpcId ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + * @return builder + * + */ + public Builder vpcId(String vpcId) { + return vpcId(Output.of(vpcId)); + } + + public ResourceGatewayArgs build() { + if ($.subnetIds == null) { + throw new MissingRequiredPropertyException("ResourceGatewayArgs", "subnetIds"); + } + if ($.vpcId == null) { + throw new MissingRequiredPropertyException("ResourceGatewayArgs", "vpcId"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayState.java b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayState.java new file mode 100644 index 00000000000..3538006feb0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayState.java @@ -0,0 +1,443 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.vpclattice.inputs; + +import com.pulumi.aws.vpclattice.inputs.ResourceGatewayTimeoutsArgs; +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ResourceGatewayState extends com.pulumi.resources.ResourceArgs { + + public static final ResourceGatewayState Empty = new ResourceGatewayState(); + + /** + * ARN of the resource gateway. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return ARN of the resource gateway. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + @Import(name="ipAddressType") + private @Nullable Output ipAddressType; + + /** + * @return IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + */ + public Optional> ipAddressType() { + return Optional.ofNullable(this.ipAddressType); + } + + /** + * Name of the resource gateway. + * + */ + @Import(name="name") + private @Nullable Output name; + + /** + * @return Name of the resource gateway. + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); + } + + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + @Import(name="securityGroupIds") + private @Nullable Output> securityGroupIds; + + /** + * @return Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + */ + public Optional>> securityGroupIds() { + return Optional.ofNullable(this.securityGroupIds); + } + + /** + * Status of the resource gateway. + * + */ + @Import(name="status") + private @Nullable Output status; + + /** + * @return Status of the resource gateway. + * + */ + public Optional> status() { + return Optional.ofNullable(this.status); + } + + /** + * IDs of the VPC subnets in which to create the resource gateway. + * + */ + @Import(name="subnetIds") + private @Nullable Output> subnetIds; + + /** + * @return IDs of the VPC subnets in which to create the resource gateway. + * + */ + public Optional>> subnetIds() { + return Optional.ofNullable(this.subnetIds); + } + + /** + * Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + /** + * Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + @Import(name="tagsAll") + private @Nullable Output> tagsAll; + + /** + * @return Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Optional>> tagsAll() { + return Optional.ofNullable(this.tagsAll); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + @Import(name="vpcId") + private @Nullable Output vpcId; + + /** + * @return ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + */ + public Optional> vpcId() { + return Optional.ofNullable(this.vpcId); + } + + private ResourceGatewayState() {} + + private ResourceGatewayState(ResourceGatewayState $) { + this.arn = $.arn; + this.ipAddressType = $.ipAddressType; + this.name = $.name; + this.securityGroupIds = $.securityGroupIds; + this.status = $.status; + this.subnetIds = $.subnetIds; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + this.timeouts = $.timeouts; + this.vpcId = $.vpcId; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ResourceGatewayState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ResourceGatewayState $; + + public Builder() { + $ = new ResourceGatewayState(); + } + + public Builder(ResourceGatewayState defaults) { + $ = new ResourceGatewayState(Objects.requireNonNull(defaults)); + } + + /** + * @param arn ARN of the resource gateway. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn ARN of the resource gateway. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param ipAddressType IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + * @return builder + * + */ + public Builder ipAddressType(@Nullable Output ipAddressType) { + $.ipAddressType = ipAddressType; + return this; + } + + /** + * @param ipAddressType IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + * + * @return builder + * + */ + public Builder ipAddressType(String ipAddressType) { + return ipAddressType(Output.of(ipAddressType)); + } + + /** + * @param name Name of the resource gateway. + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; + return this; + } + + /** + * @param name Name of the resource gateway. + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(@Nullable Output> securityGroupIds) { + $.securityGroupIds = securityGroupIds; + return this; + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(List securityGroupIds) { + return securityGroupIds(Output.of(securityGroupIds)); + } + + /** + * @param securityGroupIds Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + * + * @return builder + * + */ + public Builder securityGroupIds(String... securityGroupIds) { + return securityGroupIds(List.of(securityGroupIds)); + } + + /** + * @param status Status of the resource gateway. + * + * @return builder + * + */ + public Builder status(@Nullable Output status) { + $.status = status; + return this; + } + + /** + * @param status Status of the resource gateway. + * + * @return builder + * + */ + public Builder status(String status) { + return status(Output.of(status)); + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(@Nullable Output> subnetIds) { + $.subnetIds = subnetIds; + return this; + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(List subnetIds) { + return subnetIds(Output.of(subnetIds)); + } + + /** + * @param subnetIds IDs of the VPC subnets in which to create the resource gateway. + * + * @return builder + * + */ + public Builder subnetIds(String... subnetIds) { + return subnetIds(List.of(subnetIds)); + } + + /** + * @param tags Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param tags Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + * + * @return builder + * + */ + public Builder tags(Map tags) { + return tags(Output.of(tags)); + } + + /** + * @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(@Nullable Output> tagsAll) { + $.tagsAll = tagsAll; + return this; + } + + /** + * @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + * + * @return builder + * + * @deprecated + * Please use `tags` instead. + * + */ + @Deprecated /* Please use `tags` instead. */ + public Builder tagsAll(Map tagsAll) { + return tagsAll(Output.of(tagsAll)); + } + + public Builder timeouts(@Nullable Output timeouts) { + $.timeouts = timeouts; + return this; + } + + public Builder timeouts(ResourceGatewayTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + /** + * @param vpcId ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + * @return builder + * + */ + public Builder vpcId(@Nullable Output vpcId) { + $.vpcId = vpcId; + return this; + } + + /** + * @param vpcId ID of the VPC for the resource gateway. + * + * The following arguments are optional: + * + * @return builder + * + */ + public Builder vpcId(String vpcId) { + return vpcId(Output.of(vpcId)); + } + + public ResourceGatewayState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayTimeoutsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayTimeoutsArgs.java new file mode 100644 index 00000000000..4f12ee3b41f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/inputs/ResourceGatewayTimeoutsArgs.java @@ -0,0 +1,157 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.vpclattice.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class ResourceGatewayTimeoutsArgs extends com.pulumi.resources.ResourceArgs { + + public static final ResourceGatewayTimeoutsArgs Empty = new ResourceGatewayTimeoutsArgs(); + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + @Import(name="create") + private @Nullable Output create; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional> create() { + return Optional.ofNullable(this.create); + } + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + @Import(name="delete") + private @Nullable Output delete; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + public Optional> delete() { + return Optional.ofNullable(this.delete); + } + + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + @Import(name="update") + private @Nullable Output update; + + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional> update() { + return Optional.ofNullable(this.update); + } + + private ResourceGatewayTimeoutsArgs() {} + + private ResourceGatewayTimeoutsArgs(ResourceGatewayTimeoutsArgs $) { + this.create = $.create; + this.delete = $.delete; + this.update = $.update; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(ResourceGatewayTimeoutsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private ResourceGatewayTimeoutsArgs $; + + public Builder() { + $ = new ResourceGatewayTimeoutsArgs(); + } + + public Builder(ResourceGatewayTimeoutsArgs defaults) { + $ = new ResourceGatewayTimeoutsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param create A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder create(@Nullable Output create) { + $.create = create; + return this; + } + + /** + * @param create A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder create(String create) { + return create(Output.of(create)); + } + + /** + * @param delete A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + * @return builder + * + */ + public Builder delete(@Nullable Output delete) { + $.delete = delete; + return this; + } + + /** + * @param delete A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + * @return builder + * + */ + public Builder delete(String delete) { + return delete(Output.of(delete)); + } + + /** + * @param update A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder update(@Nullable Output update) { + $.update = update; + return this; + } + + /** + * @param update A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + * @return builder + * + */ + public Builder update(String update) { + return update(Output.of(update)); + } + + public ResourceGatewayTimeoutsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/vpclattice/outputs/ResourceGatewayTimeouts.java b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/outputs/ResourceGatewayTimeouts.java new file mode 100644 index 00000000000..3fca3b9117a --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/vpclattice/outputs/ResourceGatewayTimeouts.java @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.aws.vpclattice.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class ResourceGatewayTimeouts { + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + private @Nullable String create; + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + private @Nullable String delete; + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + private @Nullable String update; + + private ResourceGatewayTimeouts() {} + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional create() { + return Optional.ofNullable(this.create); + } + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + * + */ + public Optional delete() { + return Optional.ofNullable(this.delete); + } + /** + * @return A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + * + */ + public Optional update() { + return Optional.ofNullable(this.update); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(ResourceGatewayTimeouts defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String create; + private @Nullable String delete; + private @Nullable String update; + public Builder() {} + public Builder(ResourceGatewayTimeouts defaults) { + Objects.requireNonNull(defaults); + this.create = defaults.create; + this.delete = defaults.delete; + this.update = defaults.update; + } + + @CustomType.Setter + public Builder create(@Nullable String create) { + + this.create = create; + return this; + } + @CustomType.Setter + public Builder delete(@Nullable String delete) { + + this.delete = delete; + return this; + } + @CustomType.Setter + public Builder update(@Nullable String update) { + + this.update = update; + return this; + } + public ResourceGatewayTimeouts build() { + final var _resultValue = new ResourceGatewayTimeouts(); + _resultValue.create = create; + _resultValue.delete = delete; + _resultValue.update = update; + return _resultValue; + } + } +} diff --git a/sdk/nodejs/bedrock/agentAgentCollaborator.ts b/sdk/nodejs/bedrock/agentAgentCollaborator.ts new file mode 100644 index 00000000000..ad39f481da9 --- /dev/null +++ b/sdk/nodejs/bedrock/agentAgentCollaborator.ts @@ -0,0 +1,266 @@ +// *** 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"; + +/** + * Resource for managing an AWS Bedrock Agents Agent Collaborator. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const current = aws.getCallerIdentity({}); + * const currentGetPartition = aws.getPartition({}); + * const currentGetRegion = aws.getRegion({}); + * const exampleAgentTrust = Promise.all([current, currentGetPartition, currentGetRegion, current]).then(([current, currentGetPartition, currentGetRegion, current1]) => aws.iam.getPolicyDocument({ + * statements: [{ + * actions: ["sts:AssumeRole"], + * principals: [{ + * identifiers: ["bedrock.amazonaws.com"], + * type: "Service", + * }], + * conditions: [ + * { + * test: "StringEquals", + * values: [current.accountId], + * variable: "aws:SourceAccount", + * }, + * { + * test: "ArnLike", + * values: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}:${current1.accountId}:agent/*`], + * variable: "AWS:SourceArn", + * }, + * ], + * }], + * })); + * const exampleAgentPermissions = Promise.all([currentGetPartition, currentGetRegion, currentGetRegion, current, currentGetRegion, current]).then(([currentGetPartition, currentGetRegion, currentGetRegion1, current, currentGetRegion2, current1]) => aws.iam.getPolicyDocument({ + * statements: [ + * { + * actions: ["bedrock:InvokeModel"], + * resources: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0`], + * }, + * { + * actions: [ + * "bedrock:GetAgentAlias", + * "bedrock:InvokeAgent", + * ], + * resources: [ + * `arn:${currentAgent.partition}:bedrock:${currentGetRegion1.name}:${current.accountId}:agent/*`, + * `arn:${currentAgent.partition}:bedrock:${currentGetRegion2.name}:${current1.accountId}:agent-alias/*`, + * ], + * }, + * ], + * })); + * const example = new aws.iam.Role("example", { + * assumeRolePolicy: exampleAgentTrust.then(exampleAgentTrust => exampleAgentTrust.json), + * namePrefix: "AmazonBedrockExecutionRoleForAgents_", + * }); + * const exampleRolePolicy = new aws.iam.RolePolicy("example", { + * policy: exampleAgentPermissions.then(exampleAgentPermissions => exampleAgentPermissions.json), + * role: example.id, + * }); + * const exampleCollaborator = new aws.bedrock.AgentAgent("example_collaborator", { + * agentName: "my-agent-collaborator", + * agentResourceRoleArn: example.arn, + * idleSessionTtlInSeconds: 500, + * foundationModel: "anthropic.claude-3-5-sonnet-20241022-v2:0", + * instruction: "do what the supervisor tells you to do", + * }); + * const exampleSupervisor = new aws.bedrock.AgentAgent("example_supervisor", { + * agentName: "my-agent-supervisor", + * agentResourceRoleArn: example.arn, + * agentCollaboration: "SUPERVISOR", + * idleSessionTtlInSeconds: 500, + * foundationModel: "anthropic.claude-3-5-sonnet-20241022-v2:0", + * instruction: "tell the sub agent what to do", + * prepareAgent: false, + * }); + * const exampleAgentAgentAlias = new aws.bedrock.AgentAgentAlias("example", { + * agentAliasName: "my-agent-alias", + * agentId: exampleCollaborator.agentId, + * description: "Test Alias", + * }); + * const exampleAgentAgentCollaborator = new aws.bedrock.AgentAgentCollaborator("example", { + * agentId: exampleSupervisor.agentId, + * collaborationInstruction: "tell the other agent what to do", + * collaboratorName: "my-collab-example", + * relayConversationHistory: "TO_COLLABORATOR", + * agentDescriptor: { + * aliasArn: exampleAgentAgentAlias.agentAliasArn, + * }, + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: + * + * ```sh + * $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY + * ``` + */ +export class AgentAgentCollaborator extends pulumi.CustomResource { + /** + * Get an existing AgentAgentCollaborator 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?: AgentAgentCollaboratorState, opts?: pulumi.CustomResourceOptions): AgentAgentCollaborator { + return new AgentAgentCollaborator(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator'; + + /** + * Returns true if the given object is an instance of AgentAgentCollaborator. 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 AgentAgentCollaborator { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === AgentAgentCollaborator.__pulumiType; + } + + public readonly agentDescriptor!: pulumi.Output; + /** + * ID if the agent to associate the collaborator. + */ + public readonly agentId!: pulumi.Output; + public readonly agentVersion!: pulumi.Output; + /** + * Instruction to give the collaborator. + */ + public readonly collaborationInstruction!: pulumi.Output; + /** + * ID of the Agent Collaborator. + */ + public /*out*/ readonly collaboratorId!: pulumi.Output; + public readonly collaboratorName!: pulumi.Output; + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + */ + public readonly prepareAgent!: pulumi.Output; + /** + * Configure relaying the history to the collaborator. + */ + public readonly relayConversationHistory!: pulumi.Output; + public readonly timeouts!: pulumi.Output; + + /** + * Create a AgentAgentCollaborator 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: AgentAgentCollaboratorArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: AgentAgentCollaboratorArgs | AgentAgentCollaboratorState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as AgentAgentCollaboratorState | undefined; + resourceInputs["agentDescriptor"] = state ? state.agentDescriptor : undefined; + resourceInputs["agentId"] = state ? state.agentId : undefined; + resourceInputs["agentVersion"] = state ? state.agentVersion : undefined; + resourceInputs["collaborationInstruction"] = state ? state.collaborationInstruction : undefined; + resourceInputs["collaboratorId"] = state ? state.collaboratorId : undefined; + resourceInputs["collaboratorName"] = state ? state.collaboratorName : undefined; + resourceInputs["prepareAgent"] = state ? state.prepareAgent : undefined; + resourceInputs["relayConversationHistory"] = state ? state.relayConversationHistory : undefined; + resourceInputs["timeouts"] = state ? state.timeouts : undefined; + } else { + const args = argsOrState as AgentAgentCollaboratorArgs | undefined; + if ((!args || args.agentId === undefined) && !opts.urn) { + throw new Error("Missing required property 'agentId'"); + } + if ((!args || args.collaborationInstruction === undefined) && !opts.urn) { + throw new Error("Missing required property 'collaborationInstruction'"); + } + if ((!args || args.collaboratorName === undefined) && !opts.urn) { + throw new Error("Missing required property 'collaboratorName'"); + } + resourceInputs["agentDescriptor"] = args ? args.agentDescriptor : undefined; + resourceInputs["agentId"] = args ? args.agentId : undefined; + resourceInputs["agentVersion"] = args ? args.agentVersion : undefined; + resourceInputs["collaborationInstruction"] = args ? args.collaborationInstruction : undefined; + resourceInputs["collaboratorName"] = args ? args.collaboratorName : undefined; + resourceInputs["prepareAgent"] = args ? args.prepareAgent : undefined; + resourceInputs["relayConversationHistory"] = args ? args.relayConversationHistory : undefined; + resourceInputs["timeouts"] = args ? args.timeouts : undefined; + resourceInputs["collaboratorId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(AgentAgentCollaborator.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering AgentAgentCollaborator resources. + */ +export interface AgentAgentCollaboratorState { + agentDescriptor?: pulumi.Input; + /** + * ID if the agent to associate the collaborator. + */ + agentId?: pulumi.Input; + agentVersion?: pulumi.Input; + /** + * Instruction to give the collaborator. + */ + collaborationInstruction?: pulumi.Input; + /** + * ID of the Agent Collaborator. + */ + collaboratorId?: pulumi.Input; + collaboratorName?: pulumi.Input; + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + */ + prepareAgent?: pulumi.Input; + /** + * Configure relaying the history to the collaborator. + */ + relayConversationHistory?: pulumi.Input; + timeouts?: pulumi.Input; +} + +/** + * The set of arguments for constructing a AgentAgentCollaborator resource. + */ +export interface AgentAgentCollaboratorArgs { + agentDescriptor?: pulumi.Input; + /** + * ID if the agent to associate the collaborator. + */ + agentId: pulumi.Input; + agentVersion?: pulumi.Input; + /** + * Instruction to give the collaborator. + */ + collaborationInstruction: pulumi.Input; + collaboratorName: pulumi.Input; + /** + * Whether to prepare the agent after creation or modification. Defaults to `true`. + */ + prepareAgent?: pulumi.Input; + /** + * Configure relaying the history to the collaborator. + */ + relayConversationHistory?: pulumi.Input; + timeouts?: pulumi.Input; +} diff --git a/sdk/nodejs/bedrock/index.ts b/sdk/nodejs/bedrock/index.ts index 068e66f232f..d6963b64781 100644 --- a/sdk/nodejs/bedrock/index.ts +++ b/sdk/nodejs/bedrock/index.ts @@ -20,6 +20,11 @@ export type AgentAgentAlias = import("./agentAgentAlias").AgentAgentAlias; export const AgentAgentAlias: typeof import("./agentAgentAlias").AgentAgentAlias = null as any; utilities.lazyLoad(exports, ["AgentAgentAlias"], () => require("./agentAgentAlias")); +export { AgentAgentCollaboratorArgs, AgentAgentCollaboratorState } from "./agentAgentCollaborator"; +export type AgentAgentCollaborator = import("./agentAgentCollaborator").AgentAgentCollaborator; +export const AgentAgentCollaborator: typeof import("./agentAgentCollaborator").AgentAgentCollaborator = null as any; +utilities.lazyLoad(exports, ["AgentAgentCollaborator"], () => require("./agentAgentCollaborator")); + export { AgentAgentKnowledgeBaseAssociationArgs, AgentAgentKnowledgeBaseAssociationState } from "./agentAgentKnowledgeBaseAssociation"; export type AgentAgentKnowledgeBaseAssociation = import("./agentAgentKnowledgeBaseAssociation").AgentAgentKnowledgeBaseAssociation; export const AgentAgentKnowledgeBaseAssociation: typeof import("./agentAgentKnowledgeBaseAssociation").AgentAgentKnowledgeBaseAssociation = null as any; @@ -96,6 +101,8 @@ const _module = { return new AgentAgentActionGroup(name, undefined, { urn }) case "aws:bedrock/agentAgentAlias:AgentAgentAlias": return new AgentAgentAlias(name, undefined, { urn }) + case "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator": + return new AgentAgentCollaborator(name, undefined, { urn }) case "aws:bedrock/agentAgentKnowledgeBaseAssociation:AgentAgentKnowledgeBaseAssociation": return new AgentAgentKnowledgeBaseAssociation(name, undefined, { urn }) case "aws:bedrock/agentDataSource:AgentDataSource": @@ -120,6 +127,7 @@ const _module = { pulumi.runtime.registerResourceModule("aws", "bedrock/agentAgent", _module) pulumi.runtime.registerResourceModule("aws", "bedrock/agentAgentActionGroup", _module) pulumi.runtime.registerResourceModule("aws", "bedrock/agentAgentAlias", _module) +pulumi.runtime.registerResourceModule("aws", "bedrock/agentAgentCollaborator", _module) pulumi.runtime.registerResourceModule("aws", "bedrock/agentAgentKnowledgeBaseAssociation", _module) pulumi.runtime.registerResourceModule("aws", "bedrock/agentDataSource", _module) pulumi.runtime.registerResourceModule("aws", "bedrock/agentKnowledgeBase", _module) diff --git a/sdk/nodejs/cleanrooms/index.ts b/sdk/nodejs/cleanrooms/index.ts index ada3e6a928a..99d048e62fe 100644 --- a/sdk/nodejs/cleanrooms/index.ts +++ b/sdk/nodejs/cleanrooms/index.ts @@ -15,6 +15,11 @@ export type ConfiguredTable = import("./configuredTable").ConfiguredTable; export const ConfiguredTable: typeof import("./configuredTable").ConfiguredTable = null as any; utilities.lazyLoad(exports, ["ConfiguredTable"], () => require("./configuredTable")); +export { MembershipArgs, MembershipState } from "./membership"; +export type Membership = import("./membership").Membership; +export const Membership: typeof import("./membership").Membership = null as any; +utilities.lazyLoad(exports, ["Membership"], () => require("./membership")); + const _module = { version: utilities.getVersion(), @@ -24,6 +29,8 @@ const _module = { return new Collaboration(name, undefined, { urn }) case "aws:cleanrooms/configuredTable:ConfiguredTable": return new ConfiguredTable(name, undefined, { urn }) + case "aws:cleanrooms/membership:Membership": + return new Membership(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } @@ -31,3 +38,4 @@ const _module = { }; pulumi.runtime.registerResourceModule("aws", "cleanrooms/collaboration", _module) pulumi.runtime.registerResourceModule("aws", "cleanrooms/configuredTable", _module) +pulumi.runtime.registerResourceModule("aws", "cleanrooms/membership", _module) diff --git a/sdk/nodejs/cleanrooms/membership.ts b/sdk/nodejs/cleanrooms/membership.ts new file mode 100644 index 00000000000..81691b30478 --- /dev/null +++ b/sdk/nodejs/cleanrooms/membership.ts @@ -0,0 +1,275 @@ +// *** 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"; + +/** + * Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. + * + * ## Example Usage + * + * ### Membership with tags + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const testMembership = new aws.cleanrooms.Membership("test_membership", { + * collaborationId: "1234abcd-12ab-34cd-56ef-1234567890ab", + * queryLogStatus: "DISABLED", + * defaultResultConfiguration: { + * roleArn: "arn:aws:iam::123456789012:role/role-name", + * outputConfiguration: { + * s3: { + * bucket: "test-bucket", + * resultFormat: "PARQUET", + * keyPrefix: "test-prefix", + * }, + * }, + * }, + * tags: { + * Project: "Terraform", + * }, + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: + * + * ```sh + * $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab + * ``` + */ +export class Membership extends pulumi.CustomResource { + /** + * Get an existing Membership 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?: MembershipState, opts?: pulumi.CustomResourceOptions): Membership { + return new Membership(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cleanrooms/membership:Membership'; + + /** + * Returns true if the given object is an instance of Membership. 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 Membership { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Membership.__pulumiType; + } + + /** + * The ARN of the membership. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The ARN of the joined collaboration. + */ + public /*out*/ readonly collaborationArn!: pulumi.Output; + /** + * The account ID of the collaboration's creator. + */ + public /*out*/ readonly collaborationCreatorAccountId!: pulumi.Output; + /** + * The display name of the collaboration's creator. + */ + public /*out*/ readonly collaborationCreatorDisplayName!: pulumi.Output; + /** + * The ID of the collaboration to which the member was invited. + */ + public readonly collaborationId!: pulumi.Output; + /** + * The name of the joined collaboration. + */ + public /*out*/ readonly collaborationName!: pulumi.Output; + /** + * The date and time the membership was created. + */ + public /*out*/ readonly createTime!: pulumi.Output; + /** + * The default configuration for a query result. + */ + public readonly defaultResultConfiguration!: pulumi.Output; + /** + * The list of abilities for the invited member. + */ + public /*out*/ readonly memberAbilities!: pulumi.Output; + public readonly paymentConfiguration!: pulumi.Output; + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + */ + public readonly queryLogStatus!: pulumi.Output; + /** + * The status of the membership. + */ + public /*out*/ readonly status!: pulumi.Output; + /** + * Key value pairs which tag the membership. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; + /** + * @deprecated Please use `tags` instead. + */ + public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; + /** + * The date and time the membership was last updated. + */ + public /*out*/ readonly updateTime!: pulumi.Output; + + /** + * Create a Membership 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: MembershipArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: MembershipArgs | MembershipState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as MembershipState | undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["collaborationArn"] = state ? state.collaborationArn : undefined; + resourceInputs["collaborationCreatorAccountId"] = state ? state.collaborationCreatorAccountId : undefined; + resourceInputs["collaborationCreatorDisplayName"] = state ? state.collaborationCreatorDisplayName : undefined; + resourceInputs["collaborationId"] = state ? state.collaborationId : undefined; + resourceInputs["collaborationName"] = state ? state.collaborationName : undefined; + resourceInputs["createTime"] = state ? state.createTime : undefined; + resourceInputs["defaultResultConfiguration"] = state ? state.defaultResultConfiguration : undefined; + resourceInputs["memberAbilities"] = state ? state.memberAbilities : undefined; + resourceInputs["paymentConfiguration"] = state ? state.paymentConfiguration : undefined; + resourceInputs["queryLogStatus"] = state ? state.queryLogStatus : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + resourceInputs["updateTime"] = state ? state.updateTime : undefined; + } else { + const args = argsOrState as MembershipArgs | undefined; + if ((!args || args.collaborationId === undefined) && !opts.urn) { + throw new Error("Missing required property 'collaborationId'"); + } + if ((!args || args.queryLogStatus === undefined) && !opts.urn) { + throw new Error("Missing required property 'queryLogStatus'"); + } + resourceInputs["collaborationId"] = args ? args.collaborationId : undefined; + resourceInputs["defaultResultConfiguration"] = args ? args.defaultResultConfiguration : undefined; + resourceInputs["paymentConfiguration"] = args ? args.paymentConfiguration : undefined; + resourceInputs["queryLogStatus"] = args ? args.queryLogStatus : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["collaborationArn"] = undefined /*out*/; + resourceInputs["collaborationCreatorAccountId"] = undefined /*out*/; + resourceInputs["collaborationCreatorDisplayName"] = undefined /*out*/; + resourceInputs["collaborationName"] = undefined /*out*/; + resourceInputs["createTime"] = undefined /*out*/; + resourceInputs["memberAbilities"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + resourceInputs["updateTime"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(Membership.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Membership resources. + */ +export interface MembershipState { + /** + * The ARN of the membership. + */ + arn?: pulumi.Input; + /** + * The ARN of the joined collaboration. + */ + collaborationArn?: pulumi.Input; + /** + * The account ID of the collaboration's creator. + */ + collaborationCreatorAccountId?: pulumi.Input; + /** + * The display name of the collaboration's creator. + */ + collaborationCreatorDisplayName?: pulumi.Input; + /** + * The ID of the collaboration to which the member was invited. + */ + collaborationId?: pulumi.Input; + /** + * The name of the joined collaboration. + */ + collaborationName?: pulumi.Input; + /** + * The date and time the membership was created. + */ + createTime?: pulumi.Input; + /** + * The default configuration for a query result. + */ + defaultResultConfiguration?: pulumi.Input; + /** + * The list of abilities for the invited member. + */ + memberAbilities?: pulumi.Input[]>; + paymentConfiguration?: pulumi.Input; + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + */ + queryLogStatus?: pulumi.Input; + /** + * The status of the membership. + */ + status?: pulumi.Input; + /** + * Key value pairs which tag the membership. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * @deprecated Please use `tags` instead. + */ + tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * The date and time the membership was last updated. + */ + updateTime?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Membership resource. + */ +export interface MembershipArgs { + /** + * The ID of the collaboration to which the member was invited. + */ + collaborationId: pulumi.Input; + /** + * The default configuration for a query result. + */ + defaultResultConfiguration?: pulumi.Input; + paymentConfiguration?: pulumi.Input; + /** + * An indicator as to whether query logging has been enabled or disabled for the membership. + */ + queryLogStatus: pulumi.Input; + /** + * Key value pairs which tag the membership. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; +} diff --git a/sdk/nodejs/cloudfront/vpcOrigin.ts b/sdk/nodejs/cloudfront/vpcOrigin.ts index 73f0ec946f9..66606b74487 100644 --- a/sdk/nodejs/cloudfront/vpcOrigin.ts +++ b/sdk/nodejs/cloudfront/vpcOrigin.ts @@ -44,7 +44,7 @@ import * as utilities from "../utilities"; * * to = aws_cloudfront_vpc_origin.origin * - * id = vo_JQEa410sssUFoY6wMkx69j + * id = "vo_JQEa410sssUFoY6wMkx69j" * * } * diff --git a/sdk/nodejs/cloudwatch/getEventBuses.ts b/sdk/nodejs/cloudwatch/getEventBuses.ts new file mode 100644 index 00000000000..1c4cee156e5 --- /dev/null +++ b/sdk/nodejs/cloudwatch/getEventBuses.ts @@ -0,0 +1,90 @@ +// *** 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"; + +/** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = aws.cloudwatch.getEventBuses({ + * namePrefix: "test", + * }); + * ``` + */ +export function getEventBuses(args?: GetEventBusesArgs, opts?: pulumi.InvokeOptions): Promise { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws:cloudwatch/getEventBuses:getEventBuses", { + "namePrefix": args.namePrefix, + }, opts); +} + +/** + * A collection of arguments for invoking getEventBuses. + */ +export interface GetEventBusesArgs { + /** + * Specifying this limits the results to only those event buses with names that start with the specified prefix. + */ + namePrefix?: string; +} + +/** + * A collection of values returned by getEventBuses. + */ +export interface GetEventBusesResult { + /** + * This list of event buses. + */ + readonly eventBuses: outputs.cloudwatch.GetEventBusesEventBus[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + readonly namePrefix?: string; +} +/** + * Data source for managing an AWS EventBridge Event Buses. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = aws.cloudwatch.getEventBuses({ + * namePrefix: "test", + * }); + * ``` + */ +export function getEventBusesOutput(args?: GetEventBusesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { + args = args || {}; + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws:cloudwatch/getEventBuses:getEventBuses", { + "namePrefix": args.namePrefix, + }, opts); +} + +/** + * A collection of arguments for invoking getEventBuses. + */ +export interface GetEventBusesOutputArgs { + /** + * Specifying this limits the results to only those event buses with names that start with the specified prefix. + */ + namePrefix?: pulumi.Input; +} diff --git a/sdk/nodejs/cloudwatch/index.ts b/sdk/nodejs/cloudwatch/index.ts index 5aef1860dfb..b4b09d7f916 100644 --- a/sdk/nodejs/cloudwatch/index.ts +++ b/sdk/nodejs/cloudwatch/index.ts @@ -67,6 +67,11 @@ export const getEventBus: typeof import("./getEventBus").getEventBus = null as a export const getEventBusOutput: typeof import("./getEventBus").getEventBusOutput = null as any; utilities.lazyLoad(exports, ["getEventBus","getEventBusOutput"], () => require("./getEventBus")); +export { GetEventBusesArgs, GetEventBusesResult, GetEventBusesOutputArgs } from "./getEventBuses"; +export const getEventBuses: typeof import("./getEventBuses").getEventBuses = null as any; +export const getEventBusesOutput: typeof import("./getEventBuses").getEventBusesOutput = null as any; +utilities.lazyLoad(exports, ["getEventBuses","getEventBusesOutput"], () => require("./getEventBuses")); + export { GetEventConnectionArgs, GetEventConnectionResult, GetEventConnectionOutputArgs } from "./getEventConnection"; export const getEventConnection: typeof import("./getEventConnection").getEventConnection = null as any; export const getEventConnectionOutput: typeof import("./getEventConnection").getEventConnectionOutput = null as any; @@ -112,6 +117,26 @@ export type LogDataProtectionPolicy = import("./logDataProtectionPolicy").LogDat export const LogDataProtectionPolicy: typeof import("./logDataProtectionPolicy").LogDataProtectionPolicy = null as any; utilities.lazyLoad(exports, ["LogDataProtectionPolicy"], () => require("./logDataProtectionPolicy")); +export { LogDeliveryArgs, LogDeliveryState } from "./logDelivery"; +export type LogDelivery = import("./logDelivery").LogDelivery; +export const LogDelivery: typeof import("./logDelivery").LogDelivery = null as any; +utilities.lazyLoad(exports, ["LogDelivery"], () => require("./logDelivery")); + +export { LogDeliveryDestinationArgs, LogDeliveryDestinationState } from "./logDeliveryDestination"; +export type LogDeliveryDestination = import("./logDeliveryDestination").LogDeliveryDestination; +export const LogDeliveryDestination: typeof import("./logDeliveryDestination").LogDeliveryDestination = null as any; +utilities.lazyLoad(exports, ["LogDeliveryDestination"], () => require("./logDeliveryDestination")); + +export { LogDeliveryDestinationPolicyArgs, LogDeliveryDestinationPolicyState } from "./logDeliveryDestinationPolicy"; +export type LogDeliveryDestinationPolicy = import("./logDeliveryDestinationPolicy").LogDeliveryDestinationPolicy; +export const LogDeliveryDestinationPolicy: typeof import("./logDeliveryDestinationPolicy").LogDeliveryDestinationPolicy = null as any; +utilities.lazyLoad(exports, ["LogDeliveryDestinationPolicy"], () => require("./logDeliveryDestinationPolicy")); + +export { LogDeliverySourceArgs, LogDeliverySourceState } from "./logDeliverySource"; +export type LogDeliverySource = import("./logDeliverySource").LogDeliverySource; +export const LogDeliverySource: typeof import("./logDeliverySource").LogDeliverySource = null as any; +utilities.lazyLoad(exports, ["LogDeliverySource"], () => require("./logDeliverySource")); + export { LogDestinationArgs, LogDestinationState } from "./logDestination"; export type LogDestination = import("./logDestination").LogDestination; export const LogDestination: typeof import("./logDestination").LogDestination = null as any; @@ -128,6 +153,11 @@ export const LogGroup: typeof import("./logGroup").LogGroup = null as any; utilities.lazyLoad(exports, ["LogGroup"], () => require("./logGroup")); export * from "./logGroupMixins"; +export { LogIndexPolicyArgs, LogIndexPolicyState } from "./logIndexPolicy"; +export type LogIndexPolicy = import("./logIndexPolicy").LogIndexPolicy; +export const LogIndexPolicy: typeof import("./logIndexPolicy").LogIndexPolicy = null as any; +utilities.lazyLoad(exports, ["LogIndexPolicy"], () => require("./logIndexPolicy")); + export { LogMetricFilterArgs, LogMetricFilterState } from "./logMetricFilter"; export type LogMetricFilter = import("./logMetricFilter").LogMetricFilter; export const LogMetricFilter: typeof import("./logMetricFilter").LogMetricFilter = null as any; @@ -198,12 +228,22 @@ const _module = { return new LogAnomalyDetector(name, undefined, { urn }) case "aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy": return new LogDataProtectionPolicy(name, undefined, { urn }) + case "aws:cloudwatch/logDelivery:LogDelivery": + return new LogDelivery(name, undefined, { urn }) + case "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination": + return new LogDeliveryDestination(name, undefined, { urn }) + case "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy": + return new LogDeliveryDestinationPolicy(name, undefined, { urn }) + case "aws:cloudwatch/logDeliverySource:LogDeliverySource": + return new LogDeliverySource(name, undefined, { urn }) case "aws:cloudwatch/logDestination:LogDestination": return new LogDestination(name, undefined, { urn }) case "aws:cloudwatch/logDestinationPolicy:LogDestinationPolicy": return new LogDestinationPolicy(name, undefined, { urn }) case "aws:cloudwatch/logGroup:LogGroup": return new LogGroup(name, undefined, { urn }) + case "aws:cloudwatch/logIndexPolicy:LogIndexPolicy": + return new LogIndexPolicy(name, undefined, { urn }) case "aws:cloudwatch/logMetricFilter:LogMetricFilter": return new LogMetricFilter(name, undefined, { urn }) case "aws:cloudwatch/logResourcePolicy:LogResourcePolicy": @@ -238,9 +278,14 @@ pulumi.runtime.registerResourceModule("aws", "cloudwatch/internetMonitor", _modu pulumi.runtime.registerResourceModule("aws", "cloudwatch/logAccountPolicy", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logAnomalyDetector", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDataProtectionPolicy", _module) +pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDelivery", _module) +pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDeliveryDestination", _module) +pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDeliveryDestinationPolicy", _module) +pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDeliverySource", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDestination", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logDestinationPolicy", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logGroup", _module) +pulumi.runtime.registerResourceModule("aws", "cloudwatch/logIndexPolicy", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logMetricFilter", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logResourcePolicy", _module) pulumi.runtime.registerResourceModule("aws", "cloudwatch/logStream", _module) diff --git a/sdk/nodejs/cloudwatch/logDelivery.ts b/sdk/nodejs/cloudwatch/logDelivery.ts new file mode 100644 index 00000000000..e4d34c02601 --- /dev/null +++ b/sdk/nodejs/cloudwatch/logDelivery.ts @@ -0,0 +1,214 @@ +// *** 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"; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `aws.cloudwatch.LogDeliverySource` and an `aws.cloudwatch.LogDeliveryDestination`. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.cloudwatch.LogDelivery("example", { + * deliverySourceName: exampleAwsCloudwatchLogDeliverySource.name, + * deliveryDestinationArn: exampleAwsCloudwatchLogDeliveryDestination.arn, + * fieldDelimiter: ",", + * recordFields: [ + * "event_timestamp", + * "event", + * ], + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n + * ``` + */ +export class LogDelivery extends pulumi.CustomResource { + /** + * Get an existing LogDelivery 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?: LogDeliveryState, opts?: pulumi.CustomResourceOptions): LogDelivery { + return new LogDelivery(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cloudwatch/logDelivery:LogDelivery'; + + /** + * Returns true if the given object is an instance of LogDelivery. 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 LogDelivery { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LogDelivery.__pulumiType; + } + + /** + * The Amazon Resource Name (ARN) of the delivery. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The ARN of the delivery destination to use for this delivery. + */ + public readonly deliveryDestinationArn!: pulumi.Output; + /** + * The name of the delivery source to use for this delivery. + */ + public readonly deliverySourceName!: pulumi.Output; + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + */ + public readonly fieldDelimiter!: pulumi.Output; + /** + * The list of record fields to be delivered to the destination, in order. + */ + public readonly recordFields!: pulumi.Output; + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + */ + public readonly s3DeliveryConfigurations!: pulumi.Output; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; + + /** + * Create a LogDelivery 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: LogDeliveryArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LogDeliveryArgs | LogDeliveryState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LogDeliveryState | undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["deliveryDestinationArn"] = state ? state.deliveryDestinationArn : undefined; + resourceInputs["deliverySourceName"] = state ? state.deliverySourceName : undefined; + resourceInputs["fieldDelimiter"] = state ? state.fieldDelimiter : undefined; + resourceInputs["recordFields"] = state ? state.recordFields : undefined; + resourceInputs["s3DeliveryConfigurations"] = state ? state.s3DeliveryConfigurations : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + } else { + const args = argsOrState as LogDeliveryArgs | undefined; + if ((!args || args.deliveryDestinationArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'deliveryDestinationArn'"); + } + if ((!args || args.deliverySourceName === undefined) && !opts.urn) { + throw new Error("Missing required property 'deliverySourceName'"); + } + resourceInputs["deliveryDestinationArn"] = args ? args.deliveryDestinationArn : undefined; + resourceInputs["deliverySourceName"] = args ? args.deliverySourceName : undefined; + resourceInputs["fieldDelimiter"] = args ? args.fieldDelimiter : undefined; + resourceInputs["recordFields"] = args ? args.recordFields : undefined; + resourceInputs["s3DeliveryConfigurations"] = args ? args.s3DeliveryConfigurations : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(LogDelivery.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LogDelivery resources. + */ +export interface LogDeliveryState { + /** + * The Amazon Resource Name (ARN) of the delivery. + */ + arn?: pulumi.Input; + /** + * The ARN of the delivery destination to use for this delivery. + */ + deliveryDestinationArn?: pulumi.Input; + /** + * The name of the delivery source to use for this delivery. + */ + deliverySourceName?: pulumi.Input; + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + */ + fieldDelimiter?: pulumi.Input; + /** + * The list of record fields to be delivered to the destination, in order. + */ + recordFields?: pulumi.Input[]>; + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + */ + s3DeliveryConfigurations?: pulumi.Input[]>; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; +} + +/** + * The set of arguments for constructing a LogDelivery resource. + */ +export interface LogDeliveryArgs { + /** + * The ARN of the delivery destination to use for this delivery. + */ + deliveryDestinationArn: pulumi.Input; + /** + * The name of the delivery source to use for this delivery. + */ + deliverySourceName: pulumi.Input; + /** + * The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + */ + fieldDelimiter?: pulumi.Input; + /** + * The list of record fields to be delivered to the destination, in order. + */ + recordFields?: pulumi.Input[]>; + /** + * Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + */ + s3DeliveryConfigurations?: pulumi.Input[]>; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; +} diff --git a/sdk/nodejs/cloudwatch/logDeliveryDestination.ts b/sdk/nodejs/cloudwatch/logDeliveryDestination.ts new file mode 100644 index 00000000000..a15a24133bf --- /dev/null +++ b/sdk/nodejs/cloudwatch/logDeliveryDestination.ts @@ -0,0 +1,187 @@ +// *** 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"; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Destination. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.cloudwatch.LogDeliveryDestination("example", { + * name: "example", + * deliveryDestinationConfiguration: { + * destinationResourceArn: exampleAwsCloudwatchLogGroup.arn, + * }, + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example + * ``` + */ +export class LogDeliveryDestination extends pulumi.CustomResource { + /** + * Get an existing LogDeliveryDestination 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?: LogDeliveryDestinationState, opts?: pulumi.CustomResourceOptions): LogDeliveryDestination { + return new LogDeliveryDestination(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination'; + + /** + * Returns true if the given object is an instance of LogDeliveryDestination. 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 LogDeliveryDestination { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LogDeliveryDestination.__pulumiType; + } + + /** + * The Amazon Resource Name (ARN) of the delivery destination. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The AWS resource that will receive the logs. + */ + public readonly deliveryDestinationConfiguration!: pulumi.Output; + /** + * Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + */ + public /*out*/ readonly deliveryDestinationType!: pulumi.Output; + /** + * The name for this delivery destination. + */ + public readonly name!: pulumi.Output; + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + */ + public readonly outputFormat!: pulumi.Output; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; + + /** + * Create a LogDeliveryDestination 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?: LogDeliveryDestinationArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LogDeliveryDestinationArgs | LogDeliveryDestinationState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LogDeliveryDestinationState | undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["deliveryDestinationConfiguration"] = state ? state.deliveryDestinationConfiguration : undefined; + resourceInputs["deliveryDestinationType"] = state ? state.deliveryDestinationType : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["outputFormat"] = state ? state.outputFormat : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + } else { + const args = argsOrState as LogDeliveryDestinationArgs | undefined; + resourceInputs["deliveryDestinationConfiguration"] = args ? args.deliveryDestinationConfiguration : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["outputFormat"] = args ? args.outputFormat : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["deliveryDestinationType"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(LogDeliveryDestination.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LogDeliveryDestination resources. + */ +export interface LogDeliveryDestinationState { + /** + * The Amazon Resource Name (ARN) of the delivery destination. + */ + arn?: pulumi.Input; + /** + * The AWS resource that will receive the logs. + */ + deliveryDestinationConfiguration?: pulumi.Input; + /** + * Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + */ + deliveryDestinationType?: pulumi.Input; + /** + * The name for this delivery destination. + */ + name?: pulumi.Input; + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + */ + outputFormat?: pulumi.Input; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; +} + +/** + * The set of arguments for constructing a LogDeliveryDestination resource. + */ +export interface LogDeliveryDestinationArgs { + /** + * The AWS resource that will receive the logs. + */ + deliveryDestinationConfiguration?: pulumi.Input; + /** + * The name for this delivery destination. + */ + name?: pulumi.Input; + /** + * The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + */ + outputFormat?: pulumi.Input; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; +} diff --git a/sdk/nodejs/cloudwatch/logDeliveryDestinationPolicy.ts b/sdk/nodejs/cloudwatch/logDeliveryDestinationPolicy.ts new file mode 100644 index 00000000000..198c61fb39b --- /dev/null +++ b/sdk/nodejs/cloudwatch/logDeliveryDestinationPolicy.ts @@ -0,0 +1,126 @@ +// *** 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"; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.cloudwatch.LogDeliveryDestinationPolicy("example", { + * deliveryDestinationName: exampleAwsCloudwatchLogDeliveryDestination.name, + * deliveryDestinationPolicy: exampleAwsIamPolicyDocument.json, + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example + * ``` + */ +export class LogDeliveryDestinationPolicy extends pulumi.CustomResource { + /** + * Get an existing LogDeliveryDestinationPolicy 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?: LogDeliveryDestinationPolicyState, opts?: pulumi.CustomResourceOptions): LogDeliveryDestinationPolicy { + return new LogDeliveryDestinationPolicy(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy'; + + /** + * Returns true if the given object is an instance of LogDeliveryDestinationPolicy. 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 LogDeliveryDestinationPolicy { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LogDeliveryDestinationPolicy.__pulumiType; + } + + /** + * The name of the delivery destination to assign this policy to. + */ + public readonly deliveryDestinationName!: pulumi.Output; + /** + * The contents of the policy. + */ + public readonly deliveryDestinationPolicy!: pulumi.Output; + + /** + * Create a LogDeliveryDestinationPolicy 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: LogDeliveryDestinationPolicyArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LogDeliveryDestinationPolicyArgs | LogDeliveryDestinationPolicyState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LogDeliveryDestinationPolicyState | undefined; + resourceInputs["deliveryDestinationName"] = state ? state.deliveryDestinationName : undefined; + resourceInputs["deliveryDestinationPolicy"] = state ? state.deliveryDestinationPolicy : undefined; + } else { + const args = argsOrState as LogDeliveryDestinationPolicyArgs | undefined; + if ((!args || args.deliveryDestinationName === undefined) && !opts.urn) { + throw new Error("Missing required property 'deliveryDestinationName'"); + } + if ((!args || args.deliveryDestinationPolicy === undefined) && !opts.urn) { + throw new Error("Missing required property 'deliveryDestinationPolicy'"); + } + resourceInputs["deliveryDestinationName"] = args ? args.deliveryDestinationName : undefined; + resourceInputs["deliveryDestinationPolicy"] = args ? args.deliveryDestinationPolicy : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(LogDeliveryDestinationPolicy.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LogDeliveryDestinationPolicy resources. + */ +export interface LogDeliveryDestinationPolicyState { + /** + * The name of the delivery destination to assign this policy to. + */ + deliveryDestinationName?: pulumi.Input; + /** + * The contents of the policy. + */ + deliveryDestinationPolicy?: pulumi.Input; +} + +/** + * The set of arguments for constructing a LogDeliveryDestinationPolicy resource. + */ +export interface LogDeliveryDestinationPolicyArgs { + /** + * The name of the delivery destination to assign this policy to. + */ + deliveryDestinationName: pulumi.Input; + /** + * The contents of the policy. + */ + deliveryDestinationPolicy: pulumi.Input; +} diff --git a/sdk/nodejs/cloudwatch/logDeliverySource.ts b/sdk/nodejs/cloudwatch/logDeliverySource.ts new file mode 100644 index 00000000000..4bb3035577a --- /dev/null +++ b/sdk/nodejs/cloudwatch/logDeliverySource.ts @@ -0,0 +1,189 @@ +// *** 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"; + +/** + * Resource for managing an AWS CloudWatch Logs Delivery Source. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.cloudwatch.LogDeliverySource("example", { + * name: "example", + * logType: "APPLICATION_LOGS", + * resourceArn: exampleAwsBedrockagentKnowledgeBase.arn, + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example + * ``` + */ +export class LogDeliverySource extends pulumi.CustomResource { + /** + * Get an existing LogDeliverySource 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?: LogDeliverySourceState, opts?: pulumi.CustomResourceOptions): LogDeliverySource { + return new LogDeliverySource(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cloudwatch/logDeliverySource:LogDeliverySource'; + + /** + * Returns true if the given object is an instance of LogDeliverySource. 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 LogDeliverySource { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LogDeliverySource.__pulumiType; + } + + /** + * The Amazon Resource Name (ARN) of the delivery source. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + */ + public readonly logType!: pulumi.Output; + /** + * The name for this delivery source. + */ + public readonly name!: pulumi.Output; + /** + * The ARN of the AWS resource that is generating and sending logs. + */ + public readonly resourceArn!: pulumi.Output; + /** + * The AWS service that is sending logs. + */ + public /*out*/ readonly service!: pulumi.Output; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; + + /** + * Create a LogDeliverySource 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: LogDeliverySourceArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LogDeliverySourceArgs | LogDeliverySourceState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LogDeliverySourceState | undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["logType"] = state ? state.logType : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["resourceArn"] = state ? state.resourceArn : undefined; + resourceInputs["service"] = state ? state.service : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + } else { + const args = argsOrState as LogDeliverySourceArgs | undefined; + if ((!args || args.logType === undefined) && !opts.urn) { + throw new Error("Missing required property 'logType'"); + } + if ((!args || args.resourceArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'resourceArn'"); + } + resourceInputs["logType"] = args ? args.logType : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["resourceArn"] = args ? args.resourceArn : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["service"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(LogDeliverySource.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LogDeliverySource resources. + */ +export interface LogDeliverySourceState { + /** + * The Amazon Resource Name (ARN) of the delivery source. + */ + arn?: pulumi.Input; + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + */ + logType?: pulumi.Input; + /** + * The name for this delivery source. + */ + name?: pulumi.Input; + /** + * The ARN of the AWS resource that is generating and sending logs. + */ + resourceArn?: pulumi.Input; + /** + * The AWS service that is sending logs. + */ + service?: pulumi.Input; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; +} + +/** + * The set of arguments for constructing a LogDeliverySource resource. + */ +export interface LogDeliverySourceArgs { + /** + * The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + */ + logType: pulumi.Input; + /** + * The name for this delivery source. + */ + name?: pulumi.Input; + /** + * The ARN of the AWS resource that is generating and sending logs. + */ + resourceArn: pulumi.Input; + /** + * A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; +} diff --git a/sdk/nodejs/cloudwatch/logIndexPolicy.ts b/sdk/nodejs/cloudwatch/logIndexPolicy.ts new file mode 100644 index 00000000000..4420c7ae027 --- /dev/null +++ b/sdk/nodejs/cloudwatch/logIndexPolicy.ts @@ -0,0 +1,129 @@ +// *** 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"; + +/** + * Resource for managing an AWS CloudWatch Logs Index Policy. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.cloudwatch.LogGroup("example", {name: "example"}); + * const exampleLogIndexPolicy = new aws.cloudwatch.LogIndexPolicy("example", { + * logGroupName: example.name, + * policyDocument: JSON.stringify({ + * Fields: ["eventName"], + * }), + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: + * + * ```sh + * $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name + * ``` + */ +export class LogIndexPolicy extends pulumi.CustomResource { + /** + * Get an existing LogIndexPolicy 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?: LogIndexPolicyState, opts?: pulumi.CustomResourceOptions): LogIndexPolicy { + return new LogIndexPolicy(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:cloudwatch/logIndexPolicy:LogIndexPolicy'; + + /** + * Returns true if the given object is an instance of LogIndexPolicy. 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 LogIndexPolicy { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === LogIndexPolicy.__pulumiType; + } + + /** + * Log group name to set the policy for. + */ + public readonly logGroupName!: pulumi.Output; + /** + * JSON policy document. This is a JSON formatted string. + */ + public readonly policyDocument!: pulumi.Output; + + /** + * Create a LogIndexPolicy 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: LogIndexPolicyArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: LogIndexPolicyArgs | LogIndexPolicyState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as LogIndexPolicyState | undefined; + resourceInputs["logGroupName"] = state ? state.logGroupName : undefined; + resourceInputs["policyDocument"] = state ? state.policyDocument : undefined; + } else { + const args = argsOrState as LogIndexPolicyArgs | undefined; + if ((!args || args.logGroupName === undefined) && !opts.urn) { + throw new Error("Missing required property 'logGroupName'"); + } + if ((!args || args.policyDocument === undefined) && !opts.urn) { + throw new Error("Missing required property 'policyDocument'"); + } + resourceInputs["logGroupName"] = args ? args.logGroupName : undefined; + resourceInputs["policyDocument"] = args ? args.policyDocument : undefined; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(LogIndexPolicy.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering LogIndexPolicy resources. + */ +export interface LogIndexPolicyState { + /** + * Log group name to set the policy for. + */ + logGroupName?: pulumi.Input; + /** + * JSON policy document. This is a JSON formatted string. + */ + policyDocument?: pulumi.Input; +} + +/** + * The set of arguments for constructing a LogIndexPolicy resource. + */ +export interface LogIndexPolicyArgs { + /** + * Log group name to set the policy for. + */ + logGroupName: pulumi.Input; + /** + * JSON policy document. This is a JSON formatted string. + */ + policyDocument: pulumi.Input; +} diff --git a/sdk/nodejs/codebuild/fleet.ts b/sdk/nodejs/codebuild/fleet.ts index b9b78a24955..6f8aa14e45b 100644 --- a/sdk/nodejs/codebuild/fleet.ts +++ b/sdk/nodejs/codebuild/fleet.ts @@ -86,6 +86,10 @@ export class Fleet extends pulumi.CustomResource { * Number of machines allocated to the fleet. */ public readonly baseCapacity!: pulumi.Output; + /** + * The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + */ + public readonly computeConfiguration!: pulumi.Output; /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. */ @@ -121,7 +125,7 @@ export class Fleet extends pulumi.CustomResource { */ public readonly overflowBehavior!: pulumi.Output; /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. */ public readonly scalingConfiguration!: pulumi.Output; /** @@ -137,7 +141,7 @@ export class Fleet extends pulumi.CustomResource { */ public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; /** - * Configuration block. Detailed below. + * Configuration block. See `vpcConfig` below. */ public readonly vpcConfigs!: pulumi.Output; @@ -156,6 +160,7 @@ export class Fleet extends pulumi.CustomResource { const state = argsOrState as FleetState | undefined; resourceInputs["arn"] = state ? state.arn : undefined; resourceInputs["baseCapacity"] = state ? state.baseCapacity : undefined; + resourceInputs["computeConfiguration"] = state ? state.computeConfiguration : undefined; resourceInputs["computeType"] = state ? state.computeType : undefined; resourceInputs["created"] = state ? state.created : undefined; resourceInputs["environmentType"] = state ? state.environmentType : undefined; @@ -181,6 +186,7 @@ export class Fleet extends pulumi.CustomResource { throw new Error("Missing required property 'environmentType'"); } resourceInputs["baseCapacity"] = args ? args.baseCapacity : undefined; + resourceInputs["computeConfiguration"] = args ? args.computeConfiguration : undefined; resourceInputs["computeType"] = args ? args.computeType : undefined; resourceInputs["environmentType"] = args ? args.environmentType : undefined; resourceInputs["fleetServiceRole"] = args ? args.fleetServiceRole : undefined; @@ -213,6 +219,10 @@ export interface FleetState { * Number of machines allocated to the fleet. */ baseCapacity?: pulumi.Input; + /** + * The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + */ + computeConfiguration?: pulumi.Input; /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. */ @@ -248,7 +258,7 @@ export interface FleetState { */ overflowBehavior?: pulumi.Input; /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. */ scalingConfiguration?: pulumi.Input; /** @@ -264,7 +274,7 @@ export interface FleetState { */ tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Configuration block. Detailed below. + * Configuration block. See `vpcConfig` below. */ vpcConfigs?: pulumi.Input[]>; } @@ -277,6 +287,10 @@ export interface FleetArgs { * Number of machines allocated to the fleet. */ baseCapacity: pulumi.Input; + /** + * The compute configuration of the compute fleet. This is only required if `computeType` is set to `ATTRIBUTE_BASED_COMPUTE`. See `computeConfiguration` below. + */ + computeConfiguration?: pulumi.Input; /** * Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. */ @@ -304,7 +318,7 @@ export interface FleetArgs { */ overflowBehavior?: pulumi.Input; /** - * Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + * Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scalingConfiguration` below. */ scalingConfiguration?: pulumi.Input; /** @@ -312,7 +326,7 @@ export interface FleetArgs { */ tags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Configuration block. Detailed below. + * Configuration block. See `vpcConfig` below. */ vpcConfigs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/codebuild/getFleet.ts b/sdk/nodejs/codebuild/getFleet.ts index 2447a26065c..95d10d38774 100644 --- a/sdk/nodejs/codebuild/getFleet.ts +++ b/sdk/nodejs/codebuild/getFleet.ts @@ -81,6 +81,10 @@ export interface GetFleetResult { * Number of machines allocated to the fleet. */ readonly baseCapacity: number; + /** + * Compute configuration of the compute fleet. + */ + readonly computeConfigurations: outputs.codebuild.GetFleetComputeConfiguration[]; /** * Compute resources the compute fleet uses. */ diff --git a/sdk/nodejs/cognito/userPool.ts b/sdk/nodejs/cognito/userPool.ts index 8f4fb20d074..b438cd89cbd 100644 --- a/sdk/nodejs/cognito/userPool.ts +++ b/sdk/nodejs/cognito/userPool.ts @@ -144,6 +144,10 @@ export class UserPool extends pulumi.CustomResource { * Configuration block for configuring email. Detailed below. */ public readonly emailConfiguration!: pulumi.Output; + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + */ + public readonly emailMfaConfiguration!: pulumi.Output; /** * String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. */ @@ -186,6 +190,10 @@ export class UserPool extends pulumi.CustomResource { * Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. */ public readonly schemas!: pulumi.Output; + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + */ + public readonly signInPolicy!: pulumi.Output; /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. */ @@ -220,6 +228,10 @@ export class UserPool extends pulumi.CustomResource { * Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. */ public readonly userPoolAddOns!: pulumi.Output; + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + */ + public readonly userPoolTier!: pulumi.Output; /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. */ @@ -232,6 +244,10 @@ export class UserPool extends pulumi.CustomResource { * Configuration block for verification message templates. Detailed below. */ public readonly verificationMessageTemplate!: pulumi.Output; + /** + * Configuration block for web authn configuration. Detailed below. + */ + public readonly webAuthnConfiguration!: pulumi.Output; /** * Create a UserPool resource with the given unique name, arguments, and options. @@ -257,6 +273,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["deviceConfiguration"] = state ? state.deviceConfiguration : undefined; resourceInputs["domain"] = state ? state.domain : undefined; resourceInputs["emailConfiguration"] = state ? state.emailConfiguration : undefined; + resourceInputs["emailMfaConfiguration"] = state ? state.emailMfaConfiguration : undefined; resourceInputs["emailVerificationMessage"] = state ? state.emailVerificationMessage : undefined; resourceInputs["emailVerificationSubject"] = state ? state.emailVerificationSubject : undefined; resourceInputs["endpoint"] = state ? state.endpoint : undefined; @@ -267,6 +284,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["name"] = state ? state.name : undefined; resourceInputs["passwordPolicy"] = state ? state.passwordPolicy : undefined; resourceInputs["schemas"] = state ? state.schemas : undefined; + resourceInputs["signInPolicy"] = state ? state.signInPolicy : undefined; resourceInputs["smsAuthenticationMessage"] = state ? state.smsAuthenticationMessage : undefined; resourceInputs["smsConfiguration"] = state ? state.smsConfiguration : undefined; resourceInputs["smsVerificationMessage"] = state ? state.smsVerificationMessage : undefined; @@ -275,9 +293,11 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; resourceInputs["userAttributeUpdateSettings"] = state ? state.userAttributeUpdateSettings : undefined; resourceInputs["userPoolAddOns"] = state ? state.userPoolAddOns : undefined; + resourceInputs["userPoolTier"] = state ? state.userPoolTier : undefined; resourceInputs["usernameAttributes"] = state ? state.usernameAttributes : undefined; resourceInputs["usernameConfiguration"] = state ? state.usernameConfiguration : undefined; resourceInputs["verificationMessageTemplate"] = state ? state.verificationMessageTemplate : undefined; + resourceInputs["webAuthnConfiguration"] = state ? state.webAuthnConfiguration : undefined; } else { const args = argsOrState as UserPoolArgs | undefined; resourceInputs["accountRecoverySetting"] = args ? args.accountRecoverySetting : undefined; @@ -287,6 +307,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["deletionProtection"] = args ? args.deletionProtection : undefined; resourceInputs["deviceConfiguration"] = args ? args.deviceConfiguration : undefined; resourceInputs["emailConfiguration"] = args ? args.emailConfiguration : undefined; + resourceInputs["emailMfaConfiguration"] = args ? args.emailMfaConfiguration : undefined; resourceInputs["emailVerificationMessage"] = args ? args.emailVerificationMessage : undefined; resourceInputs["emailVerificationSubject"] = args ? args.emailVerificationSubject : undefined; resourceInputs["lambdaConfig"] = args ? args.lambdaConfig : undefined; @@ -294,6 +315,7 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["name"] = args ? args.name : undefined; resourceInputs["passwordPolicy"] = args ? args.passwordPolicy : undefined; resourceInputs["schemas"] = args ? args.schemas : undefined; + resourceInputs["signInPolicy"] = args ? args.signInPolicy : undefined; resourceInputs["smsAuthenticationMessage"] = args ? args.smsAuthenticationMessage : undefined; resourceInputs["smsConfiguration"] = args ? args.smsConfiguration : undefined; resourceInputs["smsVerificationMessage"] = args ? args.smsVerificationMessage : undefined; @@ -301,9 +323,11 @@ export class UserPool extends pulumi.CustomResource { resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["userAttributeUpdateSettings"] = args ? args.userAttributeUpdateSettings : undefined; resourceInputs["userPoolAddOns"] = args ? args.userPoolAddOns : undefined; + resourceInputs["userPoolTier"] = args ? args.userPoolTier : undefined; resourceInputs["usernameAttributes"] = args ? args.usernameAttributes : undefined; resourceInputs["usernameConfiguration"] = args ? args.usernameConfiguration : undefined; resourceInputs["verificationMessageTemplate"] = args ? args.verificationMessageTemplate : undefined; + resourceInputs["webAuthnConfiguration"] = args ? args.webAuthnConfiguration : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["creationDate"] = undefined /*out*/; resourceInputs["customDomain"] = undefined /*out*/; @@ -366,6 +390,10 @@ export interface UserPoolState { * Configuration block for configuring email. Detailed below. */ emailConfiguration?: pulumi.Input; + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + */ + emailMfaConfiguration?: pulumi.Input; /** * String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. */ @@ -408,6 +436,10 @@ export interface UserPoolState { * Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. */ schemas?: pulumi.Input[]>; + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + */ + signInPolicy?: pulumi.Input; /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. */ @@ -442,6 +474,10 @@ export interface UserPoolState { * Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. */ userPoolAddOns?: pulumi.Input; + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + */ + userPoolTier?: pulumi.Input; /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. */ @@ -454,6 +490,10 @@ export interface UserPoolState { * Configuration block for verification message templates. Detailed below. */ verificationMessageTemplate?: pulumi.Input; + /** + * Configuration block for web authn configuration. Detailed below. + */ + webAuthnConfiguration?: pulumi.Input; } /** @@ -488,6 +528,10 @@ export interface UserPoolArgs { * Configuration block for configuring email. Detailed below. */ emailConfiguration?: pulumi.Input; + /** + * Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `accountRecoverySetting` entries; requires an `emailConfiguration` configuration block. Detailed below. + */ + emailMfaConfiguration?: pulumi.Input; /** * String representing the email verification message. Conflicts with `verificationMessageTemplate` configuration block `emailMessage` argument. */ @@ -518,6 +562,10 @@ export interface UserPoolArgs { * Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. */ schemas?: pulumi.Input[]>; + /** + * Configuration block for information about the user pool sign in policy. Detailed below. + */ + signInPolicy?: pulumi.Input; /** * String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. */ @@ -546,6 +594,10 @@ export interface UserPoolArgs { * Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. */ userPoolAddOns?: pulumi.Input; + /** + * The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + */ + userPoolTier?: pulumi.Input; /** * Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `aliasAttributes`. */ @@ -558,4 +610,8 @@ export interface UserPoolArgs { * Configuration block for verification message templates. Detailed below. */ verificationMessageTemplate?: pulumi.Input; + /** + * Configuration block for web authn configuration. Detailed below. + */ + webAuthnConfiguration?: pulumi.Input; } diff --git a/sdk/nodejs/ec2/eipAssociation.ts b/sdk/nodejs/ec2/eipAssociation.ts index 9430200fafd..cda4c07194f 100644 --- a/sdk/nodejs/ec2/eipAssociation.ts +++ b/sdk/nodejs/ec2/eipAssociation.ts @@ -5,13 +5,11 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "../utilities"; /** - * Provides an AWS EIP Association as a top level resource, to associate and - * disassociate Elastic IPs from AWS Instances and Network Interfaces. + * Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. * * > **NOTE:** Do not use this resource to associate an EIP to `aws.lb.LoadBalancer` or `aws.ec2.NatGateway` resources. Instead use the `allocationId` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. * - * > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either - * pre-existing or distributed to customers or users and therefore cannot be changed. + * > **NOTE:** `aws.ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. * * ## Example Usage * @@ -71,36 +69,34 @@ export class EipAssociation extends pulumi.CustomResource { } /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. */ public readonly allocationId!: pulumi.Output; /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. */ public readonly allowReassociation!: pulumi.Output; /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. */ public readonly instanceId!: pulumi.Output; /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. */ public readonly networkInterfaceId!: pulumi.Output; /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. */ public readonly privateIpAddress!: pulumi.Output; /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. */ public readonly publicIp!: pulumi.Output; @@ -142,36 +138,34 @@ export class EipAssociation extends pulumi.CustomResource { */ export interface EipAssociationState { /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. */ allocationId?: pulumi.Input; /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. */ allowReassociation?: pulumi.Input; /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. */ instanceId?: pulumi.Input; /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. */ networkInterfaceId?: pulumi.Input; /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. */ privateIpAddress?: pulumi.Input; /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. */ publicIp?: pulumi.Input; } @@ -181,36 +175,34 @@ export interface EipAssociationState { */ export interface EipAssociationArgs { /** - * The allocation ID. This is required for EC2-VPC. + * ID of the associated Elastic IP. + * This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. */ allocationId?: pulumi.Input; /** - * Whether to allow an Elastic IP to - * be re-associated. Defaults to `true` in VPC. + * Whether to allow an Elastic IP address to be re-associated. + * Defaults to `true`. */ allowReassociation?: pulumi.Input; /** - * The ID of the instance. This is required for - * EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - * network interface ID, but not both. The operation fails if you specify an - * instance ID unless exactly one network interface is attached. + * ID of the instance. + * The instance must have exactly one attached network interface. + * You can specify either the instance ID or the network interface ID, but not both. */ instanceId?: pulumi.Input; /** - * The ID of the network interface. If the - * instance has more than one network interface, you must specify a network - * interface ID. + * ID of the network interface. + * If the instance has more than one network interface, you must specify a network interface ID. + * You can specify either the instance ID or the network interface ID, but not both. */ networkInterfaceId?: pulumi.Input; /** - * The primary or secondary private IP address - * to associate with the Elastic IP address. If no private IP address is - * specified, the Elastic IP address is associated with the primary private IP - * address. + * Primary or secondary private IP address to associate with the Elastic IP address. + * If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. */ privateIpAddress?: pulumi.Input; /** - * The Elastic IP address. This is required for EC2-Classic. + * ) Address of the associated Elastic IP. */ publicIp?: pulumi.Input; } diff --git a/sdk/nodejs/ec2/getVpcEndpointService.ts b/sdk/nodejs/ec2/getVpcEndpointService.ts index 6d2cd9c61d9..c0242ee58b4 100644 --- a/sdk/nodejs/ec2/getVpcEndpointService.ts +++ b/sdk/nodejs/ec2/getVpcEndpointService.ts @@ -65,6 +65,7 @@ export function getVpcEndpointService(args?: GetVpcEndpointServiceArgs, opts?: p "filters": args.filters, "service": args.service, "serviceName": args.serviceName, + "serviceRegions": args.serviceRegions, "serviceType": args.serviceType, "tags": args.tags, }, opts); @@ -86,6 +87,10 @@ export interface GetVpcEndpointServiceArgs { * Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). */ serviceName?: string; + /** + * AWS regions in which to look for services. + */ + serviceRegions?: string[]; /** * Service type, `Gateway` or `Interface`. */ @@ -111,7 +116,7 @@ export interface GetVpcEndpointServiceResult { */ readonly arn: string; /** - * Availability Zones in which the service is available. + * Availability Zones in which the service is available. Not available for endpoint services in other regions. */ readonly availabilityZones: string[]; /** @@ -139,12 +144,17 @@ export interface GetVpcEndpointServiceResult { * Private DNS names assigned to the VPC endpoint service. */ readonly privateDnsNames: string[]; + /** + * Region of the endpoint service. + */ + readonly region: string; readonly service?: string; /** * ID of the endpoint service. */ readonly serviceId: string; readonly serviceName: string; + readonly serviceRegions?: string[]; readonly serviceType: string; /** * The supported IP address types. @@ -217,6 +227,7 @@ export function getVpcEndpointServiceOutput(args?: GetVpcEndpointServiceOutputAr "filters": args.filters, "service": args.service, "serviceName": args.serviceName, + "serviceRegions": args.serviceRegions, "serviceType": args.serviceType, "tags": args.tags, }, opts); @@ -238,6 +249,10 @@ export interface GetVpcEndpointServiceOutputArgs { * Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). */ serviceName?: pulumi.Input; + /** + * AWS regions in which to look for services. + */ + serviceRegions?: pulumi.Input[]>; /** * Service type, `Gateway` or `Interface`. */ diff --git a/sdk/nodejs/ec2/peeringConnectionOptions.ts b/sdk/nodejs/ec2/peeringConnectionOptions.ts index 13b00a55949..67f315dd708 100644 --- a/sdk/nodejs/ec2/peeringConnectionOptions.ts +++ b/sdk/nodejs/ec2/peeringConnectionOptions.ts @@ -128,11 +128,11 @@ export class PeeringConnectionOptions extends pulumi.CustomResource { } /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). */ public readonly accepter!: pulumi.Output; /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). */ public readonly requester!: pulumi.Output; /** @@ -175,11 +175,11 @@ export class PeeringConnectionOptions extends pulumi.CustomResource { */ export interface PeeringConnectionOptionsState { /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). */ accepter?: pulumi.Input; /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). */ requester?: pulumi.Input; /** @@ -193,11 +193,11 @@ export interface PeeringConnectionOptionsState { */ export interface PeeringConnectionOptionsArgs { /** - * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + * An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). */ accepter?: pulumi.Input; /** - * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + * A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). */ requester?: pulumi.Input; /** diff --git a/sdk/nodejs/ecr/accountSetting.ts b/sdk/nodejs/ecr/accountSetting.ts index e4e190efac7..f4a6816d6f1 100644 --- a/sdk/nodejs/ecr/accountSetting.ts +++ b/sdk/nodejs/ecr/accountSetting.ts @@ -9,19 +9,33 @@ import * as utilities from "../utilities"; * * ## Example Usage * + * ### Configuring Basic Scanning + * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * - * const foo = new aws.ecr.AccountSetting("foo", { + * const basicScanTypeVersion = new aws.ecr.AccountSetting("basic_scan_type_version", { * name: "BASIC_SCAN_TYPE_VERSION", - * value: "CLAIR", + * value: "AWS_NATIVE", + * }); + * ``` + * + * ### Configuring Registry Policy Scope + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const registryPolicyScope = new aws.ecr.AccountSetting("registry_policy_scope", { + * name: "REGISTRY_POLICY_SCOPE", + * value: "V2", * }); * ``` * * ## Import * - * Using `pulumi import`, import EMR Security Configurations using the `name`. For example: + * Using `pulumi import`, import EMR Security Configurations using the account setting name. For example: * * ```sh * $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION @@ -56,11 +70,13 @@ export class AccountSetting extends pulumi.CustomResource { } /** - * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. */ public readonly name!: pulumi.Output; /** - * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + * Setting value that is specified. Valid values are: + * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. */ public readonly value!: pulumi.Output; @@ -97,11 +113,13 @@ export class AccountSetting extends pulumi.CustomResource { */ export interface AccountSettingState { /** - * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. */ name?: pulumi.Input; /** - * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + * Setting value that is specified. Valid values are: + * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. */ value?: pulumi.Input; } @@ -111,11 +129,13 @@ export interface AccountSettingState { */ export interface AccountSettingArgs { /** - * The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + * Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. */ name?: pulumi.Input; /** - * The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + * Setting value that is specified. Valid values are: + * * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. */ value: pulumi.Input; } diff --git a/sdk/nodejs/ecs/getClusters.ts b/sdk/nodejs/ecs/getClusters.ts new file mode 100644 index 00000000000..a9543ebf28f --- /dev/null +++ b/sdk/nodejs/ecs/getClusters.ts @@ -0,0 +1,58 @@ +// *** 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"; + +/** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = aws.ecs.getClusters({}); + * ``` + */ +export function getClusters(opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws:ecs/getClusters:getClusters", { + }, opts); +} + +/** + * A collection of values returned by getClusters. + */ +export interface GetClustersResult { + /** + * List of ECS cluster ARNs associated with the account. + */ + readonly clusterArns: string[]; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; +} +/** + * Data source for managing an AWS ECS (Elastic Container) Clusters. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = aws.ecs.getClusters({}); + * ``` + */ +export function getClustersOutput(opts?: pulumi.InvokeOutputOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws:ecs/getClusters:getClusters", { + }, opts); +} diff --git a/sdk/nodejs/ecs/index.ts b/sdk/nodejs/ecs/index.ts index 8d5a15af07f..f07d3273125 100644 --- a/sdk/nodejs/ecs/index.ts +++ b/sdk/nodejs/ecs/index.ts @@ -31,6 +31,11 @@ export const getCluster: typeof import("./getCluster").getCluster = null as any; export const getClusterOutput: typeof import("./getCluster").getClusterOutput = null as any; utilities.lazyLoad(exports, ["getCluster","getClusterOutput"], () => require("./getCluster")); +export { GetClustersResult } from "./getClusters"; +export const getClusters: typeof import("./getClusters").getClusters = null as any; +export const getClustersOutput: typeof import("./getClusters").getClustersOutput = null as any; +utilities.lazyLoad(exports, ["getClusters","getClustersOutput"], () => require("./getClusters")); + export { GetContainerDefinitionArgs, GetContainerDefinitionResult, GetContainerDefinitionOutputArgs } from "./getContainerDefinition"; export const getContainerDefinition: typeof import("./getContainerDefinition").getContainerDefinition = null as any; export const getContainerDefinitionOutput: typeof import("./getContainerDefinition").getContainerDefinitionOutput = null as any; diff --git a/sdk/nodejs/eks/nodeGroup.ts b/sdk/nodejs/eks/nodeGroup.ts index 31afa1778e0..c71e0165e0c 100644 --- a/sdk/nodejs/eks/nodeGroup.ts +++ b/sdk/nodejs/eks/nodeGroup.ts @@ -188,6 +188,10 @@ export class NodeGroup extends pulumi.CustomResource { * Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. */ public readonly nodeGroupNamePrefix!: pulumi.Output; + /** + * The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + */ + public readonly nodeRepairConfig!: pulumi.Output; /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. */ @@ -265,6 +269,7 @@ export class NodeGroup extends pulumi.CustomResource { resourceInputs["launchTemplate"] = state ? state.launchTemplate : undefined; resourceInputs["nodeGroupName"] = state ? state.nodeGroupName : undefined; resourceInputs["nodeGroupNamePrefix"] = state ? state.nodeGroupNamePrefix : undefined; + resourceInputs["nodeRepairConfig"] = state ? state.nodeRepairConfig : undefined; resourceInputs["nodeRoleArn"] = state ? state.nodeRoleArn : undefined; resourceInputs["releaseVersion"] = state ? state.releaseVersion : undefined; resourceInputs["remoteAccess"] = state ? state.remoteAccess : undefined; @@ -301,6 +306,7 @@ export class NodeGroup extends pulumi.CustomResource { resourceInputs["launchTemplate"] = args ? args.launchTemplate : undefined; resourceInputs["nodeGroupName"] = args ? args.nodeGroupName : undefined; resourceInputs["nodeGroupNamePrefix"] = args ? args.nodeGroupNamePrefix : undefined; + resourceInputs["nodeRepairConfig"] = args ? args.nodeRepairConfig : undefined; resourceInputs["nodeRoleArn"] = args ? args.nodeRoleArn : undefined; resourceInputs["releaseVersion"] = args ? args.releaseVersion : undefined; resourceInputs["remoteAccess"] = args ? args.remoteAccess : undefined; @@ -368,6 +374,10 @@ export interface NodeGroupState { * Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. */ nodeGroupNamePrefix?: pulumi.Input; + /** + * The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + */ + nodeRepairConfig?: pulumi.Input; /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. */ @@ -466,6 +476,10 @@ export interface NodeGroupArgs { * Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`. */ nodeGroupNamePrefix?: pulumi.Input; + /** + * The node auto repair configuration for the node group. See `nodeRepairConfig` below for details. + */ + nodeRepairConfig?: pulumi.Input; /** * Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. */ diff --git a/sdk/nodejs/elasticache/user.ts b/sdk/nodejs/elasticache/user.ts index 0e557bff0e7..9f9c27b2688 100644 --- a/sdk/nodejs/elasticache/user.ts +++ b/sdk/nodejs/elasticache/user.ts @@ -109,7 +109,7 @@ export class User extends pulumi.CustomResource { */ public readonly authenticationMode!: pulumi.Output; /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. */ public readonly engine!: pulumi.Output; /** @@ -211,7 +211,7 @@ export interface UserState { */ authenticationMode?: pulumi.Input; /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. */ engine?: pulumi.Input; /** @@ -255,7 +255,7 @@ export interface UserArgs { */ authenticationMode?: pulumi.Input; /** - * The current supported value is `REDIS`. + * The current supported values are `REDIS`, `VALKEY`. */ engine: pulumi.Input; /** diff --git a/sdk/nodejs/elasticache/userGroup.ts b/sdk/nodejs/elasticache/userGroup.ts index 5d1f3665e34..f07cd5f70d1 100644 --- a/sdk/nodejs/elasticache/userGroup.ts +++ b/sdk/nodejs/elasticache/userGroup.ts @@ -68,7 +68,7 @@ export class UserGroup extends pulumi.CustomResource { */ public /*out*/ readonly arn!: pulumi.Output; /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. */ public readonly engine!: pulumi.Output; /** @@ -140,7 +140,7 @@ export interface UserGroupState { */ arn?: pulumi.Input; /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. */ engine?: pulumi.Input; /** @@ -170,7 +170,7 @@ export interface UserGroupState { */ export interface UserGroupArgs { /** - * The current supported value is `REDIS`. + * The current supported value are `REDIS`, `VALKEY`. */ engine: pulumi.Input; /** diff --git a/sdk/nodejs/emr/studio.ts b/sdk/nodejs/emr/studio.ts index 045749408c2..97b7e90a217 100644 --- a/sdk/nodejs/emr/studio.ts +++ b/sdk/nodejs/emr/studio.ts @@ -78,6 +78,10 @@ export class Studio extends pulumi.CustomResource { * A detailed description of the Amazon EMR Studio. */ public readonly description!: pulumi.Output; + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + */ + public readonly encryptionKeyArn!: pulumi.Output; /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. */ @@ -146,6 +150,7 @@ export class Studio extends pulumi.CustomResource { resourceInputs["authMode"] = state ? state.authMode : undefined; resourceInputs["defaultS3Location"] = state ? state.defaultS3Location : undefined; resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["encryptionKeyArn"] = state ? state.encryptionKeyArn : undefined; resourceInputs["engineSecurityGroupId"] = state ? state.engineSecurityGroupId : undefined; resourceInputs["idpAuthUrl"] = state ? state.idpAuthUrl : undefined; resourceInputs["idpRelayStateParameterName"] = state ? state.idpRelayStateParameterName : undefined; @@ -184,6 +189,7 @@ export class Studio extends pulumi.CustomResource { resourceInputs["authMode"] = args ? args.authMode : undefined; resourceInputs["defaultS3Location"] = args ? args.defaultS3Location : undefined; resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["encryptionKeyArn"] = args ? args.encryptionKeyArn : undefined; resourceInputs["engineSecurityGroupId"] = args ? args.engineSecurityGroupId : undefined; resourceInputs["idpAuthUrl"] = args ? args.idpAuthUrl : undefined; resourceInputs["idpRelayStateParameterName"] = args ? args.idpRelayStateParameterName : undefined; @@ -223,6 +229,10 @@ export interface StudioState { * A detailed description of the Amazon EMR Studio. */ description?: pulumi.Input; + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + */ + encryptionKeyArn?: pulumi.Input; /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. */ @@ -291,6 +301,10 @@ export interface StudioArgs { * A detailed description of the Amazon EMR Studio. */ description?: pulumi.Input; + /** + * The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + */ + encryptionKeyArn?: pulumi.Input; /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`. */ diff --git a/sdk/nodejs/fsx/windowsFileSystem.ts b/sdk/nodejs/fsx/windowsFileSystem.ts index 2dc3652f775..d6a71eea0a0 100644 --- a/sdk/nodejs/fsx/windowsFileSystem.ts +++ b/sdk/nodejs/fsx/windowsFileSystem.ts @@ -25,9 +25,9 @@ import * as utilities from "../utilities"; * const example = new aws.fsx.WindowsFileSystem("example", { * activeDirectoryId: exampleAwsDirectoryServiceDirectory.id, * kmsKeyId: exampleAwsKmsKey.arn, - * storageCapacity: 300, + * storageCapacity: 32, * subnetIds: [exampleAwsSubnet.id], - * throughputCapacity: 1024, + * throughputCapacity: 32, * }); * ``` * @@ -41,9 +41,9 @@ import * as utilities from "../utilities"; * * const example = new aws.fsx.WindowsFileSystem("example", { * kmsKeyId: exampleAwsKmsKey.arn, - * storageCapacity: 300, + * storageCapacity: 32, * subnetIds: [exampleAwsSubnet.id], - * throughputCapacity: 1024, + * throughputCapacity: 32, * selfManagedActiveDirectory: { * dnsIps: [ * "10.0.0.111", diff --git a/sdk/nodejs/guardduty/organizationConfiguration.ts b/sdk/nodejs/guardduty/organizationConfiguration.ts index 1554514ebdb..fdac1f64e39 100644 --- a/sdk/nodejs/guardduty/organizationConfiguration.ts +++ b/sdk/nodejs/guardduty/organizationConfiguration.ts @@ -89,7 +89,7 @@ export class OrganizationConfiguration extends pulumi.CustomResource { */ public readonly autoEnableOrganizationMembers!: pulumi.Output; /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. */ public readonly datasources!: pulumi.Output; /** @@ -144,7 +144,7 @@ export interface OrganizationConfigurationState { */ autoEnableOrganizationMembers?: pulumi.Input; /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. */ datasources?: pulumi.Input; /** @@ -168,7 +168,7 @@ export interface OrganizationConfigurationArgs { */ autoEnableOrganizationMembers?: pulumi.Input; /** - * Configuration for the collected datasources. + * Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `aws.guardduty.OrganizationConfigurationFeature` resources. */ datasources?: pulumi.Input; /** diff --git a/sdk/nodejs/lb/trustStore.ts b/sdk/nodejs/lb/trustStore.ts index fd61122402f..513d62bbfb3 100644 --- a/sdk/nodejs/lb/trustStore.ts +++ b/sdk/nodejs/lb/trustStore.ts @@ -9,6 +9,30 @@ import * as utilities from "../utilities"; * * ## Example Usage * + * ### Trust Store Load Balancer Listener + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const test = new aws.lb.TrustStore("test", { + * name: "tf-example-lb-ts", + * caCertificatesBundleS3Bucket: "...", + * caCertificatesBundleS3Key: "...", + * }); + * const example = new aws.lb.Listener("example", { + * loadBalancerArn: exampleAwsLb.id, + * defaultActions: [{ + * targetGroupArn: exampleAwsLbTargetGroup.id, + * type: "forward", + * }], + * mutualAuthentication: { + * mode: "verify", + * trustStoreArn: test.arn, + * }, + * }); + * ``` + * * ## Import * * Using `pulumi import`, import Target Groups using their ARN. For example: diff --git a/sdk/nodejs/msk/replicator.ts b/sdk/nodejs/msk/replicator.ts index e1eec1baf84..8b0012c5058 100644 --- a/sdk/nodejs/msk/replicator.ts +++ b/sdk/nodejs/msk/replicator.ts @@ -12,6 +12,56 @@ import * as utilities from "../utilities"; * * ## Example Usage * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const test = new aws.msk.Replicator("test", { + * replicatorName: "test-name", + * description: "test-description", + * serviceExecutionRoleArn: sourceAwsIamRole.arn, + * kafkaClusters: [ + * { + * amazonMskCluster: { + * mskClusterArn: source.arn, + * }, + * vpcConfig: { + * subnetIds: sourceAwsSubnet.map(__item => __item.id), + * securityGroupsIds: [sourceAwsSecurityGroup.id], + * }, + * }, + * { + * amazonMskCluster: { + * mskClusterArn: target.arn, + * }, + * vpcConfig: { + * subnetIds: targetAwsSubnet.map(__item => __item.id), + * securityGroupsIds: [targetAwsSecurityGroup.id], + * }, + * }, + * ], + * replicationInfoList: { + * sourceKafkaClusterArn: source.arn, + * targetKafkaClusterArn: target.arn, + * targetCompressionType: "NONE", + * topicReplications: [{ + * topicNameConfiguration: { + * type: "PREFIXED_WITH_SOURCE_CLUSTER_ALIAS", + * }, + * topicsToReplicates: [".*"], + * startingPosition: { + * type: "LATEST", + * }, + * }], + * consumerGroupReplications: [{ + * consumerGroupsToReplicates: [".*"], + * }], + * }, + * }); + * ``` + * * ## Import * * Using `pulumi import`, import MSK replicators using the replicator ARN. For example: diff --git a/sdk/nodejs/quicksight/user.ts b/sdk/nodejs/quicksight/user.ts index 5198088d34a..839f76e852d 100644 --- a/sdk/nodejs/quicksight/user.ts +++ b/sdk/nodejs/quicksight/user.ts @@ -9,17 +9,47 @@ import * as utilities from "../utilities"; * * ## Example Usage * + * ### Create User With IAM Identity Type Using an IAM Role + * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.quicksight.User("example", { - * sessionName: "an-author", - * email: "author@example.com", - * namespace: "foo", + * email: "author1@example.com", * identityType: "IAM", - * iamArn: "arn:aws:iam::123456789012:user/Example", * userRole: "AUTHOR", + * iamArn: "arn:aws:iam::123456789012:role/AuthorRole", + * sessionName: "author1", + * }); + * ``` + * + * ### Create User With IAM Identity Type Using an IAM User + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.quicksight.User("example", { + * email: "authorpro1@example.com", + * identityType: "IAM", + * userRole: "AUTHOR_PRO", + * iamArn: "arn:aws:iam::123456789012:user/authorpro1", + * }); + * ``` + * + * ### Create User With QuickSight Identity Type in Non-Default Namespace + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.quicksight.User("example", { + * email: "reader1@example.com", + * identityType: "QUICKSIGHT", + * userRole: "READER", + * namespace: "example", + * userName: "reader1", * }); * ``` * @@ -56,23 +86,23 @@ export class User extends pulumi.CustomResource { } /** - * Amazon Resource Name (ARN) of the user + * Amazon Resource Name (ARN) for the user. */ public /*out*/ readonly arn!: pulumi.Output; /** - * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. */ public readonly awsAccountId!: pulumi.Output; /** - * The email address of the user that you want to register. + * Email address of the user that you want to register. */ public readonly email!: pulumi.Output; /** - * The ARN of the IAM user or role that you are registering with Amazon QuickSight. + * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. */ public readonly iamArn!: pulumi.Output; /** - * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. */ public readonly identityType!: pulumi.Output; /** @@ -80,15 +110,21 @@ export class User extends pulumi.CustomResource { */ public readonly namespace!: pulumi.Output; /** - * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. */ public readonly sessionName!: pulumi.Output; /** - * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + * URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + */ + public /*out*/ readonly userInvitationUrl!: pulumi.Output; + /** + * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. */ public readonly userName!: pulumi.Output; /** - * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + * + * The following arguments are optional: */ public readonly userRole!: pulumi.Output; @@ -112,6 +148,7 @@ export class User extends pulumi.CustomResource { resourceInputs["identityType"] = state ? state.identityType : undefined; resourceInputs["namespace"] = state ? state.namespace : undefined; resourceInputs["sessionName"] = state ? state.sessionName : undefined; + resourceInputs["userInvitationUrl"] = state ? state.userInvitationUrl : undefined; resourceInputs["userName"] = state ? state.userName : undefined; resourceInputs["userRole"] = state ? state.userRole : undefined; } else { @@ -134,6 +171,7 @@ export class User extends pulumi.CustomResource { resourceInputs["userName"] = args ? args.userName : undefined; resourceInputs["userRole"] = args ? args.userRole : undefined; resourceInputs["arn"] = undefined /*out*/; + resourceInputs["userInvitationUrl"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(User.__pulumiType, name, resourceInputs, opts); @@ -145,23 +183,23 @@ export class User extends pulumi.CustomResource { */ export interface UserState { /** - * Amazon Resource Name (ARN) of the user + * Amazon Resource Name (ARN) for the user. */ arn?: pulumi.Input; /** - * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. */ awsAccountId?: pulumi.Input; /** - * The email address of the user that you want to register. + * Email address of the user that you want to register. */ email?: pulumi.Input; /** - * The ARN of the IAM user or role that you are registering with Amazon QuickSight. + * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. */ iamArn?: pulumi.Input; /** - * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. */ identityType?: pulumi.Input; /** @@ -169,15 +207,21 @@ export interface UserState { */ namespace?: pulumi.Input; /** - * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. */ sessionName?: pulumi.Input; /** - * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + * URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + */ + userInvitationUrl?: pulumi.Input; + /** + * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. */ userName?: pulumi.Input; /** - * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + * + * The following arguments are optional: */ userRole?: pulumi.Input; } @@ -187,19 +231,19 @@ export interface UserState { */ export interface UserArgs { /** - * The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + * ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. */ awsAccountId?: pulumi.Input; /** - * The email address of the user that you want to register. + * Email address of the user that you want to register. */ email: pulumi.Input; /** - * The ARN of the IAM user or role that you are registering with Amazon QuickSight. + * ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. */ iamArn?: pulumi.Input; /** - * Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iamArn` must also be specified. + * Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. */ identityType: pulumi.Input; /** @@ -207,15 +251,17 @@ export interface UserArgs { */ namespace?: pulumi.Input; /** - * The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + * Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. */ sessionName?: pulumi.Input; /** - * The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identityType` set to `QUICKSIGHT`. + * Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. */ userName?: pulumi.Input; /** - * The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + * Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + * + * The following arguments are optional: */ userRole: pulumi.Input; } diff --git a/sdk/nodejs/rds/cluster.ts b/sdk/nodejs/rds/cluster.ts index 2a5119b7c62..b7da035e243 100644 --- a/sdk/nodejs/rds/cluster.ts +++ b/sdk/nodejs/rds/cluster.ts @@ -446,7 +446,7 @@ export class Cluster extends pulumi.CustomResource { */ public readonly networkType!: pulumi.Output; /** - * Enables Performance Insights for the RDS Cluster + * Enables Performance Insights. */ public readonly performanceInsightsEnabled!: pulumi.Output; /** @@ -885,7 +885,7 @@ export interface ClusterState { */ networkType?: pulumi.Input; /** - * Enables Performance Insights for the RDS Cluster + * Enables Performance Insights. */ performanceInsightsEnabled?: pulumi.Input; /** @@ -1137,7 +1137,7 @@ export interface ClusterArgs { */ networkType?: pulumi.Input; /** - * Enables Performance Insights for the RDS Cluster + * Enables Performance Insights. */ performanceInsightsEnabled?: pulumi.Input; /** diff --git a/sdk/nodejs/rds/clusterInstance.ts b/sdk/nodejs/rds/clusterInstance.ts index 85877bdfc9c..aa4a7c473b1 100644 --- a/sdk/nodejs/rds/clusterInstance.ts +++ b/sdk/nodejs/rds/clusterInstance.ts @@ -186,7 +186,7 @@ export class ClusterInstance extends pulumi.CustomResource { */ public /*out*/ readonly networkType!: pulumi.Output; /** - * Specifies whether Performance Insights is enabled or not. + * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. */ public readonly performanceInsightsEnabled!: pulumi.Output; /** @@ -434,7 +434,7 @@ export interface ClusterInstanceState { */ networkType?: pulumi.Input; /** - * Specifies whether Performance Insights is enabled or not. + * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. */ performanceInsightsEnabled?: pulumi.Input; /** @@ -559,7 +559,7 @@ export interface ClusterInstanceArgs { */ monitoringRoleArn?: pulumi.Input; /** - * Specifies whether Performance Insights is enabled or not. + * Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. */ performanceInsightsEnabled?: pulumi.Input; /** diff --git a/sdk/nodejs/rds/getCertificate.ts b/sdk/nodejs/rds/getCertificate.ts index 30613fed547..fa3a717176b 100644 --- a/sdk/nodejs/rds/getCertificate.ts +++ b/sdk/nodejs/rds/getCertificate.ts @@ -22,6 +22,7 @@ export function getCertificate(args?: GetCertificateArgs, opts?: pulumi.InvokeOp args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws:rds/getCertificate:getCertificate", { + "defaultForNewLaunches": args.defaultForNewLaunches, "id": args.id, "latestValidTill": args.latestValidTill, }, opts); @@ -31,6 +32,10 @@ export function getCertificate(args?: GetCertificateArgs, opts?: pulumi.InvokeOp * A collection of arguments for invoking getCertificate. */ export interface GetCertificateArgs { + /** + * When enabled, returns the default certificate for new RDS instances. + */ + defaultForNewLaunches?: boolean; /** * Certificate identifier. For example, `rds-ca-2019`. */ @@ -61,6 +66,7 @@ export interface GetCertificateResult { * If there is an override for the default certificate identifier, when the override expires. */ readonly customerOverrideValidTill: string; + readonly defaultForNewLaunches?: boolean; readonly id: string; readonly latestValidTill?: boolean; /** @@ -94,6 +100,7 @@ export function getCertificateOutput(args?: GetCertificateOutputArgs, opts?: pul args = args || {}; opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("aws:rds/getCertificate:getCertificate", { + "defaultForNewLaunches": args.defaultForNewLaunches, "id": args.id, "latestValidTill": args.latestValidTill, }, opts); @@ -103,6 +110,10 @@ export function getCertificateOutput(args?: GetCertificateOutputArgs, opts?: pul * A collection of arguments for invoking getCertificate. */ export interface GetCertificateOutputArgs { + /** + * When enabled, returns the default certificate for new RDS instances. + */ + defaultForNewLaunches?: pulumi.Input; /** * Certificate identifier. For example, `rds-ca-2019`. */ diff --git a/sdk/nodejs/rds/getEngineVersion.ts b/sdk/nodejs/rds/getEngineVersion.ts index eb455dfe3eb..97fc0bfc8e1 100644 --- a/sdk/nodejs/rds/getEngineVersion.ts +++ b/sdk/nodejs/rds/getEngineVersion.ts @@ -166,14 +166,26 @@ export interface GetEngineVersionResult { * Set of the time zones supported by the engine version. */ readonly supportedTimezones: string[]; + /** + * Whether the certificates can be rotated without restarting the Aurora instance. + */ + readonly supportsCertificateRotationWithoutRestart: boolean; /** * Whether you can use Aurora global databases with the engine version. */ readonly supportsGlobalDatabases: boolean; + /** + * Whether the engine version supports integrations with other AWS services. + */ + readonly supportsIntegrations: boolean; /** * Whether the engine version supports Aurora Limitless Database. */ readonly supportsLimitlessDatabase: boolean; + /** + * Whether the engine version supports local write forwarding or not. + */ + readonly supportsLocalWriteForwarding: boolean; /** * Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. */ diff --git a/sdk/nodejs/rds/integration.ts b/sdk/nodejs/rds/integration.ts index 8187f25cfc3..4bfdbb9d319 100644 --- a/sdk/nodejs/rds/integration.ts +++ b/sdk/nodejs/rds/integration.ts @@ -120,19 +120,31 @@ export class Integration extends pulumi.CustomResource { } /** - * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + * Set of non-secret key–value pairs that contains additional contextual information about the data. + * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + * You can only include this parameter if you specify the `kmsKeyId` parameter. */ public readonly additionalEncryptionContext!: pulumi.Output<{[key: string]: string} | undefined>; /** * ARN of the Integration. */ public /*out*/ readonly arn!: pulumi.Output; + /** + * Data filters for the integration. + * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + * Multiple expressions are separated by a comma. + * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + */ + public readonly dataFilter!: pulumi.Output; /** * Name of the integration. */ public readonly integrationName!: pulumi.Output; /** - * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + * KMS key identifier for the key to use to encrypt the integration. + * If you don't specify an encryption key, RDS uses a default AWS owned key. + * If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. */ public readonly kmsKeyId!: pulumi.Output; /** @@ -172,6 +184,7 @@ export class Integration extends pulumi.CustomResource { const state = argsOrState as IntegrationState | undefined; resourceInputs["additionalEncryptionContext"] = state ? state.additionalEncryptionContext : undefined; resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["dataFilter"] = state ? state.dataFilter : undefined; resourceInputs["integrationName"] = state ? state.integrationName : undefined; resourceInputs["kmsKeyId"] = state ? state.kmsKeyId : undefined; resourceInputs["sourceArn"] = state ? state.sourceArn : undefined; @@ -191,6 +204,7 @@ export class Integration extends pulumi.CustomResource { throw new Error("Missing required property 'targetArn'"); } resourceInputs["additionalEncryptionContext"] = args ? args.additionalEncryptionContext : undefined; + resourceInputs["dataFilter"] = args ? args.dataFilter : undefined; resourceInputs["integrationName"] = args ? args.integrationName : undefined; resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined; resourceInputs["sourceArn"] = args ? args.sourceArn : undefined; @@ -210,19 +224,31 @@ export class Integration extends pulumi.CustomResource { */ export interface IntegrationState { /** - * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + * Set of non-secret key–value pairs that contains additional contextual information about the data. + * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + * You can only include this parameter if you specify the `kmsKeyId` parameter. */ additionalEncryptionContext?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * ARN of the Integration. */ arn?: pulumi.Input; + /** + * Data filters for the integration. + * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + * Multiple expressions are separated by a comma. + * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + */ + dataFilter?: pulumi.Input; /** * Name of the integration. */ integrationName?: pulumi.Input; /** - * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + * KMS key identifier for the key to use to encrypt the integration. + * If you don't specify an encryption key, RDS uses a default AWS owned key. + * If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. */ kmsKeyId?: pulumi.Input; /** @@ -253,15 +279,27 @@ export interface IntegrationState { */ export interface IntegrationArgs { /** - * Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kmsKeyId` parameter. + * Set of non-secret key–value pairs that contains additional contextual information about the data. + * For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + * You can only include this parameter if you specify the `kmsKeyId` parameter. */ additionalEncryptionContext?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * Data filters for the integration. + * These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + * The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + * Multiple expressions are separated by a comma. + * See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + */ + dataFilter?: pulumi.Input; /** * Name of the integration. */ integrationName: pulumi.Input; /** - * KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + * KMS key identifier for the key to use to encrypt the integration. + * If you don't specify an encryption key, RDS uses a default AWS owned key. + * If you use the default AWS owned key, you should ignore `kmsKeyId` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. */ kmsKeyId?: pulumi.Input; /** diff --git a/sdk/nodejs/route53/getRecords.ts b/sdk/nodejs/route53/getRecords.ts new file mode 100644 index 00000000000..664f81f8f80 --- /dev/null +++ b/sdk/nodejs/route53/getRecords.ts @@ -0,0 +1,147 @@ +// *** 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 the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const selected = aws.route53.getZone({ + * name: "test.com.", + * privateZone: true, + * }); + * const example = selected.then(selected => aws.route53.getRecords({ + * zoneId: selected.zoneId, + * })); + * ``` + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const selected = aws.route53.getZone({ + * name: "test.com.", + * privateZone: true, + * }); + * const example = selected.then(selected => aws.route53.getRecords({ + * zoneId: selected.zoneId, + * nameRegex: "^www", + * })); + * ``` + */ +export function getRecords(args: GetRecordsArgs, opts?: pulumi.InvokeOptions): Promise { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws:route53/getRecords:getRecords", { + "nameRegex": args.nameRegex, + "zoneId": args.zoneId, + }, opts); +} + +/** + * A collection of arguments for invoking getRecords. + */ +export interface GetRecordsArgs { + /** + * Regex string to apply to the resource record names returned by AWS. + */ + nameRegex?: string; + /** + * The ID of the hosted zone that contains the resource record sets that you want to list. + */ + zoneId: string; +} + +/** + * A collection of values returned by getRecords. + */ +export interface GetRecordsResult { + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + readonly nameRegex?: string; + /** + * The resource records sets. + */ + readonly resourceRecordSets: outputs.route53.GetRecordsResourceRecordSet[]; + readonly zoneId: string; +} +/** + * Use this data source to get the details of resource records in a Route 53 hosted zone. + * + * ## Example Usage + * + * ### Basic Usage + * + * Return all records in the zone. + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const selected = aws.route53.getZone({ + * name: "test.com.", + * privateZone: true, + * }); + * const example = selected.then(selected => aws.route53.getRecords({ + * zoneId: selected.zoneId, + * })); + * ``` + * + * ### Basic Usage with filter + * + * Return the records that starts with `www`. + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const selected = aws.route53.getZone({ + * name: "test.com.", + * privateZone: true, + * }); + * const example = selected.then(selected => aws.route53.getRecords({ + * zoneId: selected.zoneId, + * nameRegex: "^www", + * })); + * ``` + */ +export function getRecordsOutput(args: GetRecordsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output { + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invokeOutput("aws:route53/getRecords:getRecords", { + "nameRegex": args.nameRegex, + "zoneId": args.zoneId, + }, opts); +} + +/** + * A collection of arguments for invoking getRecords. + */ +export interface GetRecordsOutputArgs { + /** + * Regex string to apply to the resource record names returned by AWS. + */ + nameRegex?: pulumi.Input; + /** + * The ID of the hosted zone that contains the resource record sets that you want to list. + */ + zoneId: pulumi.Input; +} diff --git a/sdk/nodejs/route53/index.ts b/sdk/nodejs/route53/index.ts index 99d19f0fb83..f3f4717cb45 100644 --- a/sdk/nodejs/route53/index.ts +++ b/sdk/nodejs/route53/index.ts @@ -35,6 +35,11 @@ export const getQueryLogConfig: typeof import("./getQueryLogConfig").getQueryLog export const getQueryLogConfigOutput: typeof import("./getQueryLogConfig").getQueryLogConfigOutput = null as any; utilities.lazyLoad(exports, ["getQueryLogConfig","getQueryLogConfigOutput"], () => require("./getQueryLogConfig")); +export { GetRecordsArgs, GetRecordsResult, GetRecordsOutputArgs } from "./getRecords"; +export const getRecords: typeof import("./getRecords").getRecords = null as any; +export const getRecordsOutput: typeof import("./getRecords").getRecordsOutput = null as any; +utilities.lazyLoad(exports, ["getRecords","getRecordsOutput"], () => require("./getRecords")); + export { GetResolverEndpointArgs, GetResolverEndpointResult, GetResolverEndpointOutputArgs } from "./getResolverEndpoint"; export const getResolverEndpoint: typeof import("./getResolverEndpoint").getResolverEndpoint = null as any; export const getResolverEndpointOutput: typeof import("./getResolverEndpoint").getResolverEndpointOutput = null as any; diff --git a/sdk/nodejs/route53/record.ts b/sdk/nodejs/route53/record.ts index d70e77b613c..53ecb3308ce 100644 --- a/sdk/nodejs/route53/record.ts +++ b/sdk/nodejs/route53/record.ts @@ -150,12 +150,12 @@ import * as utilities from "../utilities"; * Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): * * ```sh - * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS + * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS * ``` * If the record also contains a set identifier, append it: * * ```sh - * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev + * $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev * ``` */ export class Record extends pulumi.CustomResource { diff --git a/sdk/nodejs/s3/objectCopy.ts b/sdk/nodejs/s3/objectCopy.ts index 72309d27654..75159a683d7 100644 --- a/sdk/nodejs/s3/objectCopy.ts +++ b/sdk/nodejs/s3/objectCopy.ts @@ -27,6 +27,27 @@ import * as utilities from "../utilities"; * }], * }); * ``` + * + * ### Ignoring Provider `defaultTags` + * + * S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). + * If the resource's own `tags` and the provider-level `defaultTags` would together lead to more than 10 tags on an S3 object copy, use the `overrideProvider` configuration block to suppress any provider-level `defaultTags`. + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const test = new aws.s3.ObjectCopy("test", { + * bucket: "destination_bucket", + * key: "destination_key", + * source: "source_bucket/source_key", + * overrideProvider: { + * defaultTags: { + * tags: {}, + * }, + * }, + * }); + * ``` */ export class ObjectCopy extends pulumi.CustomResource { /** @@ -201,6 +222,7 @@ export class ObjectCopy extends pulumi.CustomResource { * Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). */ public readonly objectLockRetainUntilDate!: pulumi.Output; + public readonly overrideProvider!: pulumi.Output; /** * If present, indicates that the requester was successfully charged for the request. */ @@ -312,6 +334,7 @@ export class ObjectCopy extends pulumi.CustomResource { resourceInputs["objectLockLegalHoldStatus"] = state ? state.objectLockLegalHoldStatus : undefined; resourceInputs["objectLockMode"] = state ? state.objectLockMode : undefined; resourceInputs["objectLockRetainUntilDate"] = state ? state.objectLockRetainUntilDate : undefined; + resourceInputs["overrideProvider"] = state ? state.overrideProvider : undefined; resourceInputs["requestCharged"] = state ? state.requestCharged : undefined; resourceInputs["requestPayer"] = state ? state.requestPayer : undefined; resourceInputs["serverSideEncryption"] = state ? state.serverSideEncryption : undefined; @@ -366,6 +389,7 @@ export class ObjectCopy extends pulumi.CustomResource { resourceInputs["objectLockLegalHoldStatus"] = args ? args.objectLockLegalHoldStatus : undefined; resourceInputs["objectLockMode"] = args ? args.objectLockMode : undefined; resourceInputs["objectLockRetainUntilDate"] = args ? args.objectLockRetainUntilDate : undefined; + resourceInputs["overrideProvider"] = args ? args.overrideProvider : undefined; resourceInputs["requestPayer"] = args ? args.requestPayer : undefined; resourceInputs["serverSideEncryption"] = args ? args.serverSideEncryption : undefined; resourceInputs["source"] = args ? args.source : undefined; @@ -545,6 +569,7 @@ export interface ObjectCopyState { * Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). */ objectLockRetainUntilDate?: pulumi.Input; + overrideProvider?: pulumi.Input; /** * If present, indicates that the requester was successfully charged for the request. */ @@ -724,6 +749,7 @@ export interface ObjectCopyArgs { * Date and time, in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8), when this object's object lock will [expire](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html#object-lock-retention-periods). */ objectLockRetainUntilDate?: pulumi.Input; + overrideProvider?: pulumi.Input; /** * Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see Downloading Objects in Requestor Pays Buckets (https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 Developer Guide. If included, the only valid value is `requester`. */ diff --git a/sdk/nodejs/s3tables/table.ts b/sdk/nodejs/s3tables/table.ts index ab3a7fdd494..ad5950f2e41 100644 --- a/sdk/nodejs/s3tables/table.ts +++ b/sdk/nodejs/s3tables/table.ts @@ -25,7 +25,7 @@ import * as utilities from "../utilities"; * }); * const example = new aws.s3tables.Table("example", { * name: "example-table", - * namespace: exampleNamespace, + * namespace: exampleNamespace.namespace, * tableBucketArn: exampleNamespace.tableBucketArn, * format: "ICEBERG", * }); diff --git a/sdk/nodejs/ssmincidents/getReplicationSet.ts b/sdk/nodejs/ssmincidents/getReplicationSet.ts index c003a209c3b..eea9185201c 100644 --- a/sdk/nodejs/ssmincidents/getReplicationSet.ts +++ b/sdk/nodejs/ssmincidents/getReplicationSet.ts @@ -46,7 +46,7 @@ export interface GetReplicationSetArgs { */ export interface GetReplicationSetResult { /** - * The Amazon Resouce Name (ARN) of the replication set. + * The Amazon Resource Name (ARN) of the replication set. */ readonly arn: string; /** diff --git a/sdk/nodejs/ssoadmin/managedPolicyAttachment.ts b/sdk/nodejs/ssoadmin/managedPolicyAttachment.ts index 256c961d867..4dd1a1d577d 100644 --- a/sdk/nodejs/ssoadmin/managedPolicyAttachment.ts +++ b/sdk/nodejs/ssoadmin/managedPolicyAttachment.ts @@ -47,7 +47,7 @@ import * as utilities from "../utilities"; * displayName: "Admin", * description: "Admin Group", * }); - * const accountAssignment = new aws.ssoadmin.AccountAssignment("account_assignment", { + * const exampleAccountAssignment = new aws.ssoadmin.AccountAssignment("example", { * instanceArn: example.then(example => example.arns?.[0]), * permissionSetArn: examplePermissionSet.arn, * principalId: exampleGroup.groupId, @@ -60,7 +60,7 @@ import * as utilities from "../utilities"; * managedPolicyArn: "arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup", * permissionSetArn: examplePermissionSet.arn, * }, { - * dependsOn: [exampleAwsSsoadminAccountAssignment], + * dependsOn: [exampleAccountAssignment], * }); * ``` * diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 9a6c66ffb14..8328f682eb2 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -258,6 +258,7 @@ "bedrock/agentAgent.ts", "bedrock/agentAgentActionGroup.ts", "bedrock/agentAgentAlias.ts", + "bedrock/agentAgentCollaborator.ts", "bedrock/agentAgentKnowledgeBaseAssociation.ts", "bedrock/agentDataSource.ts", "bedrock/agentKnowledgeBase.ts", @@ -316,6 +317,7 @@ "cleanrooms/collaboration.ts", "cleanrooms/configuredTable.ts", "cleanrooms/index.ts", + "cleanrooms/membership.ts", "cloud9/environmentEC2.ts", "cloud9/environmentMembership.ts", "cloud9/index.ts", @@ -385,6 +387,7 @@ "cloudwatch/eventRuleMixins.ts", "cloudwatch/eventTarget.ts", "cloudwatch/getEventBus.ts", + "cloudwatch/getEventBuses.ts", "cloudwatch/getEventConnection.ts", "cloudwatch/getEventSource.ts", "cloudwatch/getLogDataProtectionPolicyDocument.ts", @@ -395,10 +398,15 @@ "cloudwatch/logAccountPolicy.ts", "cloudwatch/logAnomalyDetector.ts", "cloudwatch/logDataProtectionPolicy.ts", + "cloudwatch/logDelivery.ts", + "cloudwatch/logDeliveryDestination.ts", + "cloudwatch/logDeliveryDestinationPolicy.ts", + "cloudwatch/logDeliverySource.ts", "cloudwatch/logDestination.ts", "cloudwatch/logDestinationPolicy.ts", "cloudwatch/logGroup.ts", "cloudwatch/logGroupMixins.ts", + "cloudwatch/logIndexPolicy.ts", "cloudwatch/logMetricFilter.ts", "cloudwatch/logResourcePolicy.ts", "cloudwatch/logStream.ts", @@ -932,6 +940,7 @@ "ecs/clusterCapacityProviders.ts", "ecs/container.ts", "ecs/getCluster.ts", + "ecs/getClusters.ts", "ecs/getContainerDefinition.ts", "ecs/getService.ts", "ecs/getTaskDefinition.ts", @@ -1824,6 +1833,7 @@ "route53/getDelegationSet.ts", "route53/getProfilesProfiles.ts", "route53/getQueryLogConfig.ts", + "route53/getRecords.ts", "route53/getResolverEndpoint.ts", "route53/getResolverFirewallConfig.ts", "route53/getResolverFirewallDomainList.ts", @@ -2288,6 +2298,7 @@ "vpclattice/index.ts", "vpclattice/listener.ts", "vpclattice/listenerRule.ts", + "vpclattice/resourceGateway.ts", "vpclattice/resourcePolicy.ts", "vpclattice/service.ts", "vpclattice/serviceNetwork.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index ae9608cf12f..2584a405a39 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -4407,6 +4407,10 @@ export namespace appflow { } export interface FlowSourceFlowConfigSourceConnectorPropertiesSalesforce { + /** + * Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + */ + dataTransferApi?: pulumi.Input; /** * Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. */ @@ -10054,9 +10058,11 @@ export namespace batch { export interface JobQueueJobStateTimeLimitAction { /** * The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` */ action: pulumi.Input; + /** + * The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + */ maxTimeSeconds: pulumi.Input; /** * The reason to log for the action being taken. @@ -10338,6 +10344,28 @@ export namespace bedrock { update?: pulumi.Input; } + export interface AgentAgentCollaboratorAgentDescriptor { + /** + * ARN of the Alias of an Agent to use as the collaborator. + */ + aliasArn: pulumi.Input; + } + + export interface AgentAgentCollaboratorTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: pulumi.Input; + } + export interface AgentAgentGuardrailConfiguration { /** * Unique identifier of the guardrail. @@ -12109,6 +12137,38 @@ export namespace cleanrooms { databaseName: pulumi.Input; tableName: pulumi.Input; } + + export interface MembershipDefaultResultConfiguration { + outputConfiguration?: pulumi.Input; + /** + * The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + */ + roleArn?: pulumi.Input; + } + + export interface MembershipDefaultResultConfigurationOutputConfiguration { + s3?: pulumi.Input; + } + + export interface MembershipDefaultResultConfigurationOutputConfigurationS3 { + bucket: pulumi.Input; + keyPrefix?: pulumi.Input; + resultFormat: pulumi.Input; + } + + export interface MembershipPaymentConfiguration { + queryCompute?: pulumi.Input; + } + + export interface MembershipPaymentConfigurationQueryCompute { + /** + * Indicates whether the collaboration member has accepted to pay for query compute costs. + */ + isResponsible: pulumi.Input; + } } export namespace cloudformation { @@ -12497,7 +12557,7 @@ export namespace cloudfront { */ compress?: pulumi.Input; /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. */ defaultTtl?: pulumi.Input; /** @@ -12512,16 +12572,20 @@ export namespace cloudfront { * A config block that triggers a cloudfront function with specific actions (maximum 2). */ functionAssociations?: pulumi.Input[]>; + /** + * A config block that sets the grpc config. + */ + grpcConfig?: pulumi.Input; /** * A config block that triggers a lambda function with specific actions (maximum 4). */ lambdaFunctionAssociations?: pulumi.Input[]>; /** - * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. */ maxTtl?: pulumi.Input; /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. */ minTtl?: pulumi.Input; /** @@ -12599,6 +12663,13 @@ export namespace cloudfront { functionArn: pulumi.Input; } + export interface DistributionDefaultCacheBehaviorGrpcConfig { + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + */ + enabled?: pulumi.Input; + } + export interface DistributionDefaultCacheBehaviorLambdaFunctionAssociation { /** * Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. @@ -12616,7 +12687,7 @@ export namespace cloudfront { export interface DistributionLoggingConfig { /** - * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. */ bucket: pulumi.Input; /** @@ -12647,7 +12718,7 @@ export namespace cloudfront { */ compress?: pulumi.Input; /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. */ defaultTtl?: pulumi.Input; /** @@ -12662,16 +12733,20 @@ export namespace cloudfront { * A config block that triggers a cloudfront function with specific actions (maximum 2). */ functionAssociations?: pulumi.Input[]>; + /** + * A config block that sets the grpc config. + */ + grpcConfig?: pulumi.Input; /** * A config block that triggers a lambda function with specific actions (maximum 4). */ lambdaFunctionAssociations?: pulumi.Input[]>; /** - * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. */ maxTtl?: pulumi.Input; /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. */ minTtl?: pulumi.Input; /** @@ -12753,6 +12828,13 @@ export namespace cloudfront { functionArn: pulumi.Input; } + export interface DistributionOrderedCacheBehaviorGrpcConfig { + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + */ + enabled?: pulumi.Input; + } + export interface DistributionOrderedCacheBehaviorLambdaFunctionAssociation { /** * Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. @@ -14269,6 +14351,24 @@ export namespace cloudwatch { logDeliveryStatus?: pulumi.Input; } + export interface LogDeliveryDestinationDeliveryDestinationConfiguration { + /** + * The ARN of the AWS destination that this delivery destination represents. + */ + destinationResourceArn: pulumi.Input; + } + + export interface LogDeliveryS3DeliveryConfiguration { + /** + * This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + */ + enableHiveCompatiblePath: pulumi.Input; + /** + * This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + */ + suffixPath: pulumi.Input; + } + export interface LogMetricFilterMetricTransformation { /** * The value to emit when a filter pattern does not match a log event. Conflicts with `dimensions`. @@ -14424,6 +14524,25 @@ export namespace codeartifact { } export namespace codebuild { + export interface FleetComputeConfiguration { + /** + * Amount of disk space of the instance type included in the fleet. + */ + disk?: pulumi.Input; + /** + * Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + */ + machineType?: pulumi.Input; + /** + * Amount of memory of the instance type included in the fleet. + */ + memory?: pulumi.Input; + /** + * Number of vCPUs of the instance type included in the fleet. + */ + vcpu?: pulumi.Input; + } + export interface FleetScalingConfiguration { desiredCapacity?: pulumi.Input; /** @@ -16218,6 +16337,17 @@ export namespace cognito { sourceArn?: pulumi.Input; } + export interface UserPoolEmailMfaConfiguration { + /** + * The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + */ + message?: pulumi.Input; + /** + * The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + */ + subject?: pulumi.Input; + } + export interface UserPoolLambdaConfig { /** * ARN of the lambda creating an authentication challenge. @@ -16390,6 +16520,13 @@ export namespace cognito { minLength?: pulumi.Input; } + export interface UserPoolSignInPolicy { + /** + * The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + */ + allowedFirstAuthFactors?: pulumi.Input[]>; + } + export interface UserPoolSmsConfiguration { /** * External ID used in IAM role trust relationships. For more information about using external IDs, see [How to Use an External ID When Granting Access to Your AWS Resources to a Third Party](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). @@ -16459,6 +16596,17 @@ export namespace cognito { */ smsMessage?: pulumi.Input; } + + export interface UserPoolWebAuthnConfiguration { + /** + * The authentication domain that passkeys providers use as a relying party. + */ + relyingPartyId?: pulumi.Input; + /** + * If your user pool should require a passkey. Must be one of `required` or `preferred`. + */ + userVerification?: pulumi.Input; + } } export namespace comprehend { @@ -20318,6 +20466,10 @@ export namespace dms { * Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. */ partitionIncludeSchemaTable?: pulumi.Input; + /** + * For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + */ + saslMechanism?: pulumi.Input; /** * Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. */ @@ -28357,6 +28509,13 @@ export namespace eks { version: pulumi.Input; } + export interface NodeGroupNodeRepairConfig { + /** + * Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + */ + enabled?: pulumi.Input; + } + export interface NodeGroupRemoteAccess { /** * EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify `sourceSecurityGroupIds` when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes. @@ -58459,6 +58618,9 @@ export namespace msk { * Configuration for specifying the position in the topics to start replicating from. */ startingPosition?: pulumi.Input; + /** + * Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + */ topicNameConfiguration?: pulumi.Input; /** * List of regular expression patterns indicating the topics that should not be replica. @@ -58478,6 +58640,9 @@ export namespace msk { } export interface ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration { + /** + * The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + */ type?: pulumi.Input; } @@ -65129,7 +65294,7 @@ export namespace rds { */ authScheme?: pulumi.Input; /** - * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. */ clientPasswordAuthType?: pulumi.Input; /** @@ -68530,6 +68695,20 @@ export namespace s3 { */ uri?: pulumi.Input; } + + export interface ObjectCopyOverrideProvider { + /** + * Override the provider `defaultTags` configuration block. + */ + defaultTags?: pulumi.Input; + } + + export interface ObjectCopyOverrideProviderDefaultTags { + /** + * Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + } } export namespace s3control { @@ -78213,6 +78392,21 @@ export namespace vpclattice { prefix?: pulumi.Input; } + export interface ResourceGatewayTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: pulumi.Input; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: pulumi.Input; + } + export interface ServiceDnsEntry { domainName?: pulumi.Input; hostedZoneId?: pulumi.Input; diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 3a1ea90704a..a8a7f5bf9d9 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -3336,6 +3336,10 @@ export namespace appflow { } export interface FlowSourceFlowConfigSourceConnectorPropertiesSalesforce { + /** + * Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + */ + dataTransferApi?: string; /** * Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. */ @@ -11332,9 +11336,11 @@ export namespace batch { export interface JobQueueJobStateTimeLimitAction { /** * The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` */ action: string; + /** + * The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + */ maxTimeSeconds: number; /** * The reason to log for the action being taken. @@ -11618,6 +11624,28 @@ export namespace bedrock { update?: string; } + export interface AgentAgentCollaboratorAgentDescriptor { + /** + * ARN of the Alias of an Agent to use as the collaborator. + */ + aliasArn: string; + } + + export interface AgentAgentCollaboratorTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: string; + } + export interface AgentAgentGuardrailConfiguration { /** * Unique identifier of the guardrail. @@ -13656,6 +13684,38 @@ export namespace cleanrooms { tableName: string; } + export interface MembershipDefaultResultConfiguration { + outputConfiguration?: outputs.cleanrooms.MembershipDefaultResultConfigurationOutputConfiguration; + /** + * The ARN of the IAM role which will be used to create the membership. + * - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + * - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + * - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + */ + roleArn?: string; + } + + export interface MembershipDefaultResultConfigurationOutputConfiguration { + s3?: outputs.cleanrooms.MembershipDefaultResultConfigurationOutputConfigurationS3; + } + + export interface MembershipDefaultResultConfigurationOutputConfigurationS3 { + bucket: string; + keyPrefix?: string; + resultFormat: string; + } + + export interface MembershipPaymentConfiguration { + queryCompute?: outputs.cleanrooms.MembershipPaymentConfigurationQueryCompute; + } + + export interface MembershipPaymentConfigurationQueryCompute { + /** + * Indicates whether the collaboration member has accepted to pay for query compute costs. + */ + isResponsible: boolean; + } + } export namespace cloudformation { @@ -14056,7 +14116,7 @@ export namespace cloudfront { */ compress?: boolean; /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. */ defaultTtl: number; /** @@ -14071,16 +14131,20 @@ export namespace cloudfront { * A config block that triggers a cloudfront function with specific actions (maximum 2). */ functionAssociations?: outputs.cloudfront.DistributionDefaultCacheBehaviorFunctionAssociation[]; + /** + * A config block that sets the grpc config. + */ + grpcConfig: outputs.cloudfront.DistributionDefaultCacheBehaviorGrpcConfig; /** * A config block that triggers a lambda function with specific actions (maximum 4). */ lambdaFunctionAssociations?: outputs.cloudfront.DistributionDefaultCacheBehaviorLambdaFunctionAssociation[]; /** - * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. */ maxTtl: number; /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. */ minTtl?: number; /** @@ -14158,6 +14222,13 @@ export namespace cloudfront { functionArn: string; } + export interface DistributionDefaultCacheBehaviorGrpcConfig { + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + */ + enabled: boolean; + } + export interface DistributionDefaultCacheBehaviorLambdaFunctionAssociation { /** * Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. @@ -14175,7 +14246,7 @@ export namespace cloudfront { export interface DistributionLoggingConfig { /** - * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + * Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. */ bucket: string; /** @@ -14206,7 +14277,7 @@ export namespace cloudfront { */ compress?: boolean; /** - * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + * Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. */ defaultTtl: number; /** @@ -14221,16 +14292,20 @@ export namespace cloudfront { * A config block that triggers a cloudfront function with specific actions (maximum 2). */ functionAssociations?: outputs.cloudfront.DistributionOrderedCacheBehaviorFunctionAssociation[]; + /** + * A config block that sets the grpc config. + */ + grpcConfig: outputs.cloudfront.DistributionOrderedCacheBehaviorGrpcConfig; /** * A config block that triggers a lambda function with specific actions (maximum 4). */ lambdaFunctionAssociations?: outputs.cloudfront.DistributionOrderedCacheBehaviorLambdaFunctionAssociation[]; /** - * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + * Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. */ maxTtl: number; /** - * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + * Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. */ minTtl?: number; /** @@ -14312,6 +14387,13 @@ export namespace cloudfront { functionArn: string; } + export interface DistributionOrderedCacheBehaviorGrpcConfig { + /** + * `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + */ + enabled: boolean; + } + export interface DistributionOrderedCacheBehaviorLambdaFunctionAssociation { /** * Specific event to trigger this function. Valid values: `viewer-request`, `origin-request`, `viewer-response`, `origin-response`. @@ -15989,6 +16071,33 @@ export namespace cloudwatch { messageGroupId?: string; } + export interface GetEventBusesEventBus { + /** + * The ARN of the event bus. + */ + arn: string; + /** + * The time the event bus was created. + */ + creationTime: string; + /** + * The event bus description. + */ + description: string; + /** + * The time the event bus was last modified. + */ + lastModifiedTime: string; + /** + * The name of the event bus. + */ + name: string; + /** + * The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + */ + policy: string; + } + export interface GetLogDataProtectionPolicyDocumentStatement { /** * Set of at least 1 sensitive data identifiers that you want to mask. Read more in [Types of data that you can protect](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/protect-sensitive-log-data-types.html). @@ -16091,6 +16200,24 @@ export namespace cloudwatch { logDeliveryStatus?: string; } + export interface LogDeliveryDestinationDeliveryDestinationConfiguration { + /** + * The ARN of the AWS destination that this delivery destination represents. + */ + destinationResourceArn: string; + } + + export interface LogDeliveryS3DeliveryConfiguration { + /** + * This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + */ + enableHiveCompatiblePath: boolean; + /** + * This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + */ + suffixPath: string; + } + export interface LogMetricFilterMetricTransformation { /** * The value to emit when a filter pattern does not match a log event. Conflicts with `dimensions`. @@ -16248,6 +16375,25 @@ export namespace codeartifact { } export namespace codebuild { + export interface FleetComputeConfiguration { + /** + * Amount of disk space of the instance type included in the fleet. + */ + disk: number; + /** + * Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + */ + machineType?: string; + /** + * Amount of memory of the instance type included in the fleet. + */ + memory: number; + /** + * Number of vCPUs of the instance type included in the fleet. + */ + vcpu: number; + } + export interface FleetScalingConfiguration { desiredCapacity: number; /** @@ -16305,6 +16451,25 @@ export namespace codebuild { vpcId: string; } + export interface GetFleetComputeConfiguration { + /** + * Amount of disk space of the instance type included in the fleet. + */ + disk: number; + /** + * Machine type of the instance type included in the fleet. + */ + machineType: string; + /** + * Amount of memory of the instance type included in the fleet. + */ + memory: number; + /** + * Number of vCPUs of the instance type included in the fleet. + */ + vcpu: number; + } + export interface GetFleetScalingConfiguration { /** * The desired number of instances in the fleet when auto-scaling. @@ -18370,6 +18535,17 @@ export namespace cognito { sourceArn?: string; } + export interface UserPoolEmailMfaConfiguration { + /** + * The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + */ + message?: string; + /** + * The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + */ + subject?: string; + } + export interface UserPoolLambdaConfig { /** * ARN of the lambda creating an authentication challenge. @@ -18542,6 +18718,13 @@ export namespace cognito { minLength?: string; } + export interface UserPoolSignInPolicy { + /** + * The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + */ + allowedFirstAuthFactors?: string[]; + } + export interface UserPoolSmsConfiguration { /** * External ID used in IAM role trust relationships. For more information about using external IDs, see [How to Use an External ID When Granting Access to Your AWS Resources to a Third Party](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). @@ -18612,6 +18795,17 @@ export namespace cognito { smsMessage: string; } + export interface UserPoolWebAuthnConfiguration { + /** + * The authentication domain that passkeys providers use as a relying party. + */ + relyingPartyId?: string; + /** + * If your user pool should require a passkey. Must be one of `required` or `preferred`. + */ + userVerification?: string; + } + } export namespace comprehend { @@ -24960,6 +25154,10 @@ export namespace dms { * Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. */ partitionIncludeSchemaTable?: boolean; + /** + * For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + */ + saslMechanism?: string; /** * Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. */ @@ -25354,6 +25552,7 @@ export namespace dms { messageMaxBytes: number; noHexPrefix: boolean; partitionIncludeSchemaTable: boolean; + saslMechanism: string; saslPassword: string; saslUsername: string; securityProtocol: string; @@ -34280,6 +34479,13 @@ export namespace eks { version: string; } + export interface NodeGroupNodeRepairConfig { + /** + * Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + */ + enabled?: boolean; + } + export interface NodeGroupRemoteAccess { /** * EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify `sourceSecurityGroupIds` when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes. @@ -66008,6 +66214,9 @@ export namespace msk { * Configuration for specifying the position in the topics to start replicating from. */ startingPosition: outputs.msk.ReplicatorReplicationInfoListTopicReplicationStartingPosition; + /** + * Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + */ topicNameConfiguration: outputs.msk.ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration; /** * List of regular expression patterns indicating the topics that should not be replica. @@ -66027,6 +66236,9 @@ export namespace msk { } export interface ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration { + /** + * The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + */ type?: string; } @@ -73395,7 +73607,7 @@ export namespace rds { */ authScheme?: string; /** - * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + * The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. */ clientPasswordAuthType: string; /** @@ -74277,6 +74489,147 @@ export namespace route53 { values: string[]; } + export interface GetRecordsResourceRecordSet { + /** + * Information about the AWS resource traffic is routed to. + */ + aliasTarget: outputs.route53.GetRecordsResourceRecordSetAliasTarget; + /** + * Information about the CIDR location traffic is routed to. + */ + cidrRoutingConfig: outputs.route53.GetRecordsResourceRecordSetCidrRoutingConfig; + /** + * `PRIMARY` or `SECONDARY`. + */ + failover: string; + /** + * Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + */ + geolocation: outputs.route53.GetRecordsResourceRecordSetGeolocation; + /** + * Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + */ + geoproximityLocation: outputs.route53.GetRecordsResourceRecordSetGeoproximityLocation; + /** + * ID of any applicable health check. + */ + healthCheckId: string; + /** + * Traffic is routed approximately randomly to multiple resources. + */ + multiValueAnswer: boolean; + /** + * The name of the record. + */ + name: string; + /** + * The Amazon EC2 Region of the resource that this resource record set refers to. + */ + region: string; + /** + * The resource records. + */ + resourceRecords: outputs.route53.GetRecordsResourceRecordSetResourceRecord[]; + /** + * An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + */ + setIdentifier: string; + /** + * The ID of any traffic policy instance that Route 53 created this resource record set for. + */ + trafficPolicyInstanceId: string; + /** + * The resource record cache time to live (TTL), in seconds. + */ + ttl: number; + /** + * The DNS record type. + */ + type: string; + /** + * Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + */ + weight: number; + } + + export interface GetRecordsResourceRecordSetAliasTarget { + /** + * Target DNS name. + */ + dnsName: string; + /** + * Whether an alias resource record set inherits the health of the referenced AWS resource. + */ + evaluateTargetHealth: boolean; + /** + * Target hosted zone ID. + */ + hostedZoneId: string; + } + + export interface GetRecordsResourceRecordSetCidrRoutingConfig { + /** + * The CIDR collection ID. + */ + collectionId: string; + /** + * The CIDR collection location name. + */ + locationName: string; + } + + export interface GetRecordsResourceRecordSetGeolocation { + /** + * The two-letter code for the continent. + */ + continentCode: string; + /** + * The two-letter code for a country. + */ + countryCode: string; + /** + * The two-letter code for a state of the United States. + */ + subdivisionCode: string; + } + + export interface GetRecordsResourceRecordSetGeoproximityLocation { + /** + * The AWS Region the resource you are directing DNS traffic to, is in. + */ + awsRegion: string; + /** + * The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + */ + bias: number; + /** + * Contains the longitude and latitude for a geographic region. + */ + coordinates: outputs.route53.GetRecordsResourceRecordSetGeoproximityLocationCoordinates; + /** + * An AWS Local Zone Group. + */ + localZoneGroup: string; + } + + export interface GetRecordsResourceRecordSetGeoproximityLocationCoordinates { + /** + * Latitude. + */ + latitude: string; + /** + * Longitude. + */ + longitude: string; + } + + export interface GetRecordsResourceRecordSetResourceRecord { + /** + * The DNS record value. + */ + value: string; + } + export interface GetResolverEndpointFilter { name: string; values: string[]; @@ -76798,6 +77151,20 @@ export namespace s3 { uri?: string; } + export interface ObjectCopyOverrideProvider { + /** + * Override the provider `defaultTags` configuration block. + */ + defaultTags?: outputs.s3.ObjectCopyOverrideProviderDefaultTags; + } + + export interface ObjectCopyOverrideProviderDefaultTags { + /** + * Map of tags to assign to the object. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: {[key: string]: string}; + } + } export namespace s3control { @@ -86138,7 +86505,7 @@ export namespace transfer { */ trustedHostKeys: string[]; /** - * Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + * Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. */ userSecretId: string; } @@ -87156,6 +87523,21 @@ export namespace vpclattice { prefix?: string; } + export interface ResourceGatewayTimeouts { + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + create?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + */ + delete?: string; + /** + * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + */ + update?: string; + } + export interface ServiceDnsEntry { domainName: string; hostedZoneId: string; diff --git a/sdk/nodejs/vpclattice/index.ts b/sdk/nodejs/vpclattice/index.ts index 6c3711e488b..626376c2a51 100644 --- a/sdk/nodejs/vpclattice/index.ts +++ b/sdk/nodejs/vpclattice/index.ts @@ -50,6 +50,11 @@ export type ListenerRule = import("./listenerRule").ListenerRule; export const ListenerRule: typeof import("./listenerRule").ListenerRule = null as any; utilities.lazyLoad(exports, ["ListenerRule"], () => require("./listenerRule")); +export { ResourceGatewayArgs, ResourceGatewayState } from "./resourceGateway"; +export type ResourceGateway = import("./resourceGateway").ResourceGateway; +export const ResourceGateway: typeof import("./resourceGateway").ResourceGateway = null as any; +utilities.lazyLoad(exports, ["ResourceGateway"], () => require("./resourceGateway")); + export { ResourcePolicyArgs, ResourcePolicyState } from "./resourcePolicy"; export type ResourcePolicy = import("./resourcePolicy").ResourcePolicy; export const ResourcePolicy: typeof import("./resourcePolicy").ResourcePolicy = null as any; @@ -98,6 +103,8 @@ const _module = { return new Listener(name, undefined, { urn }) case "aws:vpclattice/listenerRule:ListenerRule": return new ListenerRule(name, undefined, { urn }) + case "aws:vpclattice/resourceGateway:ResourceGateway": + return new ResourceGateway(name, undefined, { urn }) case "aws:vpclattice/resourcePolicy:ResourcePolicy": return new ResourcePolicy(name, undefined, { urn }) case "aws:vpclattice/service:Service": @@ -121,6 +128,7 @@ pulumi.runtime.registerResourceModule("aws", "vpclattice/accessLogSubscription", pulumi.runtime.registerResourceModule("aws", "vpclattice/authPolicy", _module) pulumi.runtime.registerResourceModule("aws", "vpclattice/listener", _module) pulumi.runtime.registerResourceModule("aws", "vpclattice/listenerRule", _module) +pulumi.runtime.registerResourceModule("aws", "vpclattice/resourceGateway", _module) pulumi.runtime.registerResourceModule("aws", "vpclattice/resourcePolicy", _module) pulumi.runtime.registerResourceModule("aws", "vpclattice/service", _module) pulumi.runtime.registerResourceModule("aws", "vpclattice/serviceNetwork", _module) diff --git a/sdk/nodejs/vpclattice/resourceGateway.ts b/sdk/nodejs/vpclattice/resourceGateway.ts new file mode 100644 index 00000000000..f85a2085ce1 --- /dev/null +++ b/sdk/nodejs/vpclattice/resourceGateway.ts @@ -0,0 +1,265 @@ +// *** 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"; + +/** + * Resource for managing an AWS VPC Lattice Resource Gateway. + * + * ## Example Usage + * + * ### Basic Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.vpclattice.ResourceGateway("example", { + * name: "Example", + * vpcId: exampleAwsVpc.id, + * subnetIds: [exampleAwsSubnet.id], + * tags: { + * Environment: "Example", + * }, + * }); + * ``` + * + * ### Specifying IP address type + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.vpclattice.ResourceGateway("example", { + * name: "Example", + * vpcId: exampleAwsVpc.id, + * subnetIds: [exampleAwsSubnet.id], + * ipAddressType: "DUALSTACK", + * tags: { + * Environment: "Example", + * }, + * }); + * ``` + * + * ### With security groups + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.vpclattice.ResourceGateway("example", { + * name: "Example", + * vpcId: exampleAwsVpc.id, + * securityGroupIds: [test.id], + * subnetIds: [exampleAwsSubnet.id], + * }); + * ``` + * + * ## Import + * + * Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: + * + * ```sh + * $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f + * ``` + */ +export class ResourceGateway extends pulumi.CustomResource { + /** + * Get an existing ResourceGateway 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?: ResourceGatewayState, opts?: pulumi.CustomResourceOptions): ResourceGateway { + return new ResourceGateway(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:vpclattice/resourceGateway:ResourceGateway'; + + /** + * Returns true if the given object is an instance of ResourceGateway. 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 ResourceGateway { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === ResourceGateway.__pulumiType; + } + + /** + * ARN of the resource gateway. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + */ + public readonly ipAddressType!: pulumi.Output; + /** + * Name of the resource gateway. + */ + public readonly name!: pulumi.Output; + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + */ + public readonly securityGroupIds!: pulumi.Output; + /** + * Status of the resource gateway. + */ + public /*out*/ readonly status!: pulumi.Output; + /** + * IDs of the VPC subnets in which to create the resource gateway. + */ + public readonly subnetIds!: pulumi.Output; + /** + * Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + public readonly tags!: pulumi.Output<{[key: string]: string} | undefined>; + /** + * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + public /*out*/ readonly tagsAll!: pulumi.Output<{[key: string]: string}>; + public readonly timeouts!: pulumi.Output; + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + */ + public readonly vpcId!: pulumi.Output; + + /** + * Create a ResourceGateway 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: ResourceGatewayArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: ResourceGatewayArgs | ResourceGatewayState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as ResourceGatewayState | undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["ipAddressType"] = state ? state.ipAddressType : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["securityGroupIds"] = state ? state.securityGroupIds : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["subnetIds"] = state ? state.subnetIds : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + resourceInputs["timeouts"] = state ? state.timeouts : undefined; + resourceInputs["vpcId"] = state ? state.vpcId : undefined; + } else { + const args = argsOrState as ResourceGatewayArgs | undefined; + if ((!args || args.subnetIds === undefined) && !opts.urn) { + throw new Error("Missing required property 'subnetIds'"); + } + if ((!args || args.vpcId === undefined) && !opts.urn) { + throw new Error("Missing required property 'vpcId'"); + } + resourceInputs["ipAddressType"] = args ? args.ipAddressType : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined; + resourceInputs["subnetIds"] = args ? args.subnetIds : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["timeouts"] = args ? args.timeouts : undefined; + resourceInputs["vpcId"] = args ? args.vpcId : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(ResourceGateway.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering ResourceGateway resources. + */ +export interface ResourceGatewayState { + /** + * ARN of the resource gateway. + */ + arn?: pulumi.Input; + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + */ + ipAddressType?: pulumi.Input; + /** + * Name of the resource gateway. + */ + name?: pulumi.Input; + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + */ + securityGroupIds?: pulumi.Input[]>; + /** + * Status of the resource gateway. + */ + status?: pulumi.Input; + /** + * IDs of the VPC subnets in which to create the resource gateway. + */ + subnetIds?: pulumi.Input[]>; + /** + * Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. + * + * @deprecated Please use `tags` instead. + */ + tagsAll?: pulumi.Input<{[key: string]: pulumi.Input}>; + timeouts?: pulumi.Input; + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + */ + vpcId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a ResourceGateway resource. + */ +export interface ResourceGatewayArgs { + /** + * IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + */ + ipAddressType?: pulumi.Input; + /** + * Name of the resource gateway. + */ + name?: pulumi.Input; + /** + * Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + */ + securityGroupIds?: pulumi.Input[]>; + /** + * IDs of the VPC subnets in which to create the resource gateway. + */ + subnetIds: pulumi.Input[]>; + /** + * Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + */ + tags?: pulumi.Input<{[key: string]: pulumi.Input}>; + timeouts?: pulumi.Input; + /** + * ID of the VPC for the resource gateway. + * + * The following arguments are optional: + */ + vpcId: pulumi.Input; +} diff --git a/sdk/python/pulumi_aws/__init__.py b/sdk/python/pulumi_aws/__init__.py index fefeedb1a9a..d4657258e37 100644 --- a/sdk/python/pulumi_aws/__init__.py +++ b/sdk/python/pulumi_aws/__init__.py @@ -1968,6 +1968,14 @@ "aws:bedrock/agentAgentAlias:AgentAgentAlias": "AgentAgentAlias" } }, + { + "pkg": "aws", + "mod": "bedrock/agentAgentCollaborator", + "fqn": "pulumi_aws.bedrock", + "classes": { + "aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator": "AgentAgentCollaborator" + } + }, { "pkg": "aws", "mod": "bedrock/agentAgentKnowledgeBaseAssociation", @@ -2288,6 +2296,14 @@ "aws:cleanrooms/configuredTable:ConfiguredTable": "ConfiguredTable" } }, + { + "pkg": "aws", + "mod": "cleanrooms/membership", + "fqn": "pulumi_aws.cleanrooms", + "classes": { + "aws:cleanrooms/membership:Membership": "Membership" + } + }, { "pkg": "aws", "mod": "cloud9/environmentEC2", @@ -2664,6 +2680,38 @@ "aws:cloudwatch/logDataProtectionPolicy:LogDataProtectionPolicy": "LogDataProtectionPolicy" } }, + { + "pkg": "aws", + "mod": "cloudwatch/logDelivery", + "fqn": "pulumi_aws.cloudwatch", + "classes": { + "aws:cloudwatch/logDelivery:LogDelivery": "LogDelivery" + } + }, + { + "pkg": "aws", + "mod": "cloudwatch/logDeliveryDestination", + "fqn": "pulumi_aws.cloudwatch", + "classes": { + "aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination": "LogDeliveryDestination" + } + }, + { + "pkg": "aws", + "mod": "cloudwatch/logDeliveryDestinationPolicy", + "fqn": "pulumi_aws.cloudwatch", + "classes": { + "aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy": "LogDeliveryDestinationPolicy" + } + }, + { + "pkg": "aws", + "mod": "cloudwatch/logDeliverySource", + "fqn": "pulumi_aws.cloudwatch", + "classes": { + "aws:cloudwatch/logDeliverySource:LogDeliverySource": "LogDeliverySource" + } + }, { "pkg": "aws", "mod": "cloudwatch/logDestination", @@ -2688,6 +2736,14 @@ "aws:cloudwatch/logGroup:LogGroup": "LogGroup" } }, + { + "pkg": "aws", + "mod": "cloudwatch/logIndexPolicy", + "fqn": "pulumi_aws.cloudwatch", + "classes": { + "aws:cloudwatch/logIndexPolicy:LogIndexPolicy": "LogIndexPolicy" + } + }, { "pkg": "aws", "mod": "cloudwatch/logMetricFilter", @@ -12088,6 +12144,14 @@ "aws:vpclattice/listenerRule:ListenerRule": "ListenerRule" } }, + { + "pkg": "aws", + "mod": "vpclattice/resourceGateway", + "fqn": "pulumi_aws.vpclattice", + "classes": { + "aws:vpclattice/resourceGateway:ResourceGateway": "ResourceGateway" + } + }, { "pkg": "aws", "mod": "vpclattice/resourcePolicy", diff --git a/sdk/python/pulumi_aws/appflow/_inputs.py b/sdk/python/pulumi_aws/appflow/_inputs.py index 4aaa8cedf42..7928b237366 100644 --- a/sdk/python/pulumi_aws/appflow/_inputs.py +++ b/sdk/python/pulumi_aws/appflow/_inputs.py @@ -6495,6 +6495,10 @@ def s3_input_file_type(self, value: Optional[pulumi.Input[str]]): if not MYPY: class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgsDict(TypedDict): object: pulumi.Input[str] + data_transfer_api: NotRequired[pulumi.Input[str]] + """ + Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + """ enable_dynamic_field_update: NotRequired[pulumi.Input[bool]] """ Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. @@ -6510,13 +6514,17 @@ class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgsDict(TypedDict) class FlowSourceFlowConfigSourceConnectorPropertiesSalesforceArgs: def __init__(__self__, *, object: pulumi.Input[str], + data_transfer_api: Optional[pulumi.Input[str]] = None, enable_dynamic_field_update: Optional[pulumi.Input[bool]] = None, include_deleted_records: Optional[pulumi.Input[bool]] = None): """ + :param pulumi.Input[str] data_transfer_api: Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. :param pulumi.Input[bool] enable_dynamic_field_update: Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. :param pulumi.Input[bool] include_deleted_records: Whether Amazon AppFlow includes deleted files in the flow run. """ pulumi.set(__self__, "object", object) + if data_transfer_api is not None: + pulumi.set(__self__, "data_transfer_api", data_transfer_api) if enable_dynamic_field_update is not None: pulumi.set(__self__, "enable_dynamic_field_update", enable_dynamic_field_update) if include_deleted_records is not None: @@ -6531,6 +6539,18 @@ def object(self) -> pulumi.Input[str]: def object(self, value: pulumi.Input[str]): pulumi.set(self, "object", value) + @property + @pulumi.getter(name="dataTransferApi") + def data_transfer_api(self) -> Optional[pulumi.Input[str]]: + """ + Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + """ + return pulumi.get(self, "data_transfer_api") + + @data_transfer_api.setter + def data_transfer_api(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_transfer_api", value) + @property @pulumi.getter(name="enableDynamicFieldUpdate") def enable_dynamic_field_update(self) -> Optional[pulumi.Input[bool]]: diff --git a/sdk/python/pulumi_aws/appflow/outputs.py b/sdk/python/pulumi_aws/appflow/outputs.py index 270ae68bef5..3bbf817d061 100644 --- a/sdk/python/pulumi_aws/appflow/outputs.py +++ b/sdk/python/pulumi_aws/appflow/outputs.py @@ -5493,7 +5493,9 @@ class FlowSourceFlowConfigSourceConnectorPropertiesSalesforce(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "enableDynamicFieldUpdate": + if key == "dataTransferApi": + suggest = "data_transfer_api" + elif key == "enableDynamicFieldUpdate": suggest = "enable_dynamic_field_update" elif key == "includeDeletedRecords": suggest = "include_deleted_records" @@ -5511,13 +5513,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, object: str, + data_transfer_api: Optional[str] = None, enable_dynamic_field_update: Optional[bool] = None, include_deleted_records: Optional[bool] = None): """ + :param str data_transfer_api: Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. :param bool enable_dynamic_field_update: Flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow. :param bool include_deleted_records: Whether Amazon AppFlow includes deleted files in the flow run. """ pulumi.set(__self__, "object", object) + if data_transfer_api is not None: + pulumi.set(__self__, "data_transfer_api", data_transfer_api) if enable_dynamic_field_update is not None: pulumi.set(__self__, "enable_dynamic_field_update", enable_dynamic_field_update) if include_deleted_records is not None: @@ -5528,6 +5534,14 @@ def __init__(__self__, *, def object(self) -> str: return pulumi.get(self, "object") + @property + @pulumi.getter(name="dataTransferApi") + def data_transfer_api(self) -> Optional[str]: + """ + Specifies which Salesforce API is used by Amazon AppFlow when your flow transfers data to Salesforce. + """ + return pulumi.get(self, "data_transfer_api") + @property @pulumi.getter(name="enableDynamicFieldUpdate") def enable_dynamic_field_update(self) -> Optional[bool]: diff --git a/sdk/python/pulumi_aws/batch/_inputs.py b/sdk/python/pulumi_aws/batch/_inputs.py index 46c26aa2c8b..f031597ade0 100644 --- a/sdk/python/pulumi_aws/batch/_inputs.py +++ b/sdk/python/pulumi_aws/batch/_inputs.py @@ -2189,9 +2189,11 @@ class JobQueueJobStateTimeLimitActionArgsDict(TypedDict): action: pulumi.Input[str] """ The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` """ max_time_seconds: pulumi.Input[int] + """ + The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + """ reason: pulumi.Input[str] """ The reason to log for the action being taken. @@ -2212,7 +2214,7 @@ def __init__(__self__, *, state: pulumi.Input[str]): """ :param pulumi.Input[str] action: The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + :param pulumi.Input[int] max_time_seconds: The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` :param pulumi.Input[str] reason: The reason to log for the action being taken. :param pulumi.Input[str] state: The state of the job needed to trigger the action. Valid values include `"RUNNABLE"`. """ @@ -2226,7 +2228,6 @@ def __init__(__self__, *, def action(self) -> pulumi.Input[str]: """ The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` """ return pulumi.get(self, "action") @@ -2237,6 +2238,9 @@ def action(self, value: pulumi.Input[str]): @property @pulumi.getter(name="maxTimeSeconds") def max_time_seconds(self) -> pulumi.Input[int]: + """ + The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + """ return pulumi.get(self, "max_time_seconds") @max_time_seconds.setter diff --git a/sdk/python/pulumi_aws/batch/outputs.py b/sdk/python/pulumi_aws/batch/outputs.py index 3327440c42b..d8934e6c251 100644 --- a/sdk/python/pulumi_aws/batch/outputs.py +++ b/sdk/python/pulumi_aws/batch/outputs.py @@ -1783,7 +1783,7 @@ def __init__(__self__, *, state: str): """ :param str action: The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + :param int max_time_seconds: The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` :param str reason: The reason to log for the action being taken. :param str state: The state of the job needed to trigger the action. Valid values include `"RUNNABLE"`. """ @@ -1797,13 +1797,15 @@ def __init__(__self__, *, def action(self) -> str: """ The action to take when a job is at the head of the job queue in the specified state for the specified period of time. Valid values include `"CANCEL"` - * `job_state_time_limit_action.#.max_time_seconds` - The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` """ return pulumi.get(self, "action") @property @pulumi.getter(name="maxTimeSeconds") def max_time_seconds(self) -> int: + """ + The approximate amount of time, in seconds, that must pass with the job in the specified state before the action is taken. Valid values include integers between `600` & `86400` + """ return pulumi.get(self, "max_time_seconds") @property diff --git a/sdk/python/pulumi_aws/bedrock/__init__.py b/sdk/python/pulumi_aws/bedrock/__init__.py index c5494a6d141..dc6de27f641 100644 --- a/sdk/python/pulumi_aws/bedrock/__init__.py +++ b/sdk/python/pulumi_aws/bedrock/__init__.py @@ -8,6 +8,7 @@ from .agent_agent import * from .agent_agent_action_group import * from .agent_agent_alias import * +from .agent_agent_collaborator import * from .agent_agent_knowledge_base_association import * from .agent_data_source import * from .agent_knowledge_base import * diff --git a/sdk/python/pulumi_aws/bedrock/_inputs.py b/sdk/python/pulumi_aws/bedrock/_inputs.py index 7ef1c9ae229..1b75f38219b 100644 --- a/sdk/python/pulumi_aws/bedrock/_inputs.py +++ b/sdk/python/pulumi_aws/bedrock/_inputs.py @@ -35,6 +35,10 @@ 'AgentAgentAliasRoutingConfigurationArgsDict', 'AgentAgentAliasTimeoutsArgs', 'AgentAgentAliasTimeoutsArgsDict', + 'AgentAgentCollaboratorAgentDescriptorArgs', + 'AgentAgentCollaboratorAgentDescriptorArgsDict', + 'AgentAgentCollaboratorTimeoutsArgs', + 'AgentAgentCollaboratorTimeoutsArgsDict', 'AgentAgentGuardrailConfigurationArgs', 'AgentAgentGuardrailConfigurationArgsDict', 'AgentAgentKnowledgeBaseAssociationTimeoutsArgs', @@ -751,6 +755,109 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +if not MYPY: + class AgentAgentCollaboratorAgentDescriptorArgsDict(TypedDict): + alias_arn: pulumi.Input[str] + """ + ARN of the Alias of an Agent to use as the collaborator. + """ +elif False: + AgentAgentCollaboratorAgentDescriptorArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AgentAgentCollaboratorAgentDescriptorArgs: + def __init__(__self__, *, + alias_arn: pulumi.Input[str]): + """ + :param pulumi.Input[str] alias_arn: ARN of the Alias of an Agent to use as the collaborator. + """ + pulumi.set(__self__, "alias_arn", alias_arn) + + @property + @pulumi.getter(name="aliasArn") + def alias_arn(self) -> pulumi.Input[str]: + """ + ARN of the Alias of an Agent to use as the collaborator. + """ + return pulumi.get(self, "alias_arn") + + @alias_arn.setter + def alias_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "alias_arn", value) + + +if not MYPY: + class AgentAgentCollaboratorTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + AgentAgentCollaboratorTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class AgentAgentCollaboratorTimeoutsArgs: + def __init__(__self__, *, + create: Optional[pulumi.Input[str]] = None, + delete: Optional[pulumi.Input[str]] = None, + update: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param pulumi.Input[str] delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param pulumi.Input[str] update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @create.setter + def create(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "create", value) + + @property + @pulumi.getter + def delete(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @delete.setter + def delete(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delete", value) + + @property + @pulumi.getter + def update(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @update.setter + def update(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "update", value) + + if not MYPY: class AgentAgentGuardrailConfigurationArgsDict(TypedDict): guardrail_identifier: pulumi.Input[str] diff --git a/sdk/python/pulumi_aws/bedrock/agent_agent_collaborator.py b/sdk/python/pulumi_aws/bedrock/agent_agent_collaborator.py new file mode 100644 index 00000000000..bfad6653742 --- /dev/null +++ b/sdk/python/pulumi_aws/bedrock/agent_agent_collaborator.py @@ -0,0 +1,636 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['AgentAgentCollaboratorArgs', 'AgentAgentCollaborator'] + +@pulumi.input_type +class AgentAgentCollaboratorArgs: + def __init__(__self__, *, + agent_id: pulumi.Input[str], + collaboration_instruction: pulumi.Input[str], + collaborator_name: pulumi.Input[str], + agent_descriptor: Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']] = None, + agent_version: Optional[pulumi.Input[str]] = None, + prepare_agent: Optional[pulumi.Input[bool]] = None, + relay_conversation_history: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']] = None): + """ + The set of arguments for constructing a AgentAgentCollaborator resource. + :param pulumi.Input[str] agent_id: ID if the agent to associate the collaborator. + :param pulumi.Input[str] collaboration_instruction: Instruction to give the collaborator. + :param pulumi.Input[bool] prepare_agent: Whether to prepare the agent after creation or modification. Defaults to `true`. + :param pulumi.Input[str] relay_conversation_history: Configure relaying the history to the collaborator. + """ + pulumi.set(__self__, "agent_id", agent_id) + pulumi.set(__self__, "collaboration_instruction", collaboration_instruction) + pulumi.set(__self__, "collaborator_name", collaborator_name) + if agent_descriptor is not None: + pulumi.set(__self__, "agent_descriptor", agent_descriptor) + if agent_version is not None: + pulumi.set(__self__, "agent_version", agent_version) + if prepare_agent is not None: + pulumi.set(__self__, "prepare_agent", prepare_agent) + if relay_conversation_history is not None: + pulumi.set(__self__, "relay_conversation_history", relay_conversation_history) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="agentId") + def agent_id(self) -> pulumi.Input[str]: + """ + ID if the agent to associate the collaborator. + """ + return pulumi.get(self, "agent_id") + + @agent_id.setter + def agent_id(self, value: pulumi.Input[str]): + pulumi.set(self, "agent_id", value) + + @property + @pulumi.getter(name="collaborationInstruction") + def collaboration_instruction(self) -> pulumi.Input[str]: + """ + Instruction to give the collaborator. + """ + return pulumi.get(self, "collaboration_instruction") + + @collaboration_instruction.setter + def collaboration_instruction(self, value: pulumi.Input[str]): + pulumi.set(self, "collaboration_instruction", value) + + @property + @pulumi.getter(name="collaboratorName") + def collaborator_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "collaborator_name") + + @collaborator_name.setter + def collaborator_name(self, value: pulumi.Input[str]): + pulumi.set(self, "collaborator_name", value) + + @property + @pulumi.getter(name="agentDescriptor") + def agent_descriptor(self) -> Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']]: + return pulumi.get(self, "agent_descriptor") + + @agent_descriptor.setter + def agent_descriptor(self, value: Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']]): + pulumi.set(self, "agent_descriptor", value) + + @property + @pulumi.getter(name="agentVersion") + def agent_version(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "agent_version") + + @agent_version.setter + def agent_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "agent_version", value) + + @property + @pulumi.getter(name="prepareAgent") + def prepare_agent(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to prepare the agent after creation or modification. Defaults to `true`. + """ + return pulumi.get(self, "prepare_agent") + + @prepare_agent.setter + def prepare_agent(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "prepare_agent", value) + + @property + @pulumi.getter(name="relayConversationHistory") + def relay_conversation_history(self) -> Optional[pulumi.Input[str]]: + """ + Configure relaying the history to the collaborator. + """ + return pulumi.get(self, "relay_conversation_history") + + @relay_conversation_history.setter + def relay_conversation_history(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "relay_conversation_history", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +@pulumi.input_type +class _AgentAgentCollaboratorState: + def __init__(__self__, *, + agent_descriptor: Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']] = None, + agent_id: Optional[pulumi.Input[str]] = None, + agent_version: Optional[pulumi.Input[str]] = None, + collaboration_instruction: Optional[pulumi.Input[str]] = None, + collaborator_id: Optional[pulumi.Input[str]] = None, + collaborator_name: Optional[pulumi.Input[str]] = None, + prepare_agent: Optional[pulumi.Input[bool]] = None, + relay_conversation_history: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']] = None): + """ + Input properties used for looking up and filtering AgentAgentCollaborator resources. + :param pulumi.Input[str] agent_id: ID if the agent to associate the collaborator. + :param pulumi.Input[str] collaboration_instruction: Instruction to give the collaborator. + :param pulumi.Input[str] collaborator_id: ID of the Agent Collaborator. + :param pulumi.Input[bool] prepare_agent: Whether to prepare the agent after creation or modification. Defaults to `true`. + :param pulumi.Input[str] relay_conversation_history: Configure relaying the history to the collaborator. + """ + if agent_descriptor is not None: + pulumi.set(__self__, "agent_descriptor", agent_descriptor) + if agent_id is not None: + pulumi.set(__self__, "agent_id", agent_id) + if agent_version is not None: + pulumi.set(__self__, "agent_version", agent_version) + if collaboration_instruction is not None: + pulumi.set(__self__, "collaboration_instruction", collaboration_instruction) + if collaborator_id is not None: + pulumi.set(__self__, "collaborator_id", collaborator_id) + if collaborator_name is not None: + pulumi.set(__self__, "collaborator_name", collaborator_name) + if prepare_agent is not None: + pulumi.set(__self__, "prepare_agent", prepare_agent) + if relay_conversation_history is not None: + pulumi.set(__self__, "relay_conversation_history", relay_conversation_history) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="agentDescriptor") + def agent_descriptor(self) -> Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']]: + return pulumi.get(self, "agent_descriptor") + + @agent_descriptor.setter + def agent_descriptor(self, value: Optional[pulumi.Input['AgentAgentCollaboratorAgentDescriptorArgs']]): + pulumi.set(self, "agent_descriptor", value) + + @property + @pulumi.getter(name="agentId") + def agent_id(self) -> Optional[pulumi.Input[str]]: + """ + ID if the agent to associate the collaborator. + """ + return pulumi.get(self, "agent_id") + + @agent_id.setter + def agent_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "agent_id", value) + + @property + @pulumi.getter(name="agentVersion") + def agent_version(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "agent_version") + + @agent_version.setter + def agent_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "agent_version", value) + + @property + @pulumi.getter(name="collaborationInstruction") + def collaboration_instruction(self) -> Optional[pulumi.Input[str]]: + """ + Instruction to give the collaborator. + """ + return pulumi.get(self, "collaboration_instruction") + + @collaboration_instruction.setter + def collaboration_instruction(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_instruction", value) + + @property + @pulumi.getter(name="collaboratorId") + def collaborator_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the Agent Collaborator. + """ + return pulumi.get(self, "collaborator_id") + + @collaborator_id.setter + def collaborator_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaborator_id", value) + + @property + @pulumi.getter(name="collaboratorName") + def collaborator_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "collaborator_name") + + @collaborator_name.setter + def collaborator_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaborator_name", value) + + @property + @pulumi.getter(name="prepareAgent") + def prepare_agent(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to prepare the agent after creation or modification. Defaults to `true`. + """ + return pulumi.get(self, "prepare_agent") + + @prepare_agent.setter + def prepare_agent(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "prepare_agent", value) + + @property + @pulumi.getter(name="relayConversationHistory") + def relay_conversation_history(self) -> Optional[pulumi.Input[str]]: + """ + Configure relaying the history to the collaborator. + """ + return pulumi.get(self, "relay_conversation_history") + + @relay_conversation_history.setter + def relay_conversation_history(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "relay_conversation_history", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['AgentAgentCollaboratorTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +class AgentAgentCollaborator(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + agent_descriptor: Optional[pulumi.Input[Union['AgentAgentCollaboratorAgentDescriptorArgs', 'AgentAgentCollaboratorAgentDescriptorArgsDict']]] = None, + agent_id: Optional[pulumi.Input[str]] = None, + agent_version: Optional[pulumi.Input[str]] = None, + collaboration_instruction: Optional[pulumi.Input[str]] = None, + collaborator_name: Optional[pulumi.Input[str]] = None, + prepare_agent: Optional[pulumi.Input[bool]] = None, + relay_conversation_history: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['AgentAgentCollaboratorTimeoutsArgs', 'AgentAgentCollaboratorTimeoutsArgsDict']]] = None, + __props__=None): + """ + Resource for managing an AWS Bedrock Agents Agent Collaborator. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + current = aws.get_caller_identity() + current_get_partition = aws.get_partition() + current_get_region = aws.get_region() + example_agent_trust = aws.iam.get_policy_document(statements=[{ + "actions": ["sts:AssumeRole"], + "principals": [{ + "identifiers": ["bedrock.amazonaws.com"], + "type": "Service", + }], + "conditions": [ + { + "test": "StringEquals", + "values": [current.account_id], + "variable": "aws:SourceAccount", + }, + { + "test": "ArnLike", + "values": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}:{current.account_id}:agent/*"], + "variable": "AWS:SourceArn", + }, + ], + }]) + example_agent_permissions = aws.iam.get_policy_document(statements=[ + { + "actions": ["bedrock:InvokeModel"], + "resources": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0"], + }, + { + "actions": [ + "bedrock:GetAgentAlias", + "bedrock:InvokeAgent", + ], + "resources": [ + f"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent/*", + f"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent-alias/*", + ], + }, + ]) + example = aws.iam.Role("example", + assume_role_policy=example_agent_trust.json, + name_prefix="AmazonBedrockExecutionRoleForAgents_") + example_role_policy = aws.iam.RolePolicy("example", + policy=example_agent_permissions.json, + role=example.id) + example_collaborator = aws.bedrock.AgentAgent("example_collaborator", + agent_name="my-agent-collaborator", + agent_resource_role_arn=example.arn, + idle_session_ttl_in_seconds=500, + foundation_model="anthropic.claude-3-5-sonnet-20241022-v2:0", + instruction="do what the supervisor tells you to do") + example_supervisor = aws.bedrock.AgentAgent("example_supervisor", + agent_name="my-agent-supervisor", + agent_resource_role_arn=example.arn, + agent_collaboration="SUPERVISOR", + idle_session_ttl_in_seconds=500, + foundation_model="anthropic.claude-3-5-sonnet-20241022-v2:0", + instruction="tell the sub agent what to do", + prepare_agent=False) + example_agent_agent_alias = aws.bedrock.AgentAgentAlias("example", + agent_alias_name="my-agent-alias", + agent_id=example_collaborator.agent_id, + description="Test Alias") + example_agent_agent_collaborator = aws.bedrock.AgentAgentCollaborator("example", + agent_id=example_supervisor.agent_id, + collaboration_instruction="tell the other agent what to do", + collaborator_name="my-collab-example", + relay_conversation_history="TO_COLLABORATOR", + agent_descriptor={ + "alias_arn": example_agent_agent_alias.agent_alias_arn, + }) + ``` + + ## Import + + Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: + + ```sh + $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] agent_id: ID if the agent to associate the collaborator. + :param pulumi.Input[str] collaboration_instruction: Instruction to give the collaborator. + :param pulumi.Input[bool] prepare_agent: Whether to prepare the agent after creation or modification. Defaults to `true`. + :param pulumi.Input[str] relay_conversation_history: Configure relaying the history to the collaborator. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: AgentAgentCollaboratorArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS Bedrock Agents Agent Collaborator. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + current = aws.get_caller_identity() + current_get_partition = aws.get_partition() + current_get_region = aws.get_region() + example_agent_trust = aws.iam.get_policy_document(statements=[{ + "actions": ["sts:AssumeRole"], + "principals": [{ + "identifiers": ["bedrock.amazonaws.com"], + "type": "Service", + }], + "conditions": [ + { + "test": "StringEquals", + "values": [current.account_id], + "variable": "aws:SourceAccount", + }, + { + "test": "ArnLike", + "values": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}:{current.account_id}:agent/*"], + "variable": "AWS:SourceArn", + }, + ], + }]) + example_agent_permissions = aws.iam.get_policy_document(statements=[ + { + "actions": ["bedrock:InvokeModel"], + "resources": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}::foundation-model/anthropic.claude-3-5-sonnet-20241022-v2:0"], + }, + { + "actions": [ + "bedrock:GetAgentAlias", + "bedrock:InvokeAgent", + ], + "resources": [ + f"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent/*", + f"arn:{current_agent['partition']}:bedrock:{current_get_region.name}:{current.account_id}:agent-alias/*", + ], + }, + ]) + example = aws.iam.Role("example", + assume_role_policy=example_agent_trust.json, + name_prefix="AmazonBedrockExecutionRoleForAgents_") + example_role_policy = aws.iam.RolePolicy("example", + policy=example_agent_permissions.json, + role=example.id) + example_collaborator = aws.bedrock.AgentAgent("example_collaborator", + agent_name="my-agent-collaborator", + agent_resource_role_arn=example.arn, + idle_session_ttl_in_seconds=500, + foundation_model="anthropic.claude-3-5-sonnet-20241022-v2:0", + instruction="do what the supervisor tells you to do") + example_supervisor = aws.bedrock.AgentAgent("example_supervisor", + agent_name="my-agent-supervisor", + agent_resource_role_arn=example.arn, + agent_collaboration="SUPERVISOR", + idle_session_ttl_in_seconds=500, + foundation_model="anthropic.claude-3-5-sonnet-20241022-v2:0", + instruction="tell the sub agent what to do", + prepare_agent=False) + example_agent_agent_alias = aws.bedrock.AgentAgentAlias("example", + agent_alias_name="my-agent-alias", + agent_id=example_collaborator.agent_id, + description="Test Alias") + example_agent_agent_collaborator = aws.bedrock.AgentAgentCollaborator("example", + agent_id=example_supervisor.agent_id, + collaboration_instruction="tell the other agent what to do", + collaborator_name="my-collab-example", + relay_conversation_history="TO_COLLABORATOR", + agent_descriptor={ + "alias_arn": example_agent_agent_alias.agent_alias_arn, + }) + ``` + + ## Import + + Using `pulumi import`, import Bedrock Agents Agent Collaborator using a comma-delimited string combining `agent_id`, `agent_version`, and `collaborator_id`. For example: + + ```sh + $ pulumi import aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator example 9LSJO0BFI8,DRAFT,AG3TN4RQIY + ``` + + :param str resource_name: The name of the resource. + :param AgentAgentCollaboratorArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(AgentAgentCollaboratorArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + agent_descriptor: Optional[pulumi.Input[Union['AgentAgentCollaboratorAgentDescriptorArgs', 'AgentAgentCollaboratorAgentDescriptorArgsDict']]] = None, + agent_id: Optional[pulumi.Input[str]] = None, + agent_version: Optional[pulumi.Input[str]] = None, + collaboration_instruction: Optional[pulumi.Input[str]] = None, + collaborator_name: Optional[pulumi.Input[str]] = None, + prepare_agent: Optional[pulumi.Input[bool]] = None, + relay_conversation_history: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['AgentAgentCollaboratorTimeoutsArgs', 'AgentAgentCollaboratorTimeoutsArgsDict']]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = AgentAgentCollaboratorArgs.__new__(AgentAgentCollaboratorArgs) + + __props__.__dict__["agent_descriptor"] = agent_descriptor + if agent_id is None and not opts.urn: + raise TypeError("Missing required property 'agent_id'") + __props__.__dict__["agent_id"] = agent_id + __props__.__dict__["agent_version"] = agent_version + if collaboration_instruction is None and not opts.urn: + raise TypeError("Missing required property 'collaboration_instruction'") + __props__.__dict__["collaboration_instruction"] = collaboration_instruction + if collaborator_name is None and not opts.urn: + raise TypeError("Missing required property 'collaborator_name'") + __props__.__dict__["collaborator_name"] = collaborator_name + __props__.__dict__["prepare_agent"] = prepare_agent + __props__.__dict__["relay_conversation_history"] = relay_conversation_history + __props__.__dict__["timeouts"] = timeouts + __props__.__dict__["collaborator_id"] = None + super(AgentAgentCollaborator, __self__).__init__( + 'aws:bedrock/agentAgentCollaborator:AgentAgentCollaborator', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + agent_descriptor: Optional[pulumi.Input[Union['AgentAgentCollaboratorAgentDescriptorArgs', 'AgentAgentCollaboratorAgentDescriptorArgsDict']]] = None, + agent_id: Optional[pulumi.Input[str]] = None, + agent_version: Optional[pulumi.Input[str]] = None, + collaboration_instruction: Optional[pulumi.Input[str]] = None, + collaborator_id: Optional[pulumi.Input[str]] = None, + collaborator_name: Optional[pulumi.Input[str]] = None, + prepare_agent: Optional[pulumi.Input[bool]] = None, + relay_conversation_history: Optional[pulumi.Input[str]] = None, + timeouts: Optional[pulumi.Input[Union['AgentAgentCollaboratorTimeoutsArgs', 'AgentAgentCollaboratorTimeoutsArgsDict']]] = None) -> 'AgentAgentCollaborator': + """ + Get an existing AgentAgentCollaborator 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[str] agent_id: ID if the agent to associate the collaborator. + :param pulumi.Input[str] collaboration_instruction: Instruction to give the collaborator. + :param pulumi.Input[str] collaborator_id: ID of the Agent Collaborator. + :param pulumi.Input[bool] prepare_agent: Whether to prepare the agent after creation or modification. Defaults to `true`. + :param pulumi.Input[str] relay_conversation_history: Configure relaying the history to the collaborator. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _AgentAgentCollaboratorState.__new__(_AgentAgentCollaboratorState) + + __props__.__dict__["agent_descriptor"] = agent_descriptor + __props__.__dict__["agent_id"] = agent_id + __props__.__dict__["agent_version"] = agent_version + __props__.__dict__["collaboration_instruction"] = collaboration_instruction + __props__.__dict__["collaborator_id"] = collaborator_id + __props__.__dict__["collaborator_name"] = collaborator_name + __props__.__dict__["prepare_agent"] = prepare_agent + __props__.__dict__["relay_conversation_history"] = relay_conversation_history + __props__.__dict__["timeouts"] = timeouts + return AgentAgentCollaborator(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="agentDescriptor") + def agent_descriptor(self) -> pulumi.Output[Optional['outputs.AgentAgentCollaboratorAgentDescriptor']]: + return pulumi.get(self, "agent_descriptor") + + @property + @pulumi.getter(name="agentId") + def agent_id(self) -> pulumi.Output[str]: + """ + ID if the agent to associate the collaborator. + """ + return pulumi.get(self, "agent_id") + + @property + @pulumi.getter(name="agentVersion") + def agent_version(self) -> pulumi.Output[str]: + return pulumi.get(self, "agent_version") + + @property + @pulumi.getter(name="collaborationInstruction") + def collaboration_instruction(self) -> pulumi.Output[str]: + """ + Instruction to give the collaborator. + """ + return pulumi.get(self, "collaboration_instruction") + + @property + @pulumi.getter(name="collaboratorId") + def collaborator_id(self) -> pulumi.Output[str]: + """ + ID of the Agent Collaborator. + """ + return pulumi.get(self, "collaborator_id") + + @property + @pulumi.getter(name="collaboratorName") + def collaborator_name(self) -> pulumi.Output[str]: + return pulumi.get(self, "collaborator_name") + + @property + @pulumi.getter(name="prepareAgent") + def prepare_agent(self) -> pulumi.Output[bool]: + """ + Whether to prepare the agent after creation or modification. Defaults to `true`. + """ + return pulumi.get(self, "prepare_agent") + + @property + @pulumi.getter(name="relayConversationHistory") + def relay_conversation_history(self) -> pulumi.Output[str]: + """ + Configure relaying the history to the collaborator. + """ + return pulumi.get(self, "relay_conversation_history") + + @property + @pulumi.getter + def timeouts(self) -> pulumi.Output[Optional['outputs.AgentAgentCollaboratorTimeouts']]: + return pulumi.get(self, "timeouts") + diff --git a/sdk/python/pulumi_aws/bedrock/outputs.py b/sdk/python/pulumi_aws/bedrock/outputs.py index baa1bc2593e..c5deb936109 100644 --- a/sdk/python/pulumi_aws/bedrock/outputs.py +++ b/sdk/python/pulumi_aws/bedrock/outputs.py @@ -26,6 +26,8 @@ 'AgentAgentActionGroupTimeouts', 'AgentAgentAliasRoutingConfiguration', 'AgentAgentAliasTimeouts', + 'AgentAgentCollaboratorAgentDescriptor', + 'AgentAgentCollaboratorTimeouts', 'AgentAgentGuardrailConfiguration', 'AgentAgentKnowledgeBaseAssociationTimeouts', 'AgentAgentPromptOverrideConfiguration', @@ -541,6 +543,84 @@ def update(self) -> Optional[str]: return pulumi.get(self, "update") +@pulumi.output_type +class AgentAgentCollaboratorAgentDescriptor(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "aliasArn": + suggest = "alias_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AgentAgentCollaboratorAgentDescriptor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AgentAgentCollaboratorAgentDescriptor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AgentAgentCollaboratorAgentDescriptor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + alias_arn: str): + """ + :param str alias_arn: ARN of the Alias of an Agent to use as the collaborator. + """ + pulumi.set(__self__, "alias_arn", alias_arn) + + @property + @pulumi.getter(name="aliasArn") + def alias_arn(self) -> str: + """ + ARN of the Alias of an Agent to use as the collaborator. + """ + return pulumi.get(self, "alias_arn") + + +@pulumi.output_type +class AgentAgentCollaboratorTimeouts(dict): + def __init__(__self__, *, + create: Optional[str] = None, + delete: Optional[str] = None, + update: Optional[str] = None): + """ + :param str create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param str delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param str update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @property + @pulumi.getter + def delete(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @property + @pulumi.getter + def update(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @pulumi.output_type class AgentAgentGuardrailConfiguration(dict): @staticmethod diff --git a/sdk/python/pulumi_aws/cleanrooms/__init__.py b/sdk/python/pulumi_aws/cleanrooms/__init__.py index 419b8904eb3..c5a803c8da2 100644 --- a/sdk/python/pulumi_aws/cleanrooms/__init__.py +++ b/sdk/python/pulumi_aws/cleanrooms/__init__.py @@ -7,5 +7,6 @@ # Export this package's modules as members: from .collaboration import * from .configured_table import * +from .membership import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws/cleanrooms/_inputs.py b/sdk/python/pulumi_aws/cleanrooms/_inputs.py index 3f972db27e2..188e231ba64 100644 --- a/sdk/python/pulumi_aws/cleanrooms/_inputs.py +++ b/sdk/python/pulumi_aws/cleanrooms/_inputs.py @@ -21,6 +21,16 @@ 'CollaborationMemberArgsDict', 'ConfiguredTableTableReferenceArgs', 'ConfiguredTableTableReferenceArgsDict', + 'MembershipDefaultResultConfigurationArgs', + 'MembershipDefaultResultConfigurationArgsDict', + 'MembershipDefaultResultConfigurationOutputConfigurationArgs', + 'MembershipDefaultResultConfigurationOutputConfigurationArgsDict', + 'MembershipDefaultResultConfigurationOutputConfigurationS3Args', + 'MembershipDefaultResultConfigurationOutputConfigurationS3ArgsDict', + 'MembershipPaymentConfigurationArgs', + 'MembershipPaymentConfigurationArgsDict', + 'MembershipPaymentConfigurationQueryComputeArgs', + 'MembershipPaymentConfigurationQueryComputeArgsDict', ] MYPY = False @@ -176,3 +186,181 @@ def table_name(self, value: pulumi.Input[str]): pulumi.set(self, "table_name", value) +if not MYPY: + class MembershipDefaultResultConfigurationArgsDict(TypedDict): + output_configuration: NotRequired[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationArgsDict']] + role_arn: NotRequired[pulumi.Input[str]] + """ + The ARN of the IAM role which will be used to create the membership. + - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + """ +elif False: + MembershipDefaultResultConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class MembershipDefaultResultConfigurationArgs: + def __init__(__self__, *, + output_configuration: Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationArgs']] = None, + role_arn: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] role_arn: The ARN of the IAM role which will be used to create the membership. + - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + """ + if output_configuration is not None: + pulumi.set(__self__, "output_configuration", output_configuration) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) + + @property + @pulumi.getter(name="outputConfiguration") + def output_configuration(self) -> Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationArgs']]: + return pulumi.get(self, "output_configuration") + + @output_configuration.setter + def output_configuration(self, value: Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationArgs']]): + pulumi.set(self, "output_configuration", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the IAM role which will be used to create the membership. + - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) + + +if not MYPY: + class MembershipDefaultResultConfigurationOutputConfigurationArgsDict(TypedDict): + s3: NotRequired[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationS3ArgsDict']] +elif False: + MembershipDefaultResultConfigurationOutputConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class MembershipDefaultResultConfigurationOutputConfigurationArgs: + def __init__(__self__, *, + s3: Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationS3Args']] = None): + if s3 is not None: + pulumi.set(__self__, "s3", s3) + + @property + @pulumi.getter + def s3(self) -> Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationS3Args']]: + return pulumi.get(self, "s3") + + @s3.setter + def s3(self, value: Optional[pulumi.Input['MembershipDefaultResultConfigurationOutputConfigurationS3Args']]): + pulumi.set(self, "s3", value) + + +if not MYPY: + class MembershipDefaultResultConfigurationOutputConfigurationS3ArgsDict(TypedDict): + bucket: pulumi.Input[str] + result_format: pulumi.Input[str] + key_prefix: NotRequired[pulumi.Input[str]] +elif False: + MembershipDefaultResultConfigurationOutputConfigurationS3ArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class MembershipDefaultResultConfigurationOutputConfigurationS3Args: + def __init__(__self__, *, + bucket: pulumi.Input[str], + result_format: pulumi.Input[str], + key_prefix: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "bucket", bucket) + pulumi.set(__self__, "result_format", result_format) + if key_prefix is not None: + pulumi.set(__self__, "key_prefix", key_prefix) + + @property + @pulumi.getter + def bucket(self) -> pulumi.Input[str]: + return pulumi.get(self, "bucket") + + @bucket.setter + def bucket(self, value: pulumi.Input[str]): + pulumi.set(self, "bucket", value) + + @property + @pulumi.getter(name="resultFormat") + def result_format(self) -> pulumi.Input[str]: + return pulumi.get(self, "result_format") + + @result_format.setter + def result_format(self, value: pulumi.Input[str]): + pulumi.set(self, "result_format", value) + + @property + @pulumi.getter(name="keyPrefix") + def key_prefix(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "key_prefix") + + @key_prefix.setter + def key_prefix(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "key_prefix", value) + + +if not MYPY: + class MembershipPaymentConfigurationArgsDict(TypedDict): + query_compute: NotRequired[pulumi.Input['MembershipPaymentConfigurationQueryComputeArgsDict']] +elif False: + MembershipPaymentConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class MembershipPaymentConfigurationArgs: + def __init__(__self__, *, + query_compute: Optional[pulumi.Input['MembershipPaymentConfigurationQueryComputeArgs']] = None): + if query_compute is not None: + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> Optional[pulumi.Input['MembershipPaymentConfigurationQueryComputeArgs']]: + return pulumi.get(self, "query_compute") + + @query_compute.setter + def query_compute(self, value: Optional[pulumi.Input['MembershipPaymentConfigurationQueryComputeArgs']]): + pulumi.set(self, "query_compute", value) + + +if not MYPY: + class MembershipPaymentConfigurationQueryComputeArgsDict(TypedDict): + is_responsible: pulumi.Input[bool] + """ + Indicates whether the collaboration member has accepted to pay for query compute costs. + """ +elif False: + MembershipPaymentConfigurationQueryComputeArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class MembershipPaymentConfigurationQueryComputeArgs: + def __init__(__self__, *, + is_responsible: pulumi.Input[bool]): + """ + :param pulumi.Input[bool] is_responsible: Indicates whether the collaboration member has accepted to pay for query compute costs. + """ + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> pulumi.Input[bool]: + """ + Indicates whether the collaboration member has accepted to pay for query compute costs. + """ + return pulumi.get(self, "is_responsible") + + @is_responsible.setter + def is_responsible(self, value: pulumi.Input[bool]): + pulumi.set(self, "is_responsible", value) + + diff --git a/sdk/python/pulumi_aws/cleanrooms/membership.py b/sdk/python/pulumi_aws/cleanrooms/membership.py new file mode 100644 index 00000000000..cb0d2d09151 --- /dev/null +++ b/sdk/python/pulumi_aws/cleanrooms/membership.py @@ -0,0 +1,674 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['MembershipArgs', 'Membership'] + +@pulumi.input_type +class MembershipArgs: + def __init__(__self__, *, + collaboration_id: pulumi.Input[str], + query_log_status: pulumi.Input[str], + default_result_configuration: Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']] = None, + payment_configuration: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a Membership resource. + :param pulumi.Input[str] collaboration_id: The ID of the collaboration to which the member was invited. + :param pulumi.Input[str] query_log_status: An indicator as to whether query logging has been enabled or disabled for the membership. + :param pulumi.Input['MembershipDefaultResultConfigurationArgs'] default_result_configuration: The default configuration for a query result. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key value pairs which tag the membership. + """ + pulumi.set(__self__, "collaboration_id", collaboration_id) + pulumi.set(__self__, "query_log_status", query_log_status) + if default_result_configuration is not None: + pulumi.set(__self__, "default_result_configuration", default_result_configuration) + if payment_configuration is not None: + pulumi.set(__self__, "payment_configuration", payment_configuration) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="collaborationId") + def collaboration_id(self) -> pulumi.Input[str]: + """ + The ID of the collaboration to which the member was invited. + """ + return pulumi.get(self, "collaboration_id") + + @collaboration_id.setter + def collaboration_id(self, value: pulumi.Input[str]): + pulumi.set(self, "collaboration_id", value) + + @property + @pulumi.getter(name="queryLogStatus") + def query_log_status(self) -> pulumi.Input[str]: + """ + An indicator as to whether query logging has been enabled or disabled for the membership. + """ + return pulumi.get(self, "query_log_status") + + @query_log_status.setter + def query_log_status(self, value: pulumi.Input[str]): + pulumi.set(self, "query_log_status", value) + + @property + @pulumi.getter(name="defaultResultConfiguration") + def default_result_configuration(self) -> Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']]: + """ + The default configuration for a query result. + """ + return pulumi.get(self, "default_result_configuration") + + @default_result_configuration.setter + def default_result_configuration(self, value: Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']]): + pulumi.set(self, "default_result_configuration", value) + + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]: + return pulumi.get(self, "payment_configuration") + + @payment_configuration.setter + def payment_configuration(self, value: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]): + pulumi.set(self, "payment_configuration", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Key value pairs which tag the membership. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + +@pulumi.input_type +class _MembershipState: + def __init__(__self__, *, + arn: Optional[pulumi.Input[str]] = None, + collaboration_arn: Optional[pulumi.Input[str]] = None, + collaboration_creator_account_id: Optional[pulumi.Input[str]] = None, + collaboration_creator_display_name: Optional[pulumi.Input[str]] = None, + collaboration_id: Optional[pulumi.Input[str]] = None, + collaboration_name: Optional[pulumi.Input[str]] = None, + create_time: Optional[pulumi.Input[str]] = None, + default_result_configuration: Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']] = None, + member_abilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + payment_configuration: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']] = None, + query_log_status: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + update_time: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering Membership resources. + :param pulumi.Input[str] arn: The ARN of the membership. + :param pulumi.Input[str] collaboration_arn: The ARN of the joined collaboration. + :param pulumi.Input[str] collaboration_creator_account_id: The account ID of the collaboration's creator. + :param pulumi.Input[str] collaboration_creator_display_name: The display name of the collaboration's creator. + :param pulumi.Input[str] collaboration_id: The ID of the collaboration to which the member was invited. + :param pulumi.Input[str] collaboration_name: The name of the joined collaboration. + :param pulumi.Input[str] create_time: The date and time the membership was created. + :param pulumi.Input['MembershipDefaultResultConfigurationArgs'] default_result_configuration: The default configuration for a query result. + :param pulumi.Input[Sequence[pulumi.Input[str]]] member_abilities: The list of abilities for the invited member. + :param pulumi.Input[str] query_log_status: An indicator as to whether query logging has been enabled or disabled for the membership. + :param pulumi.Input[str] status: The status of the membership. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key value pairs which tag the membership. + :param pulumi.Input[str] update_time: The date and time the membership was last updated. + """ + if arn is not None: + pulumi.set(__self__, "arn", arn) + if collaboration_arn is not None: + pulumi.set(__self__, "collaboration_arn", collaboration_arn) + if collaboration_creator_account_id is not None: + pulumi.set(__self__, "collaboration_creator_account_id", collaboration_creator_account_id) + if collaboration_creator_display_name is not None: + pulumi.set(__self__, "collaboration_creator_display_name", collaboration_creator_display_name) + if collaboration_id is not None: + pulumi.set(__self__, "collaboration_id", collaboration_id) + if collaboration_name is not None: + pulumi.set(__self__, "collaboration_name", collaboration_name) + if create_time is not None: + pulumi.set(__self__, "create_time", create_time) + if default_result_configuration is not None: + pulumi.set(__self__, "default_result_configuration", default_result_configuration) + if member_abilities is not None: + pulumi.set(__self__, "member_abilities", member_abilities) + if payment_configuration is not None: + pulumi.set(__self__, "payment_configuration", payment_configuration) + if query_log_status is not None: + pulumi.set(__self__, "query_log_status", query_log_status) + if status is not None: + pulumi.set(__self__, "status", status) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tags_all is not None: + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + if tags_all is not None: + pulumi.set(__self__, "tags_all", tags_all) + if update_time is not None: + pulumi.set(__self__, "update_time", update_time) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the membership. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="collaborationArn") + def collaboration_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the joined collaboration. + """ + return pulumi.get(self, "collaboration_arn") + + @collaboration_arn.setter + def collaboration_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_arn", value) + + @property + @pulumi.getter(name="collaborationCreatorAccountId") + def collaboration_creator_account_id(self) -> Optional[pulumi.Input[str]]: + """ + The account ID of the collaboration's creator. + """ + return pulumi.get(self, "collaboration_creator_account_id") + + @collaboration_creator_account_id.setter + def collaboration_creator_account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_creator_account_id", value) + + @property + @pulumi.getter(name="collaborationCreatorDisplayName") + def collaboration_creator_display_name(self) -> Optional[pulumi.Input[str]]: + """ + The display name of the collaboration's creator. + """ + return pulumi.get(self, "collaboration_creator_display_name") + + @collaboration_creator_display_name.setter + def collaboration_creator_display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_creator_display_name", value) + + @property + @pulumi.getter(name="collaborationId") + def collaboration_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the collaboration to which the member was invited. + """ + return pulumi.get(self, "collaboration_id") + + @collaboration_id.setter + def collaboration_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_id", value) + + @property + @pulumi.getter(name="collaborationName") + def collaboration_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the joined collaboration. + """ + return pulumi.get(self, "collaboration_name") + + @collaboration_name.setter + def collaboration_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "collaboration_name", value) + + @property + @pulumi.getter(name="createTime") + def create_time(self) -> Optional[pulumi.Input[str]]: + """ + The date and time the membership was created. + """ + return pulumi.get(self, "create_time") + + @create_time.setter + def create_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "create_time", value) + + @property + @pulumi.getter(name="defaultResultConfiguration") + def default_result_configuration(self) -> Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']]: + """ + The default configuration for a query result. + """ + return pulumi.get(self, "default_result_configuration") + + @default_result_configuration.setter + def default_result_configuration(self, value: Optional[pulumi.Input['MembershipDefaultResultConfigurationArgs']]): + pulumi.set(self, "default_result_configuration", value) + + @property + @pulumi.getter(name="memberAbilities") + def member_abilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The list of abilities for the invited member. + """ + return pulumi.get(self, "member_abilities") + + @member_abilities.setter + def member_abilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "member_abilities", value) + + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]: + return pulumi.get(self, "payment_configuration") + + @payment_configuration.setter + def payment_configuration(self, value: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]): + pulumi.set(self, "payment_configuration", value) + + @property + @pulumi.getter(name="queryLogStatus") + def query_log_status(self) -> Optional[pulumi.Input[str]]: + """ + An indicator as to whether query logging has been enabled or disabled for the membership. + """ + return pulumi.get(self, "query_log_status") + + @query_log_status.setter + def query_log_status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "query_log_status", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + The status of the membership. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Key value pairs which tag the membership. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + return pulumi.get(self, "tags_all") + + @tags_all.setter + def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags_all", value) + + @property + @pulumi.getter(name="updateTime") + def update_time(self) -> Optional[pulumi.Input[str]]: + """ + The date and time the membership was last updated. + """ + return pulumi.get(self, "update_time") + + @update_time.setter + def update_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "update_time", value) + + +class Membership(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + collaboration_id: Optional[pulumi.Input[str]] = None, + default_result_configuration: Optional[pulumi.Input[Union['MembershipDefaultResultConfigurationArgs', 'MembershipDefaultResultConfigurationArgsDict']]] = None, + payment_configuration: Optional[pulumi.Input[Union['MembershipPaymentConfigurationArgs', 'MembershipPaymentConfigurationArgsDict']]] = None, + query_log_status: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + """ + Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. + + ## Example Usage + + ### Membership with tags + + ```python + import pulumi + import pulumi_aws as aws + + test_membership = aws.cleanrooms.Membership("test_membership", + collaboration_id="1234abcd-12ab-34cd-56ef-1234567890ab", + query_log_status="DISABLED", + default_result_configuration={ + "role_arn": "arn:aws:iam::123456789012:role/role-name", + "output_configuration": { + "s3": { + "bucket": "test-bucket", + "result_format": "PARQUET", + "key_prefix": "test-prefix", + }, + }, + }, + tags={ + "Project": "Terraform", + }) + ``` + + ## Import + + Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: + + ```sh + $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] collaboration_id: The ID of the collaboration to which the member was invited. + :param pulumi.Input[Union['MembershipDefaultResultConfigurationArgs', 'MembershipDefaultResultConfigurationArgsDict']] default_result_configuration: The default configuration for a query result. + :param pulumi.Input[str] query_log_status: An indicator as to whether query logging has been enabled or disabled for the membership. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key value pairs which tag the membership. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: MembershipArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Provides a AWS Clean Rooms membership. Memberships are used to join a Clean Rooms collaboration by the invited member. + + ## Example Usage + + ### Membership with tags + + ```python + import pulumi + import pulumi_aws as aws + + test_membership = aws.cleanrooms.Membership("test_membership", + collaboration_id="1234abcd-12ab-34cd-56ef-1234567890ab", + query_log_status="DISABLED", + default_result_configuration={ + "role_arn": "arn:aws:iam::123456789012:role/role-name", + "output_configuration": { + "s3": { + "bucket": "test-bucket", + "result_format": "PARQUET", + "key_prefix": "test-prefix", + }, + }, + }, + tags={ + "Project": "Terraform", + }) + ``` + + ## Import + + Using `pulumi import`, import `aws_cleanrooms_membership` using the `id`. For example: + + ```sh + $ pulumi import aws:cleanrooms/membership:Membership membership 1234abcd-12ab-34cd-56ef-1234567890ab + ``` + + :param str resource_name: The name of the resource. + :param MembershipArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(MembershipArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + collaboration_id: Optional[pulumi.Input[str]] = None, + default_result_configuration: Optional[pulumi.Input[Union['MembershipDefaultResultConfigurationArgs', 'MembershipDefaultResultConfigurationArgsDict']]] = None, + payment_configuration: Optional[pulumi.Input[Union['MembershipPaymentConfigurationArgs', 'MembershipPaymentConfigurationArgsDict']]] = None, + query_log_status: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = MembershipArgs.__new__(MembershipArgs) + + if collaboration_id is None and not opts.urn: + raise TypeError("Missing required property 'collaboration_id'") + __props__.__dict__["collaboration_id"] = collaboration_id + __props__.__dict__["default_result_configuration"] = default_result_configuration + __props__.__dict__["payment_configuration"] = payment_configuration + if query_log_status is None and not opts.urn: + raise TypeError("Missing required property 'query_log_status'") + __props__.__dict__["query_log_status"] = query_log_status + __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + __props__.__dict__["collaboration_arn"] = None + __props__.__dict__["collaboration_creator_account_id"] = None + __props__.__dict__["collaboration_creator_display_name"] = None + __props__.__dict__["collaboration_name"] = None + __props__.__dict__["create_time"] = None + __props__.__dict__["member_abilities"] = None + __props__.__dict__["status"] = None + __props__.__dict__["tags_all"] = None + __props__.__dict__["update_time"] = None + super(Membership, __self__).__init__( + 'aws:cleanrooms/membership:Membership', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + arn: Optional[pulumi.Input[str]] = None, + collaboration_arn: Optional[pulumi.Input[str]] = None, + collaboration_creator_account_id: Optional[pulumi.Input[str]] = None, + collaboration_creator_display_name: Optional[pulumi.Input[str]] = None, + collaboration_id: Optional[pulumi.Input[str]] = None, + collaboration_name: Optional[pulumi.Input[str]] = None, + create_time: Optional[pulumi.Input[str]] = None, + default_result_configuration: Optional[pulumi.Input[Union['MembershipDefaultResultConfigurationArgs', 'MembershipDefaultResultConfigurationArgsDict']]] = None, + member_abilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + payment_configuration: Optional[pulumi.Input[Union['MembershipPaymentConfigurationArgs', 'MembershipPaymentConfigurationArgsDict']]] = None, + query_log_status: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + update_time: Optional[pulumi.Input[str]] = None) -> 'Membership': + """ + Get an existing Membership 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[str] arn: The ARN of the membership. + :param pulumi.Input[str] collaboration_arn: The ARN of the joined collaboration. + :param pulumi.Input[str] collaboration_creator_account_id: The account ID of the collaboration's creator. + :param pulumi.Input[str] collaboration_creator_display_name: The display name of the collaboration's creator. + :param pulumi.Input[str] collaboration_id: The ID of the collaboration to which the member was invited. + :param pulumi.Input[str] collaboration_name: The name of the joined collaboration. + :param pulumi.Input[str] create_time: The date and time the membership was created. + :param pulumi.Input[Union['MembershipDefaultResultConfigurationArgs', 'MembershipDefaultResultConfigurationArgsDict']] default_result_configuration: The default configuration for a query result. + :param pulumi.Input[Sequence[pulumi.Input[str]]] member_abilities: The list of abilities for the invited member. + :param pulumi.Input[str] query_log_status: An indicator as to whether query logging has been enabled or disabled for the membership. + :param pulumi.Input[str] status: The status of the membership. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key value pairs which tag the membership. + :param pulumi.Input[str] update_time: The date and time the membership was last updated. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _MembershipState.__new__(_MembershipState) + + __props__.__dict__["arn"] = arn + __props__.__dict__["collaboration_arn"] = collaboration_arn + __props__.__dict__["collaboration_creator_account_id"] = collaboration_creator_account_id + __props__.__dict__["collaboration_creator_display_name"] = collaboration_creator_display_name + __props__.__dict__["collaboration_id"] = collaboration_id + __props__.__dict__["collaboration_name"] = collaboration_name + __props__.__dict__["create_time"] = create_time + __props__.__dict__["default_result_configuration"] = default_result_configuration + __props__.__dict__["member_abilities"] = member_abilities + __props__.__dict__["payment_configuration"] = payment_configuration + __props__.__dict__["query_log_status"] = query_log_status + __props__.__dict__["status"] = status + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + __props__.__dict__["update_time"] = update_time + return Membership(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + The ARN of the membership. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="collaborationArn") + def collaboration_arn(self) -> pulumi.Output[str]: + """ + The ARN of the joined collaboration. + """ + return pulumi.get(self, "collaboration_arn") + + @property + @pulumi.getter(name="collaborationCreatorAccountId") + def collaboration_creator_account_id(self) -> pulumi.Output[str]: + """ + The account ID of the collaboration's creator. + """ + return pulumi.get(self, "collaboration_creator_account_id") + + @property + @pulumi.getter(name="collaborationCreatorDisplayName") + def collaboration_creator_display_name(self) -> pulumi.Output[str]: + """ + The display name of the collaboration's creator. + """ + return pulumi.get(self, "collaboration_creator_display_name") + + @property + @pulumi.getter(name="collaborationId") + def collaboration_id(self) -> pulumi.Output[str]: + """ + The ID of the collaboration to which the member was invited. + """ + return pulumi.get(self, "collaboration_id") + + @property + @pulumi.getter(name="collaborationName") + def collaboration_name(self) -> pulumi.Output[str]: + """ + The name of the joined collaboration. + """ + return pulumi.get(self, "collaboration_name") + + @property + @pulumi.getter(name="createTime") + def create_time(self) -> pulumi.Output[str]: + """ + The date and time the membership was created. + """ + return pulumi.get(self, "create_time") + + @property + @pulumi.getter(name="defaultResultConfiguration") + def default_result_configuration(self) -> pulumi.Output[Optional['outputs.MembershipDefaultResultConfiguration']]: + """ + The default configuration for a query result. + """ + return pulumi.get(self, "default_result_configuration") + + @property + @pulumi.getter(name="memberAbilities") + def member_abilities(self) -> pulumi.Output[Sequence[str]]: + """ + The list of abilities for the invited member. + """ + return pulumi.get(self, "member_abilities") + + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> pulumi.Output[Optional['outputs.MembershipPaymentConfiguration']]: + return pulumi.get(self, "payment_configuration") + + @property + @pulumi.getter(name="queryLogStatus") + def query_log_status(self) -> pulumi.Output[str]: + """ + An indicator as to whether query logging has been enabled or disabled for the membership. + """ + return pulumi.get(self, "query_log_status") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + The status of the membership. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + Key value pairs which tag the membership. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> pulumi.Output[Mapping[str, str]]: + return pulumi.get(self, "tags_all") + + @property + @pulumi.getter(name="updateTime") + def update_time(self) -> pulumi.Output[str]: + """ + The date and time the membership was last updated. + """ + return pulumi.get(self, "update_time") + diff --git a/sdk/python/pulumi_aws/cleanrooms/outputs.py b/sdk/python/pulumi_aws/cleanrooms/outputs.py index e0160e4d329..27598b68a67 100644 --- a/sdk/python/pulumi_aws/cleanrooms/outputs.py +++ b/sdk/python/pulumi_aws/cleanrooms/outputs.py @@ -13,11 +13,17 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from . import outputs __all__ = [ 'CollaborationDataEncryptionMetadata', 'CollaborationMember', 'ConfiguredTableTableReference', + 'MembershipDefaultResultConfiguration', + 'MembershipDefaultResultConfigurationOutputConfiguration', + 'MembershipDefaultResultConfigurationOutputConfigurationS3', + 'MembershipPaymentConfiguration', + 'MembershipPaymentConfigurationQueryCompute', ] @pulumi.output_type @@ -169,3 +175,179 @@ def table_name(self) -> str: return pulumi.get(self, "table_name") +@pulumi.output_type +class MembershipDefaultResultConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "outputConfiguration": + suggest = "output_configuration" + elif key == "roleArn": + suggest = "role_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipDefaultResultConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipDefaultResultConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipDefaultResultConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + output_configuration: Optional['outputs.MembershipDefaultResultConfigurationOutputConfiguration'] = None, + role_arn: Optional[str] = None): + """ + :param str role_arn: The ARN of the IAM role which will be used to create the membership. + - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + """ + if output_configuration is not None: + pulumi.set(__self__, "output_configuration", output_configuration) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) + + @property + @pulumi.getter(name="outputConfiguration") + def output_configuration(self) -> Optional['outputs.MembershipDefaultResultConfigurationOutputConfiguration']: + return pulumi.get(self, "output_configuration") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[str]: + """ + The ARN of the IAM role which will be used to create the membership. + - `output_configuration.s3.bucket` - (Required) - The name of the S3 bucket where the query results will be stored. + - `output_configuration.s3.result_format` - (Required) - The format of the query results. Valid values are `PARQUET` and `CSV`. + - `output_configuration.s3.key_prefix` - (Optional) - The prefix used for the query results. + """ + return pulumi.get(self, "role_arn") + + +@pulumi.output_type +class MembershipDefaultResultConfigurationOutputConfiguration(dict): + def __init__(__self__, *, + s3: Optional['outputs.MembershipDefaultResultConfigurationOutputConfigurationS3'] = None): + if s3 is not None: + pulumi.set(__self__, "s3", s3) + + @property + @pulumi.getter + def s3(self) -> Optional['outputs.MembershipDefaultResultConfigurationOutputConfigurationS3']: + return pulumi.get(self, "s3") + + +@pulumi.output_type +class MembershipDefaultResultConfigurationOutputConfigurationS3(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "resultFormat": + suggest = "result_format" + elif key == "keyPrefix": + suggest = "key_prefix" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipDefaultResultConfigurationOutputConfigurationS3. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipDefaultResultConfigurationOutputConfigurationS3.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipDefaultResultConfigurationOutputConfigurationS3.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + bucket: str, + result_format: str, + key_prefix: Optional[str] = None): + pulumi.set(__self__, "bucket", bucket) + pulumi.set(__self__, "result_format", result_format) + if key_prefix is not None: + pulumi.set(__self__, "key_prefix", key_prefix) + + @property + @pulumi.getter + def bucket(self) -> str: + return pulumi.get(self, "bucket") + + @property + @pulumi.getter(name="resultFormat") + def result_format(self) -> str: + return pulumi.get(self, "result_format") + + @property + @pulumi.getter(name="keyPrefix") + def key_prefix(self) -> Optional[str]: + return pulumi.get(self, "key_prefix") + + +@pulumi.output_type +class MembershipPaymentConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "queryCompute": + suggest = "query_compute" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipPaymentConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipPaymentConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipPaymentConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + query_compute: Optional['outputs.MembershipPaymentConfigurationQueryCompute'] = None): + if query_compute is not None: + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> Optional['outputs.MembershipPaymentConfigurationQueryCompute']: + return pulumi.get(self, "query_compute") + + +@pulumi.output_type +class MembershipPaymentConfigurationQueryCompute(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "isResponsible": + suggest = "is_responsible" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipPaymentConfigurationQueryCompute. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipPaymentConfigurationQueryCompute.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipPaymentConfigurationQueryCompute.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + is_responsible: bool): + """ + :param bool is_responsible: Indicates whether the collaboration member has accepted to pay for query compute costs. + """ + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> bool: + """ + Indicates whether the collaboration member has accepted to pay for query compute costs. + """ + return pulumi.get(self, "is_responsible") + + diff --git a/sdk/python/pulumi_aws/cloudfront/_inputs.py b/sdk/python/pulumi_aws/cloudfront/_inputs.py index 52c2ec820c1..bb086501b1f 100644 --- a/sdk/python/pulumi_aws/cloudfront/_inputs.py +++ b/sdk/python/pulumi_aws/cloudfront/_inputs.py @@ -49,6 +49,8 @@ 'DistributionDefaultCacheBehaviorForwardedValuesCookiesArgsDict', 'DistributionDefaultCacheBehaviorFunctionAssociationArgs', 'DistributionDefaultCacheBehaviorFunctionAssociationArgsDict', + 'DistributionDefaultCacheBehaviorGrpcConfigArgs', + 'DistributionDefaultCacheBehaviorGrpcConfigArgsDict', 'DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs', 'DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgsDict', 'DistributionLoggingConfigArgs', @@ -61,6 +63,8 @@ 'DistributionOrderedCacheBehaviorForwardedValuesCookiesArgsDict', 'DistributionOrderedCacheBehaviorFunctionAssociationArgs', 'DistributionOrderedCacheBehaviorFunctionAssociationArgsDict', + 'DistributionOrderedCacheBehaviorGrpcConfigArgs', + 'DistributionOrderedCacheBehaviorGrpcConfigArgsDict', 'DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs', 'DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgsDict', 'DistributionOriginArgs', @@ -930,7 +934,7 @@ class DistributionDefaultCacheBehaviorArgsDict(TypedDict): """ default_ttl: NotRequired[pulumi.Input[int]] """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ field_level_encryption_id: NotRequired[pulumi.Input[str]] """ @@ -944,17 +948,21 @@ class DistributionDefaultCacheBehaviorArgsDict(TypedDict): """ A config block that triggers a cloudfront function with specific actions (maximum 2). """ + grpc_config: NotRequired[pulumi.Input['DistributionDefaultCacheBehaviorGrpcConfigArgsDict']] + """ + A config block that sets the grpc config. + """ lambda_function_associations: NotRequired[pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgsDict']]]] """ A config block that triggers a lambda function with specific actions (maximum 4). """ max_ttl: NotRequired[pulumi.Input[int]] """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ min_ttl: NotRequired[pulumi.Input[int]] """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ origin_request_policy_id: NotRequired[pulumi.Input[str]] """ @@ -996,6 +1004,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[pulumi.Input[str]] = None, forwarded_values: Optional[pulumi.Input['DistributionDefaultCacheBehaviorForwardedValuesArgs']] = None, function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorFunctionAssociationArgs']]]] = None, + grpc_config: Optional[pulumi.Input['DistributionDefaultCacheBehaviorGrpcConfigArgs']] = None, lambda_function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs']]]] = None, max_ttl: Optional[pulumi.Input[int]] = None, min_ttl: Optional[pulumi.Input[int]] = None, @@ -1012,13 +1021,14 @@ def __init__(__self__, *, :param pulumi.Input[str] viewer_protocol_policy: Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. One of `allow-all`, `https-only`, or `redirect-to-https`. :param pulumi.Input[str] cache_policy_id: Unique identifier of the cache policy that is attached to the cache behavior. If configuring the `default_cache_behavior` either `cache_policy_id` or `forwarded_values` must be set. :param pulumi.Input[bool] compress: Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). - :param pulumi.Input[int] default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + :param pulumi.Input[int] default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. :param pulumi.Input[str] field_level_encryption_id: Field level encryption configuration ID. :param pulumi.Input['DistributionDefaultCacheBehaviorForwardedValuesArgs'] forwarded_values: The forwarded values configuration that specifies how CloudFront handles query strings, cookies and headers (maximum one). :param pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorFunctionAssociationArgs']]] function_associations: A config block that triggers a cloudfront function with specific actions (maximum 2). + :param pulumi.Input['DistributionDefaultCacheBehaviorGrpcConfigArgs'] grpc_config: A config block that sets the grpc config. :param pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs']]] lambda_function_associations: A config block that triggers a lambda function with specific actions (maximum 4). - :param pulumi.Input[int] max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. - :param pulumi.Input[int] min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + :param pulumi.Input[int] max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. + :param pulumi.Input[int] min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. :param pulumi.Input[str] origin_request_policy_id: Unique identifier of the origin request policy that is attached to the behavior. :param pulumi.Input[str] realtime_log_config_arn: ARN of the real-time log configuration that is attached to this cache behavior. :param pulumi.Input[str] response_headers_policy_id: Identifier for a response headers policy. @@ -1042,6 +1052,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -1137,7 +1149,7 @@ def compress(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="defaultTtl") def default_ttl(self) -> Optional[pulumi.Input[int]]: """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "default_ttl") @@ -1181,6 +1193,18 @@ def function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def function_associations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorFunctionAssociationArgs']]]]): pulumi.set(self, "function_associations", value) + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional[pulumi.Input['DistributionDefaultCacheBehaviorGrpcConfigArgs']]: + """ + A config block that sets the grpc config. + """ + return pulumi.get(self, "grpc_config") + + @grpc_config.setter + def grpc_config(self, value: Optional[pulumi.Input['DistributionDefaultCacheBehaviorGrpcConfigArgs']]): + pulumi.set(self, "grpc_config", value) + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs']]]]: @@ -1197,7 +1221,7 @@ def lambda_function_associations(self, value: Optional[pulumi.Input[Sequence[pul @pulumi.getter(name="maxTtl") def max_ttl(self) -> Optional[pulumi.Input[int]]: """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "max_ttl") @@ -1209,7 +1233,7 @@ def max_ttl(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="minTtl") def min_ttl(self) -> Optional[pulumi.Input[int]]: """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "min_ttl") @@ -1481,6 +1505,38 @@ def function_arn(self, value: pulumi.Input[str]): pulumi.set(self, "function_arn", value) +if not MYPY: + class DistributionDefaultCacheBehaviorGrpcConfigArgsDict(TypedDict): + enabled: NotRequired[pulumi.Input[bool]] + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ +elif False: + DistributionDefaultCacheBehaviorGrpcConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DistributionDefaultCacheBehaviorGrpcConfigArgs: + def __init__(__self__, *, + enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] enabled: `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[pulumi.Input[bool]]: + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enabled", value) + + if not MYPY: class DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgsDict(TypedDict): event_type: pulumi.Input[str] @@ -1555,7 +1611,7 @@ def include_body(self, value: Optional[pulumi.Input[bool]]): class DistributionLoggingConfigArgsDict(TypedDict): bucket: pulumi.Input[str] """ - Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. """ include_cookies: NotRequired[pulumi.Input[bool]] """ @@ -1575,7 +1631,7 @@ def __init__(__self__, *, include_cookies: Optional[pulumi.Input[bool]] = None, prefix: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] bucket: Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + :param pulumi.Input[str] bucket: Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. :param pulumi.Input[bool] include_cookies: Whether to include cookies in access logs (default: `false`). :param pulumi.Input[str] prefix: Prefix to the access log filenames for this distribution, for example, `myprefix/`. """ @@ -1589,7 +1645,7 @@ def __init__(__self__, *, @pulumi.getter def bucket(self) -> pulumi.Input[str]: """ - Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. """ return pulumi.get(self, "bucket") @@ -1654,7 +1710,7 @@ class DistributionOrderedCacheBehaviorArgsDict(TypedDict): """ default_ttl: NotRequired[pulumi.Input[int]] """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ field_level_encryption_id: NotRequired[pulumi.Input[str]] """ @@ -1668,17 +1724,21 @@ class DistributionOrderedCacheBehaviorArgsDict(TypedDict): """ A config block that triggers a cloudfront function with specific actions (maximum 2). """ + grpc_config: NotRequired[pulumi.Input['DistributionOrderedCacheBehaviorGrpcConfigArgsDict']] + """ + A config block that sets the grpc config. + """ lambda_function_associations: NotRequired[pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgsDict']]]] """ A config block that triggers a lambda function with specific actions (maximum 4). """ max_ttl: NotRequired[pulumi.Input[int]] """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ min_ttl: NotRequired[pulumi.Input[int]] """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ origin_request_policy_id: NotRequired[pulumi.Input[str]] """ @@ -1721,6 +1781,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[pulumi.Input[str]] = None, forwarded_values: Optional[pulumi.Input['DistributionOrderedCacheBehaviorForwardedValuesArgs']] = None, function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorFunctionAssociationArgs']]]] = None, + grpc_config: Optional[pulumi.Input['DistributionOrderedCacheBehaviorGrpcConfigArgs']] = None, lambda_function_associations: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs']]]] = None, max_ttl: Optional[pulumi.Input[int]] = None, min_ttl: Optional[pulumi.Input[int]] = None, @@ -1738,13 +1799,14 @@ def __init__(__self__, *, :param pulumi.Input[str] viewer_protocol_policy: Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. One of `allow-all`, `https-only`, or `redirect-to-https`. :param pulumi.Input[str] cache_policy_id: Unique identifier of the cache policy that is attached to the cache behavior. If configuring the `default_cache_behavior` either `cache_policy_id` or `forwarded_values` must be set. :param pulumi.Input[bool] compress: Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). - :param pulumi.Input[int] default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + :param pulumi.Input[int] default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. :param pulumi.Input[str] field_level_encryption_id: Field level encryption configuration ID. :param pulumi.Input['DistributionOrderedCacheBehaviorForwardedValuesArgs'] forwarded_values: The forwarded values configuration that specifies how CloudFront handles query strings, cookies and headers (maximum one). :param pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorFunctionAssociationArgs']]] function_associations: A config block that triggers a cloudfront function with specific actions (maximum 2). + :param pulumi.Input['DistributionOrderedCacheBehaviorGrpcConfigArgs'] grpc_config: A config block that sets the grpc config. :param pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs']]] lambda_function_associations: A config block that triggers a lambda function with specific actions (maximum 4). - :param pulumi.Input[int] max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. - :param pulumi.Input[int] min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + :param pulumi.Input[int] max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. + :param pulumi.Input[int] min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. :param pulumi.Input[str] origin_request_policy_id: Unique identifier of the origin request policy that is attached to the behavior. :param pulumi.Input[str] realtime_log_config_arn: ARN of the real-time log configuration that is attached to this cache behavior. :param pulumi.Input[str] response_headers_policy_id: Identifier for a response headers policy. @@ -1769,6 +1831,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -1876,7 +1940,7 @@ def compress(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="defaultTtl") def default_ttl(self) -> Optional[pulumi.Input[int]]: """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "default_ttl") @@ -1920,6 +1984,18 @@ def function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def function_associations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorFunctionAssociationArgs']]]]): pulumi.set(self, "function_associations", value) + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional[pulumi.Input['DistributionOrderedCacheBehaviorGrpcConfigArgs']]: + """ + A config block that sets the grpc config. + """ + return pulumi.get(self, "grpc_config") + + @grpc_config.setter + def grpc_config(self, value: Optional[pulumi.Input['DistributionOrderedCacheBehaviorGrpcConfigArgs']]): + pulumi.set(self, "grpc_config", value) + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs']]]]: @@ -1936,7 +2012,7 @@ def lambda_function_associations(self, value: Optional[pulumi.Input[Sequence[pul @pulumi.getter(name="maxTtl") def max_ttl(self) -> Optional[pulumi.Input[int]]: """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "max_ttl") @@ -1948,7 +2024,7 @@ def max_ttl(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="minTtl") def min_ttl(self) -> Optional[pulumi.Input[int]]: """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "min_ttl") @@ -2220,6 +2296,38 @@ def function_arn(self, value: pulumi.Input[str]): pulumi.set(self, "function_arn", value) +if not MYPY: + class DistributionOrderedCacheBehaviorGrpcConfigArgsDict(TypedDict): + enabled: NotRequired[pulumi.Input[bool]] + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ +elif False: + DistributionOrderedCacheBehaviorGrpcConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class DistributionOrderedCacheBehaviorGrpcConfigArgs: + def __init__(__self__, *, + enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] enabled: `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[pulumi.Input[bool]]: + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enabled", value) + + if not MYPY: class DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgsDict(TypedDict): event_type: pulumi.Input[str] diff --git a/sdk/python/pulumi_aws/cloudfront/outputs.py b/sdk/python/pulumi_aws/cloudfront/outputs.py index e637b3af878..772ec65e002 100644 --- a/sdk/python/pulumi_aws/cloudfront/outputs.py +++ b/sdk/python/pulumi_aws/cloudfront/outputs.py @@ -33,12 +33,14 @@ 'DistributionDefaultCacheBehaviorForwardedValues', 'DistributionDefaultCacheBehaviorForwardedValuesCookies', 'DistributionDefaultCacheBehaviorFunctionAssociation', + 'DistributionDefaultCacheBehaviorGrpcConfig', 'DistributionDefaultCacheBehaviorLambdaFunctionAssociation', 'DistributionLoggingConfig', 'DistributionOrderedCacheBehavior', 'DistributionOrderedCacheBehaviorForwardedValues', 'DistributionOrderedCacheBehaviorForwardedValuesCookies', 'DistributionOrderedCacheBehaviorFunctionAssociation', + 'DistributionOrderedCacheBehaviorGrpcConfig', 'DistributionOrderedCacheBehaviorLambdaFunctionAssociation', 'DistributionOrigin', 'DistributionOriginCustomHeader', @@ -735,6 +737,8 @@ def __key_warning(key: str): suggest = "forwarded_values" elif key == "functionAssociations": suggest = "function_associations" + elif key == "grpcConfig": + suggest = "grpc_config" elif key == "lambdaFunctionAssociations": suggest = "lambda_function_associations" elif key == "maxTtl": @@ -776,6 +780,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[str] = None, forwarded_values: Optional['outputs.DistributionDefaultCacheBehaviorForwardedValues'] = None, function_associations: Optional[Sequence['outputs.DistributionDefaultCacheBehaviorFunctionAssociation']] = None, + grpc_config: Optional['outputs.DistributionDefaultCacheBehaviorGrpcConfig'] = None, lambda_function_associations: Optional[Sequence['outputs.DistributionDefaultCacheBehaviorLambdaFunctionAssociation']] = None, max_ttl: Optional[int] = None, min_ttl: Optional[int] = None, @@ -792,13 +797,14 @@ def __init__(__self__, *, :param str viewer_protocol_policy: Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. One of `allow-all`, `https-only`, or `redirect-to-https`. :param str cache_policy_id: Unique identifier of the cache policy that is attached to the cache behavior. If configuring the `default_cache_behavior` either `cache_policy_id` or `forwarded_values` must be set. :param bool compress: Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). - :param int default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + :param int default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. :param str field_level_encryption_id: Field level encryption configuration ID. :param 'DistributionDefaultCacheBehaviorForwardedValuesArgs' forwarded_values: The forwarded values configuration that specifies how CloudFront handles query strings, cookies and headers (maximum one). :param Sequence['DistributionDefaultCacheBehaviorFunctionAssociationArgs'] function_associations: A config block that triggers a cloudfront function with specific actions (maximum 2). + :param 'DistributionDefaultCacheBehaviorGrpcConfigArgs' grpc_config: A config block that sets the grpc config. :param Sequence['DistributionDefaultCacheBehaviorLambdaFunctionAssociationArgs'] lambda_function_associations: A config block that triggers a lambda function with specific actions (maximum 4). - :param int max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. - :param int min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + :param int max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. + :param int min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. :param str origin_request_policy_id: Unique identifier of the origin request policy that is attached to the behavior. :param str realtime_log_config_arn: ARN of the real-time log configuration that is attached to this cache behavior. :param str response_headers_policy_id: Identifier for a response headers policy. @@ -822,6 +828,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -893,7 +901,7 @@ def compress(self) -> Optional[bool]: @pulumi.getter(name="defaultTtl") def default_ttl(self) -> Optional[int]: """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "default_ttl") @@ -921,6 +929,14 @@ def function_associations(self) -> Optional[Sequence['outputs.DistributionDefaul """ return pulumi.get(self, "function_associations") + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional['outputs.DistributionDefaultCacheBehaviorGrpcConfig']: + """ + A config block that sets the grpc config. + """ + return pulumi.get(self, "grpc_config") + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[Sequence['outputs.DistributionDefaultCacheBehaviorLambdaFunctionAssociation']]: @@ -933,7 +949,7 @@ def lambda_function_associations(self) -> Optional[Sequence['outputs.Distributio @pulumi.getter(name="maxTtl") def max_ttl(self) -> Optional[int]: """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "max_ttl") @@ -941,7 +957,7 @@ def max_ttl(self) -> Optional[int]: @pulumi.getter(name="minTtl") def min_ttl(self) -> Optional[int]: """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "min_ttl") @@ -1161,6 +1177,25 @@ def function_arn(self) -> str: return pulumi.get(self, "function_arn") +@pulumi.output_type +class DistributionDefaultCacheBehaviorGrpcConfig(dict): + def __init__(__self__, *, + enabled: Optional[bool] = None): + """ + :param bool enabled: `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[bool]: + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + return pulumi.get(self, "enabled") + + @pulumi.output_type class DistributionDefaultCacheBehaviorLambdaFunctionAssociation(dict): @staticmethod @@ -1247,7 +1282,7 @@ def __init__(__self__, *, include_cookies: Optional[bool] = None, prefix: Optional[str] = None): """ - :param str bucket: Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + :param str bucket: Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. :param bool include_cookies: Whether to include cookies in access logs (default: `false`). :param str prefix: Prefix to the access log filenames for this distribution, for example, `myprefix/`. """ @@ -1261,7 +1296,7 @@ def __init__(__self__, *, @pulumi.getter def bucket(self) -> str: """ - Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. + Amazon S3 bucket to store the access logs in, for example, `myawslogbucket.s3.amazonaws.com`. The bucket must have correct ACL attached with "FULL_CONTROL" permission for "awslogsdelivery" account (Canonical ID: "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0") for log transfer to work. """ return pulumi.get(self, "bucket") @@ -1307,6 +1342,8 @@ def __key_warning(key: str): suggest = "forwarded_values" elif key == "functionAssociations": suggest = "function_associations" + elif key == "grpcConfig": + suggest = "grpc_config" elif key == "lambdaFunctionAssociations": suggest = "lambda_function_associations" elif key == "maxTtl": @@ -1349,6 +1386,7 @@ def __init__(__self__, *, field_level_encryption_id: Optional[str] = None, forwarded_values: Optional['outputs.DistributionOrderedCacheBehaviorForwardedValues'] = None, function_associations: Optional[Sequence['outputs.DistributionOrderedCacheBehaviorFunctionAssociation']] = None, + grpc_config: Optional['outputs.DistributionOrderedCacheBehaviorGrpcConfig'] = None, lambda_function_associations: Optional[Sequence['outputs.DistributionOrderedCacheBehaviorLambdaFunctionAssociation']] = None, max_ttl: Optional[int] = None, min_ttl: Optional[int] = None, @@ -1366,13 +1404,14 @@ def __init__(__self__, *, :param str viewer_protocol_policy: Use this element to specify the protocol that users can use to access the files in the origin specified by TargetOriginId when a request matches the path pattern in PathPattern. One of `allow-all`, `https-only`, or `redirect-to-https`. :param str cache_policy_id: Unique identifier of the cache policy that is attached to the cache behavior. If configuring the `default_cache_behavior` either `cache_policy_id` or `forwarded_values` must be set. :param bool compress: Whether you want CloudFront to automatically compress content for web requests that include `Accept-Encoding: gzip` in the request header (default: `false`). - :param int default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + :param int default_ttl: Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. :param str field_level_encryption_id: Field level encryption configuration ID. :param 'DistributionOrderedCacheBehaviorForwardedValuesArgs' forwarded_values: The forwarded values configuration that specifies how CloudFront handles query strings, cookies and headers (maximum one). :param Sequence['DistributionOrderedCacheBehaviorFunctionAssociationArgs'] function_associations: A config block that triggers a cloudfront function with specific actions (maximum 2). + :param 'DistributionOrderedCacheBehaviorGrpcConfigArgs' grpc_config: A config block that sets the grpc config. :param Sequence['DistributionOrderedCacheBehaviorLambdaFunctionAssociationArgs'] lambda_function_associations: A config block that triggers a lambda function with specific actions (maximum 4). - :param int max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. - :param int min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + :param int max_ttl: Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. + :param int min_ttl: Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. :param str origin_request_policy_id: Unique identifier of the origin request policy that is attached to the behavior. :param str realtime_log_config_arn: ARN of the real-time log configuration that is attached to this cache behavior. :param str response_headers_policy_id: Identifier for a response headers policy. @@ -1397,6 +1436,8 @@ def __init__(__self__, *, pulumi.set(__self__, "forwarded_values", forwarded_values) if function_associations is not None: pulumi.set(__self__, "function_associations", function_associations) + if grpc_config is not None: + pulumi.set(__self__, "grpc_config", grpc_config) if lambda_function_associations is not None: pulumi.set(__self__, "lambda_function_associations", lambda_function_associations) if max_ttl is not None: @@ -1476,7 +1517,7 @@ def compress(self) -> Optional[bool]: @pulumi.getter(name="defaultTtl") def default_ttl(self) -> Optional[int]: """ - Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. + Default amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request in the absence of an `Cache-Control max-age` or `Expires` header. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "default_ttl") @@ -1504,6 +1545,14 @@ def function_associations(self) -> Optional[Sequence['outputs.DistributionOrdere """ return pulumi.get(self, "function_associations") + @property + @pulumi.getter(name="grpcConfig") + def grpc_config(self) -> Optional['outputs.DistributionOrderedCacheBehaviorGrpcConfig']: + """ + A config block that sets the grpc config. + """ + return pulumi.get(self, "grpc_config") + @property @pulumi.getter(name="lambdaFunctionAssociations") def lambda_function_associations(self) -> Optional[Sequence['outputs.DistributionOrderedCacheBehaviorLambdaFunctionAssociation']]: @@ -1516,7 +1565,7 @@ def lambda_function_associations(self) -> Optional[Sequence['outputs.Distributio @pulumi.getter(name="maxTtl") def max_ttl(self) -> Optional[int]: """ - Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. + Maximum amount of time (in seconds) that an object is in a CloudFront cache before CloudFront forwards another request to your origin to determine whether the object has been updated. Only effective in the presence of `Cache-Control max-age`, `Cache-Control s-maxage`, and `Expires` headers. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "max_ttl") @@ -1524,7 +1573,7 @@ def max_ttl(self) -> Optional[int]: @pulumi.getter(name="minTtl") def min_ttl(self) -> Optional[int]: """ - Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. + Minimum amount of time that you want objects to stay in CloudFront caches before CloudFront queries your origin to see whether the object has been updated. Defaults to 0 seconds. The TTL defined in Cache Policy overrides this configuration. """ return pulumi.get(self, "min_ttl") @@ -1744,6 +1793,25 @@ def function_arn(self) -> str: return pulumi.get(self, "function_arn") +@pulumi.output_type +class DistributionOrderedCacheBehaviorGrpcConfig(dict): + def __init__(__self__, *, + enabled: Optional[bool] = None): + """ + :param bool enabled: `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[bool]: + """ + `true` if any of the AWS accounts listed as trusted signers have active CloudFront key pairs + """ + return pulumi.get(self, "enabled") + + @pulumi.output_type class DistributionOrderedCacheBehaviorLambdaFunctionAssociation(dict): @staticmethod diff --git a/sdk/python/pulumi_aws/cloudfront/vpc_origin.py b/sdk/python/pulumi_aws/cloudfront/vpc_origin.py index c7daf3d03f2..b0d50d70fde 100644 --- a/sdk/python/pulumi_aws/cloudfront/vpc_origin.py +++ b/sdk/python/pulumi_aws/cloudfront/vpc_origin.py @@ -204,7 +204,7 @@ def __init__(__self__, to = aws_cloudfront_vpc_origin.origin - id = vo_JQEa410sssUFoY6wMkx69j + id = "vo_JQEa410sssUFoY6wMkx69j" } @@ -260,7 +260,7 @@ def __init__(__self__, to = aws_cloudfront_vpc_origin.origin - id = vo_JQEa410sssUFoY6wMkx69j + id = "vo_JQEa410sssUFoY6wMkx69j" } diff --git a/sdk/python/pulumi_aws/cloudwatch/__init__.py b/sdk/python/pulumi_aws/cloudwatch/__init__.py index 517789c57ad..278e99b08a9 100644 --- a/sdk/python/pulumi_aws/cloudwatch/__init__.py +++ b/sdk/python/pulumi_aws/cloudwatch/__init__.py @@ -17,6 +17,7 @@ from .event_rule import * from .event_target import * from .get_event_bus import * +from .get_event_buses import * from .get_event_connection import * from .get_event_source import * from .get_log_data_protection_policy_document import * @@ -26,9 +27,14 @@ from .log_account_policy import * from .log_anomaly_detector import * from .log_data_protection_policy import * +from .log_delivery import * +from .log_delivery_destination import * +from .log_delivery_destination_policy import * +from .log_delivery_source import * from .log_destination import * from .log_destination_policy import * from .log_group import * +from .log_index_policy import * from .log_metric_filter import * from .log_resource_policy import * from .log_stream import * diff --git a/sdk/python/pulumi_aws/cloudwatch/_inputs.py b/sdk/python/pulumi_aws/cloudwatch/_inputs.py index e9335006b9e..66ba6d75151 100644 --- a/sdk/python/pulumi_aws/cloudwatch/_inputs.py +++ b/sdk/python/pulumi_aws/cloudwatch/_inputs.py @@ -97,6 +97,10 @@ 'InternetMonitorInternetMeasurementsLogDeliveryArgsDict', 'InternetMonitorInternetMeasurementsLogDeliveryS3ConfigArgs', 'InternetMonitorInternetMeasurementsLogDeliveryS3ConfigArgsDict', + 'LogDeliveryDestinationDeliveryDestinationConfigurationArgs', + 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict', + 'LogDeliveryS3DeliveryConfigurationArgs', + 'LogDeliveryS3DeliveryConfigurationArgsDict', 'LogMetricFilterMetricTransformationArgs', 'LogMetricFilterMetricTransformationArgsDict', 'MetricAlarmMetricQueryArgs', @@ -2695,6 +2699,87 @@ def log_delivery_status(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "log_delivery_status", value) +if not MYPY: + class LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict(TypedDict): + destination_resource_arn: pulumi.Input[str] + """ + The ARN of the AWS destination that this delivery destination represents. + """ +elif False: + LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class LogDeliveryDestinationDeliveryDestinationConfigurationArgs: + def __init__(__self__, *, + destination_resource_arn: pulumi.Input[str]): + """ + :param pulumi.Input[str] destination_resource_arn: The ARN of the AWS destination that this delivery destination represents. + """ + pulumi.set(__self__, "destination_resource_arn", destination_resource_arn) + + @property + @pulumi.getter(name="destinationResourceArn") + def destination_resource_arn(self) -> pulumi.Input[str]: + """ + The ARN of the AWS destination that this delivery destination represents. + """ + return pulumi.get(self, "destination_resource_arn") + + @destination_resource_arn.setter + def destination_resource_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "destination_resource_arn", value) + + +if not MYPY: + class LogDeliveryS3DeliveryConfigurationArgsDict(TypedDict): + enable_hive_compatible_path: pulumi.Input[bool] + """ + This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + """ + suffix_path: pulumi.Input[str] + """ + This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + """ +elif False: + LogDeliveryS3DeliveryConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class LogDeliveryS3DeliveryConfigurationArgs: + def __init__(__self__, *, + enable_hive_compatible_path: pulumi.Input[bool], + suffix_path: pulumi.Input[str]): + """ + :param pulumi.Input[bool] enable_hive_compatible_path: This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + :param pulumi.Input[str] suffix_path: This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + """ + pulumi.set(__self__, "enable_hive_compatible_path", enable_hive_compatible_path) + pulumi.set(__self__, "suffix_path", suffix_path) + + @property + @pulumi.getter(name="enableHiveCompatiblePath") + def enable_hive_compatible_path(self) -> pulumi.Input[bool]: + """ + This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + """ + return pulumi.get(self, "enable_hive_compatible_path") + + @enable_hive_compatible_path.setter + def enable_hive_compatible_path(self, value: pulumi.Input[bool]): + pulumi.set(self, "enable_hive_compatible_path", value) + + @property + @pulumi.getter(name="suffixPath") + def suffix_path(self) -> pulumi.Input[str]: + """ + This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + """ + return pulumi.get(self, "suffix_path") + + @suffix_path.setter + def suffix_path(self, value: pulumi.Input[str]): + pulumi.set(self, "suffix_path", value) + + if not MYPY: class LogMetricFilterMetricTransformationArgsDict(TypedDict): name: pulumi.Input[str] diff --git a/sdk/python/pulumi_aws/cloudwatch/get_event_buses.py b/sdk/python/pulumi_aws/cloudwatch/get_event_buses.py new file mode 100644 index 00000000000..008ac55bab5 --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/get_event_buses.py @@ -0,0 +1,128 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetEventBusesResult', + 'AwaitableGetEventBusesResult', + 'get_event_buses', + 'get_event_buses_output', +] + +@pulumi.output_type +class GetEventBusesResult: + """ + A collection of values returned by getEventBuses. + """ + def __init__(__self__, event_buses=None, id=None, name_prefix=None): + if event_buses and not isinstance(event_buses, list): + raise TypeError("Expected argument 'event_buses' to be a list") + pulumi.set(__self__, "event_buses", event_buses) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name_prefix and not isinstance(name_prefix, str): + raise TypeError("Expected argument 'name_prefix' to be a str") + pulumi.set(__self__, "name_prefix", name_prefix) + + @property + @pulumi.getter(name="eventBuses") + def event_buses(self) -> Sequence['outputs.GetEventBusesEventBusResult']: + """ + This list of event buses. + """ + return pulumi.get(self, "event_buses") + + @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="namePrefix") + def name_prefix(self) -> Optional[str]: + return pulumi.get(self, "name_prefix") + + +class AwaitableGetEventBusesResult(GetEventBusesResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetEventBusesResult( + event_buses=self.event_buses, + id=self.id, + name_prefix=self.name_prefix) + + +def get_event_buses(name_prefix: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetEventBusesResult: + """ + Data source for managing an AWS EventBridge Event Buses. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.get_event_buses(name_prefix="test") + ``` + + + :param str name_prefix: Specifying this limits the results to only those event buses with names that start with the specified prefix. + """ + __args__ = dict() + __args__['namePrefix'] = name_prefix + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws:cloudwatch/getEventBuses:getEventBuses', __args__, opts=opts, typ=GetEventBusesResult).value + + return AwaitableGetEventBusesResult( + event_buses=pulumi.get(__ret__, 'event_buses'), + id=pulumi.get(__ret__, 'id'), + name_prefix=pulumi.get(__ret__, 'name_prefix')) +def get_event_buses_output(name_prefix: Optional[pulumi.Input[Optional[str]]] = None, + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetEventBusesResult]: + """ + Data source for managing an AWS EventBridge Event Buses. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.get_event_buses(name_prefix="test") + ``` + + + :param str name_prefix: Specifying this limits the results to only those event buses with names that start with the specified prefix. + """ + __args__ = dict() + __args__['namePrefix'] = name_prefix + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws:cloudwatch/getEventBuses:getEventBuses', __args__, opts=opts, typ=GetEventBusesResult) + return __ret__.apply(lambda __response__: GetEventBusesResult( + event_buses=pulumi.get(__response__, 'event_buses'), + id=pulumi.get(__response__, 'id'), + name_prefix=pulumi.get(__response__, 'name_prefix'))) diff --git a/sdk/python/pulumi_aws/cloudwatch/log_delivery.py b/sdk/python/pulumi_aws/cloudwatch/log_delivery.py new file mode 100644 index 00000000000..ae0ac54e3b2 --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/log_delivery.py @@ -0,0 +1,502 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['LogDeliveryArgs', 'LogDelivery'] + +@pulumi.input_type +class LogDeliveryArgs: + def __init__(__self__, *, + delivery_destination_arn: pulumi.Input[str], + delivery_source_name: pulumi.Input[str], + field_delimiter: Optional[pulumi.Input[str]] = None, + record_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + s3_delivery_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a LogDelivery resource. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination to use for this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source to use for this delivery. + :param pulumi.Input[str] field_delimiter: The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + :param pulumi.Input[Sequence[pulumi.Input[str]]] record_fields: The list of record fields to be delivered to the destination, in order. + :param pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]] s3_delivery_configurations: Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + pulumi.set(__self__, "delivery_destination_arn", delivery_destination_arn) + pulumi.set(__self__, "delivery_source_name", delivery_source_name) + if field_delimiter is not None: + pulumi.set(__self__, "field_delimiter", field_delimiter) + if record_fields is not None: + pulumi.set(__self__, "record_fields", record_fields) + if s3_delivery_configurations is not None: + pulumi.set(__self__, "s3_delivery_configurations", s3_delivery_configurations) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="deliveryDestinationArn") + def delivery_destination_arn(self) -> pulumi.Input[str]: + """ + The ARN of the delivery destination to use for this delivery. + """ + return pulumi.get(self, "delivery_destination_arn") + + @delivery_destination_arn.setter + def delivery_destination_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "delivery_destination_arn", value) + + @property + @pulumi.getter(name="deliverySourceName") + def delivery_source_name(self) -> pulumi.Input[str]: + """ + The name of the delivery source to use for this delivery. + """ + return pulumi.get(self, "delivery_source_name") + + @delivery_source_name.setter + def delivery_source_name(self, value: pulumi.Input[str]): + pulumi.set(self, "delivery_source_name", value) + + @property + @pulumi.getter(name="fieldDelimiter") + def field_delimiter(self) -> Optional[pulumi.Input[str]]: + """ + The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + """ + return pulumi.get(self, "field_delimiter") + + @field_delimiter.setter + def field_delimiter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "field_delimiter", value) + + @property + @pulumi.getter(name="recordFields") + def record_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The list of record fields to be delivered to the destination, in order. + """ + return pulumi.get(self, "record_fields") + + @record_fields.setter + def record_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "record_fields", value) + + @property + @pulumi.getter(name="s3DeliveryConfigurations") + def s3_delivery_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]]: + """ + Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + """ + return pulumi.get(self, "s3_delivery_configurations") + + @s3_delivery_configurations.setter + def s3_delivery_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]]): + pulumi.set(self, "s3_delivery_configurations", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + +@pulumi.input_type +class _LogDeliveryState: + def __init__(__self__, *, + arn: Optional[pulumi.Input[str]] = None, + delivery_destination_arn: Optional[pulumi.Input[str]] = None, + delivery_source_name: Optional[pulumi.Input[str]] = None, + field_delimiter: Optional[pulumi.Input[str]] = None, + record_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + s3_delivery_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + Input properties used for looking up and filtering LogDelivery resources. + :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) of the delivery. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination to use for this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source to use for this delivery. + :param pulumi.Input[str] field_delimiter: The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + :param pulumi.Input[Sequence[pulumi.Input[str]]] record_fields: The list of record fields to be delivered to the destination, in order. + :param pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]] s3_delivery_configurations: Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + if arn is not None: + pulumi.set(__self__, "arn", arn) + if delivery_destination_arn is not None: + pulumi.set(__self__, "delivery_destination_arn", delivery_destination_arn) + if delivery_source_name is not None: + pulumi.set(__self__, "delivery_source_name", delivery_source_name) + if field_delimiter is not None: + pulumi.set(__self__, "field_delimiter", field_delimiter) + if record_fields is not None: + pulumi.set(__self__, "record_fields", record_fields) + if s3_delivery_configurations is not None: + pulumi.set(__self__, "s3_delivery_configurations", s3_delivery_configurations) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tags_all is not None: + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + if tags_all is not None: + pulumi.set(__self__, "tags_all", tags_all) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the delivery. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="deliveryDestinationArn") + def delivery_destination_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the delivery destination to use for this delivery. + """ + return pulumi.get(self, "delivery_destination_arn") + + @delivery_destination_arn.setter + def delivery_destination_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delivery_destination_arn", value) + + @property + @pulumi.getter(name="deliverySourceName") + def delivery_source_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the delivery source to use for this delivery. + """ + return pulumi.get(self, "delivery_source_name") + + @delivery_source_name.setter + def delivery_source_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delivery_source_name", value) + + @property + @pulumi.getter(name="fieldDelimiter") + def field_delimiter(self) -> Optional[pulumi.Input[str]]: + """ + The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + """ + return pulumi.get(self, "field_delimiter") + + @field_delimiter.setter + def field_delimiter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "field_delimiter", value) + + @property + @pulumi.getter(name="recordFields") + def record_fields(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The list of record fields to be delivered to the destination, in order. + """ + return pulumi.get(self, "record_fields") + + @record_fields.setter + def record_fields(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "record_fields", value) + + @property + @pulumi.getter(name="s3DeliveryConfigurations") + def s3_delivery_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]]: + """ + Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + """ + return pulumi.get(self, "s3_delivery_configurations") + + @s3_delivery_configurations.setter + def s3_delivery_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['LogDeliveryS3DeliveryConfigurationArgs']]]]): + pulumi.set(self, "s3_delivery_configurations", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + + @tags_all.setter + def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags_all", value) + + +class LogDelivery(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_arn: Optional[pulumi.Input[str]] = None, + delivery_source_name: Optional[pulumi.Input[str]] = None, + field_delimiter: Optional[pulumi.Input[str]] = None, + record_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + s3_delivery_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LogDeliveryS3DeliveryConfigurationArgs', 'LogDeliveryS3DeliveryConfigurationArgsDict']]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + """ + Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `cloudwatch.LogDeliverySource` and an `cloudwatch.LogDeliveryDestination`. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDelivery("example", + delivery_source_name=example_aws_cloudwatch_log_delivery_source["name"], + delivery_destination_arn=example_aws_cloudwatch_log_delivery_destination["arn"], + field_delimiter=",", + record_fields=[ + "event_timestamp", + "event", + ]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination to use for this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source to use for this delivery. + :param pulumi.Input[str] field_delimiter: The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + :param pulumi.Input[Sequence[pulumi.Input[str]]] record_fields: The list of record fields to be delivered to the destination, in order. + :param pulumi.Input[Sequence[pulumi.Input[Union['LogDeliveryS3DeliveryConfigurationArgs', 'LogDeliveryS3DeliveryConfigurationArgsDict']]]] s3_delivery_configurations: Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: LogDeliveryArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS CloudWatch Logs Delivery. A delivery is a connection between an `cloudwatch.LogDeliverySource` and an `cloudwatch.LogDeliveryDestination`. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDelivery("example", + delivery_source_name=example_aws_cloudwatch_log_delivery_source["name"], + delivery_destination_arn=example_aws_cloudwatch_log_delivery_destination["arn"], + field_delimiter=",", + record_fields=[ + "event_timestamp", + "event", + ]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery using the `id`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDelivery:LogDelivery example jsoGVi4Zq8VlYp9n + ``` + + :param str resource_name: The name of the resource. + :param LogDeliveryArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(LogDeliveryArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_arn: Optional[pulumi.Input[str]] = None, + delivery_source_name: Optional[pulumi.Input[str]] = None, + field_delimiter: Optional[pulumi.Input[str]] = None, + record_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + s3_delivery_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LogDeliveryS3DeliveryConfigurationArgs', 'LogDeliveryS3DeliveryConfigurationArgsDict']]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = LogDeliveryArgs.__new__(LogDeliveryArgs) + + if delivery_destination_arn is None and not opts.urn: + raise TypeError("Missing required property 'delivery_destination_arn'") + __props__.__dict__["delivery_destination_arn"] = delivery_destination_arn + if delivery_source_name is None and not opts.urn: + raise TypeError("Missing required property 'delivery_source_name'") + __props__.__dict__["delivery_source_name"] = delivery_source_name + __props__.__dict__["field_delimiter"] = field_delimiter + __props__.__dict__["record_fields"] = record_fields + __props__.__dict__["s3_delivery_configurations"] = s3_delivery_configurations + __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + __props__.__dict__["tags_all"] = None + super(LogDelivery, __self__).__init__( + 'aws:cloudwatch/logDelivery:LogDelivery', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + arn: Optional[pulumi.Input[str]] = None, + delivery_destination_arn: Optional[pulumi.Input[str]] = None, + delivery_source_name: Optional[pulumi.Input[str]] = None, + field_delimiter: Optional[pulumi.Input[str]] = None, + record_fields: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + s3_delivery_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['LogDeliveryS3DeliveryConfigurationArgs', 'LogDeliveryS3DeliveryConfigurationArgsDict']]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'LogDelivery': + """ + Get an existing LogDelivery 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[str] arn: The Amazon Resource Name (ARN) of the delivery. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination to use for this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source to use for this delivery. + :param pulumi.Input[str] field_delimiter: The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + :param pulumi.Input[Sequence[pulumi.Input[str]]] record_fields: The list of record fields to be delivered to the destination, in order. + :param pulumi.Input[Sequence[pulumi.Input[Union['LogDeliveryS3DeliveryConfigurationArgs', 'LogDeliveryS3DeliveryConfigurationArgsDict']]]] s3_delivery_configurations: Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LogDeliveryState.__new__(_LogDeliveryState) + + __props__.__dict__["arn"] = arn + __props__.__dict__["delivery_destination_arn"] = delivery_destination_arn + __props__.__dict__["delivery_source_name"] = delivery_source_name + __props__.__dict__["field_delimiter"] = field_delimiter + __props__.__dict__["record_fields"] = record_fields + __props__.__dict__["s3_delivery_configurations"] = s3_delivery_configurations + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + return LogDelivery(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the delivery. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="deliveryDestinationArn") + def delivery_destination_arn(self) -> pulumi.Output[str]: + """ + The ARN of the delivery destination to use for this delivery. + """ + return pulumi.get(self, "delivery_destination_arn") + + @property + @pulumi.getter(name="deliverySourceName") + def delivery_source_name(self) -> pulumi.Output[str]: + """ + The name of the delivery source to use for this delivery. + """ + return pulumi.get(self, "delivery_source_name") + + @property + @pulumi.getter(name="fieldDelimiter") + def field_delimiter(self) -> pulumi.Output[Optional[str]]: + """ + The field delimiter to use between record fields when the final output format of a delivery is in `plain`, `w3c`, or `raw` format. + """ + return pulumi.get(self, "field_delimiter") + + @property + @pulumi.getter(name="recordFields") + def record_fields(self) -> pulumi.Output[Sequence[str]]: + """ + The list of record fields to be delivered to the destination, in order. + """ + return pulumi.get(self, "record_fields") + + @property + @pulumi.getter(name="s3DeliveryConfigurations") + def s3_delivery_configurations(self) -> pulumi.Output[Sequence['outputs.LogDeliveryS3DeliveryConfiguration']]: + """ + Parameters that are valid only when the delivery's delivery destination is an S3 bucket. + """ + return pulumi.get(self, "s3_delivery_configurations") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> pulumi.Output[Mapping[str, str]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + diff --git a/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination.py b/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination.py new file mode 100644 index 00000000000..1495ed3a982 --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination.py @@ -0,0 +1,428 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['LogDeliveryDestinationArgs', 'LogDeliveryDestination'] + +@pulumi.input_type +class LogDeliveryDestinationArgs: + def __init__(__self__, *, + delivery_destination_configuration: Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']] = None, + name: Optional[pulumi.Input[str]] = None, + output_format: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a LogDeliveryDestination resource. + :param pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs'] delivery_destination_configuration: The AWS resource that will receive the logs. + :param pulumi.Input[str] name: The name for this delivery destination. + :param pulumi.Input[str] output_format: The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + if delivery_destination_configuration is not None: + pulumi.set(__self__, "delivery_destination_configuration", delivery_destination_configuration) + if name is not None: + pulumi.set(__self__, "name", name) + if output_format is not None: + pulumi.set(__self__, "output_format", output_format) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="deliveryDestinationConfiguration") + def delivery_destination_configuration(self) -> Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']]: + """ + The AWS resource that will receive the logs. + """ + return pulumi.get(self, "delivery_destination_configuration") + + @delivery_destination_configuration.setter + def delivery_destination_configuration(self, value: Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']]): + pulumi.set(self, "delivery_destination_configuration", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The name for this delivery destination. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="outputFormat") + def output_format(self) -> Optional[pulumi.Input[str]]: + """ + The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + """ + return pulumi.get(self, "output_format") + + @output_format.setter + def output_format(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "output_format", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + +@pulumi.input_type +class _LogDeliveryDestinationState: + def __init__(__self__, *, + arn: Optional[pulumi.Input[str]] = None, + delivery_destination_configuration: Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']] = None, + delivery_destination_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + output_format: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + Input properties used for looking up and filtering LogDeliveryDestination resources. + :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) of the delivery destination. + :param pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs'] delivery_destination_configuration: The AWS resource that will receive the logs. + :param pulumi.Input[str] delivery_destination_type: Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + :param pulumi.Input[str] name: The name for this delivery destination. + :param pulumi.Input[str] output_format: The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + if arn is not None: + pulumi.set(__self__, "arn", arn) + if delivery_destination_configuration is not None: + pulumi.set(__self__, "delivery_destination_configuration", delivery_destination_configuration) + if delivery_destination_type is not None: + pulumi.set(__self__, "delivery_destination_type", delivery_destination_type) + if name is not None: + pulumi.set(__self__, "name", name) + if output_format is not None: + pulumi.set(__self__, "output_format", output_format) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tags_all is not None: + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + if tags_all is not None: + pulumi.set(__self__, "tags_all", tags_all) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the delivery destination. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="deliveryDestinationConfiguration") + def delivery_destination_configuration(self) -> Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']]: + """ + The AWS resource that will receive the logs. + """ + return pulumi.get(self, "delivery_destination_configuration") + + @delivery_destination_configuration.setter + def delivery_destination_configuration(self, value: Optional[pulumi.Input['LogDeliveryDestinationDeliveryDestinationConfigurationArgs']]): + pulumi.set(self, "delivery_destination_configuration", value) + + @property + @pulumi.getter(name="deliveryDestinationType") + def delivery_destination_type(self) -> Optional[pulumi.Input[str]]: + """ + Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + """ + return pulumi.get(self, "delivery_destination_type") + + @delivery_destination_type.setter + def delivery_destination_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delivery_destination_type", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The name for this delivery destination. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="outputFormat") + def output_format(self) -> Optional[pulumi.Input[str]]: + """ + The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + """ + return pulumi.get(self, "output_format") + + @output_format.setter + def output_format(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "output_format", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + + @tags_all.setter + def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags_all", value) + + +class LogDeliveryDestination(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_configuration: Optional[pulumi.Input[Union['LogDeliveryDestinationDeliveryDestinationConfigurationArgs', 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict']]] = None, + name: Optional[pulumi.Input[str]] = None, + output_format: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Destination. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliveryDestination("example", + name="example", + delivery_destination_configuration={ + "destination_resource_arn": example_aws_cloudwatch_log_group["arn"], + }) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Union['LogDeliveryDestinationDeliveryDestinationConfigurationArgs', 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict']] delivery_destination_configuration: The AWS resource that will receive the logs. + :param pulumi.Input[str] name: The name for this delivery destination. + :param pulumi.Input[str] output_format: The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[LogDeliveryDestinationArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Destination. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliveryDestination("example", + name="example", + delivery_destination_configuration={ + "destination_resource_arn": example_aws_cloudwatch_log_group["arn"], + }) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Destination using the `name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination example example + ``` + + :param str resource_name: The name of the resource. + :param LogDeliveryDestinationArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(LogDeliveryDestinationArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_configuration: Optional[pulumi.Input[Union['LogDeliveryDestinationDeliveryDestinationConfigurationArgs', 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict']]] = None, + name: Optional[pulumi.Input[str]] = None, + output_format: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = LogDeliveryDestinationArgs.__new__(LogDeliveryDestinationArgs) + + __props__.__dict__["delivery_destination_configuration"] = delivery_destination_configuration + __props__.__dict__["name"] = name + __props__.__dict__["output_format"] = output_format + __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + __props__.__dict__["delivery_destination_type"] = None + __props__.__dict__["tags_all"] = None + super(LogDeliveryDestination, __self__).__init__( + 'aws:cloudwatch/logDeliveryDestination:LogDeliveryDestination', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + arn: Optional[pulumi.Input[str]] = None, + delivery_destination_configuration: Optional[pulumi.Input[Union['LogDeliveryDestinationDeliveryDestinationConfigurationArgs', 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict']]] = None, + delivery_destination_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + output_format: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'LogDeliveryDestination': + """ + Get an existing LogDeliveryDestination 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[str] arn: The Amazon Resource Name (ARN) of the delivery destination. + :param pulumi.Input[Union['LogDeliveryDestinationDeliveryDestinationConfigurationArgs', 'LogDeliveryDestinationDeliveryDestinationConfigurationArgsDict']] delivery_destination_configuration: The AWS resource that will receive the logs. + :param pulumi.Input[str] delivery_destination_type: Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + :param pulumi.Input[str] name: The name for this delivery destination. + :param pulumi.Input[str] output_format: The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LogDeliveryDestinationState.__new__(_LogDeliveryDestinationState) + + __props__.__dict__["arn"] = arn + __props__.__dict__["delivery_destination_configuration"] = delivery_destination_configuration + __props__.__dict__["delivery_destination_type"] = delivery_destination_type + __props__.__dict__["name"] = name + __props__.__dict__["output_format"] = output_format + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + return LogDeliveryDestination(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the delivery destination. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="deliveryDestinationConfiguration") + def delivery_destination_configuration(self) -> pulumi.Output[Optional['outputs.LogDeliveryDestinationDeliveryDestinationConfiguration']]: + """ + The AWS resource that will receive the logs. + """ + return pulumi.get(self, "delivery_destination_configuration") + + @property + @pulumi.getter(name="deliveryDestinationType") + def delivery_destination_type(self) -> pulumi.Output[str]: + """ + Whether this delivery destination is CloudWatch Logs, Amazon S3, or Firehose. + """ + return pulumi.get(self, "delivery_destination_type") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + The name for this delivery destination. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="outputFormat") + def output_format(self) -> pulumi.Output[Optional[str]]: + """ + The format of the logs that are sent to this delivery destination. Valid values: `json`, `plain`, `w3c`, `raw`, `parquet`. + """ + return pulumi.get(self, "output_format") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> pulumi.Output[Mapping[str, str]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + diff --git a/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination_policy.py b/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination_policy.py new file mode 100644 index 00000000000..1c41f1799a3 --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/log_delivery_destination_policy.py @@ -0,0 +1,241 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = ['LogDeliveryDestinationPolicyArgs', 'LogDeliveryDestinationPolicy'] + +@pulumi.input_type +class LogDeliveryDestinationPolicyArgs: + def __init__(__self__, *, + delivery_destination_name: pulumi.Input[str], + delivery_destination_policy: pulumi.Input[str]): + """ + The set of arguments for constructing a LogDeliveryDestinationPolicy resource. + :param pulumi.Input[str] delivery_destination_name: The name of the delivery destination to assign this policy to. + :param pulumi.Input[str] delivery_destination_policy: The contents of the policy. + """ + pulumi.set(__self__, "delivery_destination_name", delivery_destination_name) + pulumi.set(__self__, "delivery_destination_policy", delivery_destination_policy) + + @property + @pulumi.getter(name="deliveryDestinationName") + def delivery_destination_name(self) -> pulumi.Input[str]: + """ + The name of the delivery destination to assign this policy to. + """ + return pulumi.get(self, "delivery_destination_name") + + @delivery_destination_name.setter + def delivery_destination_name(self, value: pulumi.Input[str]): + pulumi.set(self, "delivery_destination_name", value) + + @property + @pulumi.getter(name="deliveryDestinationPolicy") + def delivery_destination_policy(self) -> pulumi.Input[str]: + """ + The contents of the policy. + """ + return pulumi.get(self, "delivery_destination_policy") + + @delivery_destination_policy.setter + def delivery_destination_policy(self, value: pulumi.Input[str]): + pulumi.set(self, "delivery_destination_policy", value) + + +@pulumi.input_type +class _LogDeliveryDestinationPolicyState: + def __init__(__self__, *, + delivery_destination_name: Optional[pulumi.Input[str]] = None, + delivery_destination_policy: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering LogDeliveryDestinationPolicy resources. + :param pulumi.Input[str] delivery_destination_name: The name of the delivery destination to assign this policy to. + :param pulumi.Input[str] delivery_destination_policy: The contents of the policy. + """ + if delivery_destination_name is not None: + pulumi.set(__self__, "delivery_destination_name", delivery_destination_name) + if delivery_destination_policy is not None: + pulumi.set(__self__, "delivery_destination_policy", delivery_destination_policy) + + @property + @pulumi.getter(name="deliveryDestinationName") + def delivery_destination_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the delivery destination to assign this policy to. + """ + return pulumi.get(self, "delivery_destination_name") + + @delivery_destination_name.setter + def delivery_destination_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delivery_destination_name", value) + + @property + @pulumi.getter(name="deliveryDestinationPolicy") + def delivery_destination_policy(self) -> Optional[pulumi.Input[str]]: + """ + The contents of the policy. + """ + return pulumi.get(self, "delivery_destination_policy") + + @delivery_destination_policy.setter + def delivery_destination_policy(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delivery_destination_policy", value) + + +class LogDeliveryDestinationPolicy(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_name: Optional[pulumi.Input[str]] = None, + delivery_destination_policy: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliveryDestinationPolicy("example", + delivery_destination_name=example_aws_cloudwatch_log_delivery_destination["name"], + delivery_destination_policy=example_aws_iam_policy_document["json"]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] delivery_destination_name: The name of the delivery destination to assign this policy to. + :param pulumi.Input[str] delivery_destination_policy: The contents of the policy. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: LogDeliveryDestinationPolicyArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Destination Policy. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliveryDestinationPolicy("example", + delivery_destination_name=example_aws_cloudwatch_log_delivery_destination["name"], + delivery_destination_policy=example_aws_iam_policy_document["json"]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Destination Policy using the `delivery_destination_name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy example example + ``` + + :param str resource_name: The name of the resource. + :param LogDeliveryDestinationPolicyArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(LogDeliveryDestinationPolicyArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_name: Optional[pulumi.Input[str]] = None, + delivery_destination_policy: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = LogDeliveryDestinationPolicyArgs.__new__(LogDeliveryDestinationPolicyArgs) + + if delivery_destination_name is None and not opts.urn: + raise TypeError("Missing required property 'delivery_destination_name'") + __props__.__dict__["delivery_destination_name"] = delivery_destination_name + if delivery_destination_policy is None and not opts.urn: + raise TypeError("Missing required property 'delivery_destination_policy'") + __props__.__dict__["delivery_destination_policy"] = delivery_destination_policy + super(LogDeliveryDestinationPolicy, __self__).__init__( + 'aws:cloudwatch/logDeliveryDestinationPolicy:LogDeliveryDestinationPolicy', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + delivery_destination_name: Optional[pulumi.Input[str]] = None, + delivery_destination_policy: Optional[pulumi.Input[str]] = None) -> 'LogDeliveryDestinationPolicy': + """ + Get an existing LogDeliveryDestinationPolicy 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[str] delivery_destination_name: The name of the delivery destination to assign this policy to. + :param pulumi.Input[str] delivery_destination_policy: The contents of the policy. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LogDeliveryDestinationPolicyState.__new__(_LogDeliveryDestinationPolicyState) + + __props__.__dict__["delivery_destination_name"] = delivery_destination_name + __props__.__dict__["delivery_destination_policy"] = delivery_destination_policy + return LogDeliveryDestinationPolicy(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="deliveryDestinationName") + def delivery_destination_name(self) -> pulumi.Output[str]: + """ + The name of the delivery destination to assign this policy to. + """ + return pulumi.get(self, "delivery_destination_name") + + @property + @pulumi.getter(name="deliveryDestinationPolicy") + def delivery_destination_policy(self) -> pulumi.Output[str]: + """ + The contents of the policy. + """ + return pulumi.get(self, "delivery_destination_policy") + diff --git a/sdk/python/pulumi_aws/cloudwatch/log_delivery_source.py b/sdk/python/pulumi_aws/cloudwatch/log_delivery_source.py new file mode 100644 index 00000000000..c47cb4f6d2d --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/log_delivery_source.py @@ -0,0 +1,426 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = ['LogDeliverySourceArgs', 'LogDeliverySource'] + +@pulumi.input_type +class LogDeliverySourceArgs: + def __init__(__self__, *, + log_type: pulumi.Input[str], + resource_arn: pulumi.Input[str], + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a LogDeliverySource resource. + :param pulumi.Input[str] log_type: The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + :param pulumi.Input[str] resource_arn: The ARN of the AWS resource that is generating and sending logs. + :param pulumi.Input[str] name: The name for this delivery source. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + pulumi.set(__self__, "log_type", log_type) + pulumi.set(__self__, "resource_arn", resource_arn) + if name is not None: + pulumi.set(__self__, "name", name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="logType") + def log_type(self) -> pulumi.Input[str]: + """ + The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + """ + return pulumi.get(self, "log_type") + + @log_type.setter + def log_type(self, value: pulumi.Input[str]): + pulumi.set(self, "log_type", value) + + @property + @pulumi.getter(name="resourceArn") + def resource_arn(self) -> pulumi.Input[str]: + """ + The ARN of the AWS resource that is generating and sending logs. + """ + return pulumi.get(self, "resource_arn") + + @resource_arn.setter + def resource_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_arn", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The name for this delivery source. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + +@pulumi.input_type +class _LogDeliverySourceState: + def __init__(__self__, *, + arn: Optional[pulumi.Input[str]] = None, + log_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + resource_arn: Optional[pulumi.Input[str]] = None, + service: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + Input properties used for looking up and filtering LogDeliverySource resources. + :param pulumi.Input[str] arn: The Amazon Resource Name (ARN) of the delivery source. + :param pulumi.Input[str] log_type: The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + :param pulumi.Input[str] name: The name for this delivery source. + :param pulumi.Input[str] resource_arn: The ARN of the AWS resource that is generating and sending logs. + :param pulumi.Input[str] service: The AWS service that is sending logs. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + if arn is not None: + pulumi.set(__self__, "arn", arn) + if log_type is not None: + pulumi.set(__self__, "log_type", log_type) + if name is not None: + pulumi.set(__self__, "name", name) + if resource_arn is not None: + pulumi.set(__self__, "resource_arn", resource_arn) + if service is not None: + pulumi.set(__self__, "service", service) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tags_all is not None: + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + if tags_all is not None: + pulumi.set(__self__, "tags_all", tags_all) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the delivery source. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="logType") + def log_type(self) -> Optional[pulumi.Input[str]]: + """ + The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + """ + return pulumi.get(self, "log_type") + + @log_type.setter + def log_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "log_type", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The name for this delivery source. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="resourceArn") + def resource_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the AWS resource that is generating and sending logs. + """ + return pulumi.get(self, "resource_arn") + + @resource_arn.setter + def resource_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_arn", value) + + @property + @pulumi.getter + def service(self) -> Optional[pulumi.Input[str]]: + """ + The AWS service that is sending logs. + """ + return pulumi.get(self, "service") + + @service.setter + def service(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "service", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + + @tags_all.setter + def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags_all", value) + + +class LogDeliverySource(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + resource_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Source. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliverySource("example", + name="example", + log_type="APPLICATION_LOGS", + resource_arn=example_aws_bedrockagent_knowledge_base["arn"]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] log_type: The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + :param pulumi.Input[str] name: The name for this delivery source. + :param pulumi.Input[str] resource_arn: The ARN of the AWS resource that is generating and sending logs. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: LogDeliverySourceArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS CloudWatch Logs Delivery Source. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.cloudwatch.LogDeliverySource("example", + name="example", + log_type="APPLICATION_LOGS", + resource_arn=example_aws_bedrockagent_knowledge_base["arn"]) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Delivery Source using the `name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logDeliverySource:LogDeliverySource example example + ``` + + :param str resource_name: The name of the resource. + :param LogDeliverySourceArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(LogDeliverySourceArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + resource_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = LogDeliverySourceArgs.__new__(LogDeliverySourceArgs) + + if log_type is None and not opts.urn: + raise TypeError("Missing required property 'log_type'") + __props__.__dict__["log_type"] = log_type + __props__.__dict__["name"] = name + if resource_arn is None and not opts.urn: + raise TypeError("Missing required property 'resource_arn'") + __props__.__dict__["resource_arn"] = resource_arn + __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + __props__.__dict__["service"] = None + __props__.__dict__["tags_all"] = None + super(LogDeliverySource, __self__).__init__( + 'aws:cloudwatch/logDeliverySource:LogDeliverySource', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + arn: Optional[pulumi.Input[str]] = None, + log_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + resource_arn: Optional[pulumi.Input[str]] = None, + service: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'LogDeliverySource': + """ + Get an existing LogDeliverySource 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[str] arn: The Amazon Resource Name (ARN) of the delivery source. + :param pulumi.Input[str] log_type: The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + :param pulumi.Input[str] name: The name for this delivery source. + :param pulumi.Input[str] resource_arn: The ARN of the AWS resource that is generating and sending logs. + :param pulumi.Input[str] service: The AWS service that is sending logs. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LogDeliverySourceState.__new__(_LogDeliverySourceState) + + __props__.__dict__["arn"] = arn + __props__.__dict__["log_type"] = log_type + __props__.__dict__["name"] = name + __props__.__dict__["resource_arn"] = resource_arn + __props__.__dict__["service"] = service + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + return LogDeliverySource(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the delivery source. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="logType") + def log_type(self) -> pulumi.Output[str]: + """ + The type of log that the source is sending. For Amazon Bedrock, the valid value is `APPLICATION_LOGS`. For Amazon CodeWhisperer, the valid value is `EVENT_LOGS`. For IAM Identity Center, the valid value is `ERROR_LOGS`. For Amazon WorkMail, the valid values are `ACCESS_CONTROL_LOGS`, `AUTHENTICATION_LOGS`, `WORKMAIL_AVAILABILITY_PROVIDER_LOGS`, and `WORKMAIL_MAILBOX_ACCESS_LOGS`. + """ + return pulumi.get(self, "log_type") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + The name for this delivery source. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="resourceArn") + def resource_arn(self) -> pulumi.Output[str]: + """ + The ARN of the AWS resource that is generating and sending logs. + """ + return pulumi.get(self, "resource_arn") + + @property + @pulumi.getter + def service(self) -> pulumi.Output[str]: + """ + The AWS service that is sending logs. + """ + return pulumi.get(self, "service") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> pulumi.Output[Mapping[str, str]]: + """ + A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + diff --git a/sdk/python/pulumi_aws/cloudwatch/log_index_policy.py b/sdk/python/pulumi_aws/cloudwatch/log_index_policy.py new file mode 100644 index 00000000000..c2427a1ba6d --- /dev/null +++ b/sdk/python/pulumi_aws/cloudwatch/log_index_policy.py @@ -0,0 +1,249 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = ['LogIndexPolicyArgs', 'LogIndexPolicy'] + +@pulumi.input_type +class LogIndexPolicyArgs: + def __init__(__self__, *, + log_group_name: pulumi.Input[str], + policy_document: pulumi.Input[str]): + """ + The set of arguments for constructing a LogIndexPolicy resource. + :param pulumi.Input[str] log_group_name: Log group name to set the policy for. + :param pulumi.Input[str] policy_document: JSON policy document. This is a JSON formatted string. + """ + pulumi.set(__self__, "log_group_name", log_group_name) + pulumi.set(__self__, "policy_document", policy_document) + + @property + @pulumi.getter(name="logGroupName") + def log_group_name(self) -> pulumi.Input[str]: + """ + Log group name to set the policy for. + """ + return pulumi.get(self, "log_group_name") + + @log_group_name.setter + def log_group_name(self, value: pulumi.Input[str]): + pulumi.set(self, "log_group_name", value) + + @property + @pulumi.getter(name="policyDocument") + def policy_document(self) -> pulumi.Input[str]: + """ + JSON policy document. This is a JSON formatted string. + """ + return pulumi.get(self, "policy_document") + + @policy_document.setter + def policy_document(self, value: pulumi.Input[str]): + pulumi.set(self, "policy_document", value) + + +@pulumi.input_type +class _LogIndexPolicyState: + def __init__(__self__, *, + log_group_name: Optional[pulumi.Input[str]] = None, + policy_document: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering LogIndexPolicy resources. + :param pulumi.Input[str] log_group_name: Log group name to set the policy for. + :param pulumi.Input[str] policy_document: JSON policy document. This is a JSON formatted string. + """ + if log_group_name is not None: + pulumi.set(__self__, "log_group_name", log_group_name) + if policy_document is not None: + pulumi.set(__self__, "policy_document", policy_document) + + @property + @pulumi.getter(name="logGroupName") + def log_group_name(self) -> Optional[pulumi.Input[str]]: + """ + Log group name to set the policy for. + """ + return pulumi.get(self, "log_group_name") + + @log_group_name.setter + def log_group_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "log_group_name", value) + + @property + @pulumi.getter(name="policyDocument") + def policy_document(self) -> Optional[pulumi.Input[str]]: + """ + JSON policy document. This is a JSON formatted string. + """ + return pulumi.get(self, "policy_document") + + @policy_document.setter + def policy_document(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "policy_document", value) + + +class LogIndexPolicy(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_group_name: Optional[pulumi.Input[str]] = None, + policy_document: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource for managing an AWS CloudWatch Logs Index Policy. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import json + import pulumi_aws as aws + + example = aws.cloudwatch.LogGroup("example", name="example") + example_log_index_policy = aws.cloudwatch.LogIndexPolicy("example", + log_group_name=example.name, + policy_document=json.dumps({ + "Fields": ["eventName"], + })) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] log_group_name: Log group name to set the policy for. + :param pulumi.Input[str] policy_document: JSON policy document. This is a JSON formatted string. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: LogIndexPolicyArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS CloudWatch Logs Index Policy. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import json + import pulumi_aws as aws + + example = aws.cloudwatch.LogGroup("example", name="example") + example_log_index_policy = aws.cloudwatch.LogIndexPolicy("example", + log_group_name=example.name, + policy_document=json.dumps({ + "Fields": ["eventName"], + })) + ``` + + ## Import + + Using `pulumi import`, import CloudWatch Logs Index Policy using the `log_group_name`. For example: + + ```sh + $ pulumi import aws:cloudwatch/logIndexPolicy:LogIndexPolicy example /aws/log/group/name + ``` + + :param str resource_name: The name of the resource. + :param LogIndexPolicyArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(LogIndexPolicyArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + log_group_name: Optional[pulumi.Input[str]] = None, + policy_document: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = LogIndexPolicyArgs.__new__(LogIndexPolicyArgs) + + if log_group_name is None and not opts.urn: + raise TypeError("Missing required property 'log_group_name'") + __props__.__dict__["log_group_name"] = log_group_name + if policy_document is None and not opts.urn: + raise TypeError("Missing required property 'policy_document'") + __props__.__dict__["policy_document"] = policy_document + super(LogIndexPolicy, __self__).__init__( + 'aws:cloudwatch/logIndexPolicy:LogIndexPolicy', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + log_group_name: Optional[pulumi.Input[str]] = None, + policy_document: Optional[pulumi.Input[str]] = None) -> 'LogIndexPolicy': + """ + Get an existing LogIndexPolicy 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[str] log_group_name: Log group name to set the policy for. + :param pulumi.Input[str] policy_document: JSON policy document. This is a JSON formatted string. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _LogIndexPolicyState.__new__(_LogIndexPolicyState) + + __props__.__dict__["log_group_name"] = log_group_name + __props__.__dict__["policy_document"] = policy_document + return LogIndexPolicy(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="logGroupName") + def log_group_name(self) -> pulumi.Output[str]: + """ + Log group name to set the policy for. + """ + return pulumi.get(self, "log_group_name") + + @property + @pulumi.getter(name="policyDocument") + def policy_document(self) -> pulumi.Output[str]: + """ + JSON policy document. This is a JSON formatted string. + """ + return pulumi.get(self, "policy_document") + diff --git a/sdk/python/pulumi_aws/cloudwatch/outputs.py b/sdk/python/pulumi_aws/cloudwatch/outputs.py index 003c58a4c3b..689a2e3b24f 100644 --- a/sdk/python/pulumi_aws/cloudwatch/outputs.py +++ b/sdk/python/pulumi_aws/cloudwatch/outputs.py @@ -57,6 +57,8 @@ 'InternetMonitorHealthEventsConfig', 'InternetMonitorInternetMeasurementsLogDelivery', 'InternetMonitorInternetMeasurementsLogDeliveryS3Config', + 'LogDeliveryDestinationDeliveryDestinationConfiguration', + 'LogDeliveryS3DeliveryConfiguration', 'LogMetricFilterMetricTransformation', 'MetricAlarmMetricQuery', 'MetricAlarmMetricQueryMetric', @@ -64,6 +66,7 @@ 'MetricStreamIncludeFilter', 'MetricStreamStatisticsConfiguration', 'MetricStreamStatisticsConfigurationIncludeMetric', + 'GetEventBusesEventBusResult', 'GetLogDataProtectionPolicyDocumentStatementResult', 'GetLogDataProtectionPolicyDocumentStatementOperationResult', 'GetLogDataProtectionPolicyDocumentStatementOperationAuditResult', @@ -2161,6 +2164,89 @@ def log_delivery_status(self) -> Optional[str]: return pulumi.get(self, "log_delivery_status") +@pulumi.output_type +class LogDeliveryDestinationDeliveryDestinationConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "destinationResourceArn": + suggest = "destination_resource_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in LogDeliveryDestinationDeliveryDestinationConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + LogDeliveryDestinationDeliveryDestinationConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + LogDeliveryDestinationDeliveryDestinationConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + destination_resource_arn: str): + """ + :param str destination_resource_arn: The ARN of the AWS destination that this delivery destination represents. + """ + pulumi.set(__self__, "destination_resource_arn", destination_resource_arn) + + @property + @pulumi.getter(name="destinationResourceArn") + def destination_resource_arn(self) -> str: + """ + The ARN of the AWS destination that this delivery destination represents. + """ + return pulumi.get(self, "destination_resource_arn") + + +@pulumi.output_type +class LogDeliveryS3DeliveryConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "enableHiveCompatiblePath": + suggest = "enable_hive_compatible_path" + elif key == "suffixPath": + suggest = "suffix_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in LogDeliveryS3DeliveryConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + LogDeliveryS3DeliveryConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + LogDeliveryS3DeliveryConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + enable_hive_compatible_path: bool, + suffix_path: str): + """ + :param bool enable_hive_compatible_path: This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + :param str suffix_path: This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + """ + pulumi.set(__self__, "enable_hive_compatible_path", enable_hive_compatible_path) + pulumi.set(__self__, "suffix_path", suffix_path) + + @property + @pulumi.getter(name="enableHiveCompatiblePath") + def enable_hive_compatible_path(self) -> bool: + """ + This parameter causes the S3 objects that contain delivered logs to use a prefix structure that allows for integration with Apache Hive. + """ + return pulumi.get(self, "enable_hive_compatible_path") + + @property + @pulumi.getter(name="suffixPath") + def suffix_path(self) -> str: + """ + This string allows re-configuring the S3 object prefix to contain either static or variable sections. The valid variables to use in the suffix path will vary by each log source. + """ + return pulumi.get(self, "suffix_path") + + @pulumi.output_type class LogMetricFilterMetricTransformation(dict): @staticmethod @@ -2658,6 +2744,79 @@ def namespace(self) -> str: return pulumi.get(self, "namespace") +@pulumi.output_type +class GetEventBusesEventBusResult(dict): + def __init__(__self__, *, + arn: str, + creation_time: str, + description: str, + last_modified_time: str, + name: str, + policy: str): + """ + :param str arn: The ARN of the event bus. + :param str creation_time: The time the event bus was created. + :param str description: The event bus description. + :param str last_modified_time: The time the event bus was last modified. + :param str name: The name of the event bus. + :param str policy: The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + """ + pulumi.set(__self__, "arn", arn) + pulumi.set(__self__, "creation_time", creation_time) + pulumi.set(__self__, "description", description) + pulumi.set(__self__, "last_modified_time", last_modified_time) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "policy", policy) + + @property + @pulumi.getter + def arn(self) -> str: + """ + The ARN of the event bus. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="creationTime") + def creation_time(self) -> str: + """ + The time the event bus was created. + """ + return pulumi.get(self, "creation_time") + + @property + @pulumi.getter + def description(self) -> str: + """ + The event bus description. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="lastModifiedTime") + def last_modified_time(self) -> str: + """ + The time the event bus was last modified. + """ + return pulumi.get(self, "last_modified_time") + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the event bus. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def policy(self) -> str: + """ + The permissions policy of the event bus, describing which other AWS accounts can write events to this event bus. + """ + return pulumi.get(self, "policy") + + @pulumi.output_type class GetLogDataProtectionPolicyDocumentStatementResult(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/codebuild/_inputs.py b/sdk/python/pulumi_aws/codebuild/_inputs.py index a15f40d4119..e8a3caf7c7e 100644 --- a/sdk/python/pulumi_aws/codebuild/_inputs.py +++ b/sdk/python/pulumi_aws/codebuild/_inputs.py @@ -15,6 +15,8 @@ from .. import _utilities __all__ = [ + 'FleetComputeConfigurationArgs', + 'FleetComputeConfigurationArgsDict', 'FleetScalingConfigurationArgs', 'FleetScalingConfigurationArgsDict', 'FleetScalingConfigurationTargetTrackingScalingConfigArgs', @@ -79,6 +81,98 @@ MYPY = False +if not MYPY: + class FleetComputeConfigurationArgsDict(TypedDict): + disk: NotRequired[pulumi.Input[int]] + """ + Amount of disk space of the instance type included in the fleet. + """ + machine_type: NotRequired[pulumi.Input[str]] + """ + Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + """ + memory: NotRequired[pulumi.Input[int]] + """ + Amount of memory of the instance type included in the fleet. + """ + vcpu: NotRequired[pulumi.Input[int]] + """ + Number of vCPUs of the instance type included in the fleet. + """ +elif False: + FleetComputeConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetComputeConfigurationArgs: + def __init__(__self__, *, + disk: Optional[pulumi.Input[int]] = None, + machine_type: Optional[pulumi.Input[str]] = None, + memory: Optional[pulumi.Input[int]] = None, + vcpu: Optional[pulumi.Input[int]] = None): + """ + :param pulumi.Input[int] disk: Amount of disk space of the instance type included in the fleet. + :param pulumi.Input[str] machine_type: Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + :param pulumi.Input[int] memory: Amount of memory of the instance type included in the fleet. + :param pulumi.Input[int] vcpu: Number of vCPUs of the instance type included in the fleet. + """ + if disk is not None: + pulumi.set(__self__, "disk", disk) + if machine_type is not None: + pulumi.set(__self__, "machine_type", machine_type) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if vcpu is not None: + pulumi.set(__self__, "vcpu", vcpu) + + @property + @pulumi.getter + def disk(self) -> Optional[pulumi.Input[int]]: + """ + Amount of disk space of the instance type included in the fleet. + """ + return pulumi.get(self, "disk") + + @disk.setter + def disk(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "disk", value) + + @property + @pulumi.getter(name="machineType") + def machine_type(self) -> Optional[pulumi.Input[str]]: + """ + Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + """ + return pulumi.get(self, "machine_type") + + @machine_type.setter + def machine_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "machine_type", value) + + @property + @pulumi.getter + def memory(self) -> Optional[pulumi.Input[int]]: + """ + Amount of memory of the instance type included in the fleet. + """ + return pulumi.get(self, "memory") + + @memory.setter + def memory(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "memory", value) + + @property + @pulumi.getter + def vcpu(self) -> Optional[pulumi.Input[int]]: + """ + Number of vCPUs of the instance type included in the fleet. + """ + return pulumi.get(self, "vcpu") + + @vcpu.setter + def vcpu(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "vcpu", value) + + if not MYPY: class FleetScalingConfigurationArgsDict(TypedDict): desired_capacity: NotRequired[pulumi.Input[int]] diff --git a/sdk/python/pulumi_aws/codebuild/fleet.py b/sdk/python/pulumi_aws/codebuild/fleet.py index dbf3750f676..5f79348ca63 100644 --- a/sdk/python/pulumi_aws/codebuild/fleet.py +++ b/sdk/python/pulumi_aws/codebuild/fleet.py @@ -24,6 +24,7 @@ def __init__(__self__, *, base_capacity: pulumi.Input[int], compute_type: pulumi.Input[str], environment_type: pulumi.Input[str], + compute_configuration: Optional[pulumi.Input['FleetComputeConfigurationArgs']] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, image_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -38,17 +39,20 @@ def __init__(__self__, *, :param pulumi.Input[str] environment_type: Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. The following arguments are optional: + :param pulumi.Input['FleetComputeConfigurationArgs'] compute_configuration: The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. :param pulumi.Input[str] fleet_service_role: The service role associated with the compute fleet. :param pulumi.Input[str] image_id: The Amazon Machine Image (AMI) of the compute fleet. :param pulumi.Input[str] name: Fleet name. :param pulumi.Input[str] overflow_behavior: Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. - :param pulumi.Input['FleetScalingConfigurationArgs'] scaling_configuration: Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + :param pulumi.Input['FleetScalingConfigurationArgs'] scaling_configuration: Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. - :param pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]] vpc_configs: Configuration block. Detailed below. + :param pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]] vpc_configs: Configuration block. See `vpc_config` below. """ pulumi.set(__self__, "base_capacity", base_capacity) pulumi.set(__self__, "compute_type", compute_type) pulumi.set(__self__, "environment_type", environment_type) + if compute_configuration is not None: + pulumi.set(__self__, "compute_configuration", compute_configuration) if fleet_service_role is not None: pulumi.set(__self__, "fleet_service_role", fleet_service_role) if image_id is not None: @@ -102,6 +106,18 @@ def environment_type(self) -> pulumi.Input[str]: def environment_type(self, value: pulumi.Input[str]): pulumi.set(self, "environment_type", value) + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> Optional[pulumi.Input['FleetComputeConfigurationArgs']]: + """ + The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + """ + return pulumi.get(self, "compute_configuration") + + @compute_configuration.setter + def compute_configuration(self, value: Optional[pulumi.Input['FleetComputeConfigurationArgs']]): + pulumi.set(self, "compute_configuration", value) + @property @pulumi.getter(name="fleetServiceRole") def fleet_service_role(self) -> Optional[pulumi.Input[str]]: @@ -154,7 +170,7 @@ def overflow_behavior(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="scalingConfiguration") def scaling_configuration(self) -> Optional[pulumi.Input['FleetScalingConfigurationArgs']]: """ - Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. """ return pulumi.get(self, "scaling_configuration") @@ -178,7 +194,7 @@ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): @pulumi.getter(name="vpcConfigs") def vpc_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]]]: """ - Configuration block. Detailed below. + Configuration block. See `vpc_config` below. """ return pulumi.get(self, "vpc_configs") @@ -192,6 +208,7 @@ class _FleetState: def __init__(__self__, *, arn: Optional[pulumi.Input[str]] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input['FleetComputeConfigurationArgs']] = None, compute_type: Optional[pulumi.Input[str]] = None, created: Optional[pulumi.Input[str]] = None, environment_type: Optional[pulumi.Input[str]] = None, @@ -209,6 +226,7 @@ def __init__(__self__, *, Input properties used for looking up and filtering Fleet resources. :param pulumi.Input[str] arn: ARN of the Fleet. :param pulumi.Input[int] base_capacity: Number of machines allocated to the fleet. + :param pulumi.Input['FleetComputeConfigurationArgs'] compute_configuration: The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. :param pulumi.Input[str] compute_type: Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. :param pulumi.Input[str] created: Creation time of the fleet. :param pulumi.Input[str] environment_type: Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. @@ -219,15 +237,17 @@ def __init__(__self__, *, :param pulumi.Input[str] last_modified: Last modification time of the fleet. :param pulumi.Input[str] name: Fleet name. :param pulumi.Input[str] overflow_behavior: Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. - :param pulumi.Input['FleetScalingConfigurationArgs'] scaling_configuration: Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + :param pulumi.Input['FleetScalingConfigurationArgs'] scaling_configuration: Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. :param pulumi.Input[Sequence[pulumi.Input['FleetStatusArgs']]] statuses: Nested attribute containing information about the current status of the fleet. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. - :param pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]] vpc_configs: Configuration block. Detailed below. + :param pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]] vpc_configs: Configuration block. See `vpc_config` below. """ if arn is not None: pulumi.set(__self__, "arn", arn) if base_capacity is not None: pulumi.set(__self__, "base_capacity", base_capacity) + if compute_configuration is not None: + pulumi.set(__self__, "compute_configuration", compute_configuration) if compute_type is not None: pulumi.set(__self__, "compute_type", compute_type) if created is not None: @@ -282,6 +302,18 @@ def base_capacity(self) -> Optional[pulumi.Input[int]]: def base_capacity(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "base_capacity", value) + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> Optional[pulumi.Input['FleetComputeConfigurationArgs']]: + """ + The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + """ + return pulumi.get(self, "compute_configuration") + + @compute_configuration.setter + def compute_configuration(self, value: Optional[pulumi.Input['FleetComputeConfigurationArgs']]): + pulumi.set(self, "compute_configuration", value) + @property @pulumi.getter(name="computeType") def compute_type(self) -> Optional[pulumi.Input[str]]: @@ -384,7 +416,7 @@ def overflow_behavior(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="scalingConfiguration") def scaling_configuration(self) -> Optional[pulumi.Input['FleetScalingConfigurationArgs']]: """ - Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. """ return pulumi.get(self, "scaling_configuration") @@ -430,7 +462,7 @@ def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]] @pulumi.getter(name="vpcConfigs") def vpc_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FleetVpcConfigArgs']]]]: """ - Configuration block. Detailed below. + Configuration block. See `vpc_config` below. """ return pulumi.get(self, "vpc_configs") @@ -445,6 +477,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input[str]] = None, environment_type: Optional[pulumi.Input[str]] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, @@ -500,6 +533,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[int] base_capacity: Number of machines allocated to the fleet. + :param pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']] compute_configuration: The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. :param pulumi.Input[str] compute_type: Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. :param pulumi.Input[str] environment_type: Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. @@ -508,9 +542,9 @@ def __init__(__self__, :param pulumi.Input[str] image_id: The Amazon Machine Image (AMI) of the compute fleet. :param pulumi.Input[str] name: Fleet name. :param pulumi.Input[str] overflow_behavior: Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. - :param pulumi.Input[Union['FleetScalingConfigurationArgs', 'FleetScalingConfigurationArgsDict']] scaling_configuration: Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + :param pulumi.Input[Union['FleetScalingConfigurationArgs', 'FleetScalingConfigurationArgsDict']] scaling_configuration: Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. - :param pulumi.Input[Sequence[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]]] vpc_configs: Configuration block. Detailed below. + :param pulumi.Input[Sequence[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]]] vpc_configs: Configuration block. See `vpc_config` below. """ ... @overload @@ -576,6 +610,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input[str]] = None, environment_type: Optional[pulumi.Input[str]] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, @@ -597,6 +632,7 @@ def _internal_init(__self__, if base_capacity is None and not opts.urn: raise TypeError("Missing required property 'base_capacity'") __props__.__dict__["base_capacity"] = base_capacity + __props__.__dict__["compute_configuration"] = compute_configuration if compute_type is None and not opts.urn: raise TypeError("Missing required property 'compute_type'") __props__.__dict__["compute_type"] = compute_type @@ -627,6 +663,7 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, arn: Optional[pulumi.Input[str]] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input[str]] = None, created: Optional[pulumi.Input[str]] = None, environment_type: Optional[pulumi.Input[str]] = None, @@ -649,6 +686,7 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: ARN of the Fleet. :param pulumi.Input[int] base_capacity: Number of machines allocated to the fleet. + :param pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']] compute_configuration: The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. :param pulumi.Input[str] compute_type: Compute resources the compute fleet uses. See [compute types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. :param pulumi.Input[str] created: Creation time of the fleet. :param pulumi.Input[str] environment_type: Environment type of the compute fleet. See [environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) for more information and valid values. @@ -659,10 +697,10 @@ def get(resource_name: str, :param pulumi.Input[str] last_modified: Last modification time of the fleet. :param pulumi.Input[str] name: Fleet name. :param pulumi.Input[str] overflow_behavior: Overflow behavior for compute fleet. Valid values: `ON_DEMAND`, `QUEUE`. - :param pulumi.Input[Union['FleetScalingConfigurationArgs', 'FleetScalingConfigurationArgsDict']] scaling_configuration: Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + :param pulumi.Input[Union['FleetScalingConfigurationArgs', 'FleetScalingConfigurationArgsDict']] scaling_configuration: Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. :param pulumi.Input[Sequence[pulumi.Input[Union['FleetStatusArgs', 'FleetStatusArgsDict']]]] statuses: Nested attribute containing information about the current status of the fleet. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. - :param pulumi.Input[Sequence[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]]] vpc_configs: Configuration block. Detailed below. + :param pulumi.Input[Sequence[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]]] vpc_configs: Configuration block. See `vpc_config` below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -670,6 +708,7 @@ def get(resource_name: str, __props__.__dict__["arn"] = arn __props__.__dict__["base_capacity"] = base_capacity + __props__.__dict__["compute_configuration"] = compute_configuration __props__.__dict__["compute_type"] = compute_type __props__.__dict__["created"] = created __props__.__dict__["environment_type"] = environment_type @@ -701,6 +740,14 @@ def base_capacity(self) -> pulumi.Output[int]: """ return pulumi.get(self, "base_capacity") + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> pulumi.Output[Optional['outputs.FleetComputeConfiguration']]: + """ + The compute configuration of the compute fleet. This is only required if `compute_type` is set to `ATTRIBUTE_BASED_COMPUTE`. See `compute_configuration` below. + """ + return pulumi.get(self, "compute_configuration") + @property @pulumi.getter(name="computeType") def compute_type(self) -> pulumi.Output[str]: @@ -771,7 +818,7 @@ def overflow_behavior(self) -> pulumi.Output[str]: @pulumi.getter(name="scalingConfiguration") def scaling_configuration(self) -> pulumi.Output[Optional['outputs.FleetScalingConfiguration']]: """ - Configuration block. Detailed below. This option is only valid when your overflow behavior is `QUEUE`. + Configuration block. This option is only valid when your overflow behavior is `QUEUE`. See `scaling_configuration` below. """ return pulumi.get(self, "scaling_configuration") @@ -801,7 +848,7 @@ def tags_all(self) -> pulumi.Output[Mapping[str, str]]: @pulumi.getter(name="vpcConfigs") def vpc_configs(self) -> pulumi.Output[Optional[Sequence['outputs.FleetVpcConfig']]]: """ - Configuration block. Detailed below. + Configuration block. See `vpc_config` below. """ return pulumi.get(self, "vpc_configs") diff --git a/sdk/python/pulumi_aws/codebuild/get_fleet.py b/sdk/python/pulumi_aws/codebuild/get_fleet.py index 57334d65820..4771840d559 100644 --- a/sdk/python/pulumi_aws/codebuild/get_fleet.py +++ b/sdk/python/pulumi_aws/codebuild/get_fleet.py @@ -27,13 +27,16 @@ class GetFleetResult: """ A collection of values returned by getFleet. """ - def __init__(__self__, arn=None, base_capacity=None, compute_type=None, created=None, environment_type=None, fleet_service_role=None, id=None, image_id=None, last_modified=None, name=None, overflow_behavior=None, scaling_configurations=None, statuses=None, tags=None, vpc_configs=None): + def __init__(__self__, arn=None, base_capacity=None, compute_configurations=None, compute_type=None, created=None, environment_type=None, fleet_service_role=None, id=None, image_id=None, last_modified=None, name=None, overflow_behavior=None, scaling_configurations=None, statuses=None, tags=None, vpc_configs=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) if base_capacity and not isinstance(base_capacity, int): raise TypeError("Expected argument 'base_capacity' to be a int") pulumi.set(__self__, "base_capacity", base_capacity) + if compute_configurations and not isinstance(compute_configurations, list): + raise TypeError("Expected argument 'compute_configurations' to be a list") + pulumi.set(__self__, "compute_configurations", compute_configurations) if compute_type and not isinstance(compute_type, str): raise TypeError("Expected argument 'compute_type' to be a str") pulumi.set(__self__, "compute_type", compute_type) @@ -90,6 +93,14 @@ def base_capacity(self) -> int: """ return pulumi.get(self, "base_capacity") + @property + @pulumi.getter(name="computeConfigurations") + def compute_configurations(self) -> Sequence['outputs.GetFleetComputeConfigurationResult']: + """ + Compute configuration of the compute fleet. + """ + return pulumi.get(self, "compute_configurations") + @property @pulumi.getter(name="computeType") def compute_type(self) -> str: @@ -200,6 +211,7 @@ def __await__(self): return GetFleetResult( arn=self.arn, base_capacity=self.base_capacity, + compute_configurations=self.compute_configurations, compute_type=self.compute_type, created=self.created, environment_type=self.environment_type, @@ -266,6 +278,7 @@ def get_fleet(name: Optional[str] = None, return AwaitableGetFleetResult( arn=pulumi.get(__ret__, 'arn'), base_capacity=pulumi.get(__ret__, 'base_capacity'), + compute_configurations=pulumi.get(__ret__, 'compute_configurations'), compute_type=pulumi.get(__ret__, 'compute_type'), created=pulumi.get(__ret__, 'created'), environment_type=pulumi.get(__ret__, 'environment_type'), @@ -329,6 +342,7 @@ def get_fleet_output(name: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetFleetResult( arn=pulumi.get(__response__, 'arn'), base_capacity=pulumi.get(__response__, 'base_capacity'), + compute_configurations=pulumi.get(__response__, 'compute_configurations'), compute_type=pulumi.get(__response__, 'compute_type'), created=pulumi.get(__response__, 'created'), environment_type=pulumi.get(__response__, 'environment_type'), diff --git a/sdk/python/pulumi_aws/codebuild/outputs.py b/sdk/python/pulumi_aws/codebuild/outputs.py index a4bb58c89e4..86027670f51 100644 --- a/sdk/python/pulumi_aws/codebuild/outputs.py +++ b/sdk/python/pulumi_aws/codebuild/outputs.py @@ -16,6 +16,7 @@ from . import outputs __all__ = [ + 'FleetComputeConfiguration', 'FleetScalingConfiguration', 'FleetScalingConfigurationTargetTrackingScalingConfig', 'FleetStatus', @@ -46,12 +47,85 @@ 'WebhookFilterGroup', 'WebhookFilterGroupFilter', 'WebhookScopeConfiguration', + 'GetFleetComputeConfigurationResult', 'GetFleetScalingConfigurationResult', 'GetFleetScalingConfigurationTargetTrackingScalingConfigResult', 'GetFleetStatusResult', 'GetFleetVpcConfigResult', ] +@pulumi.output_type +class FleetComputeConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "machineType": + suggest = "machine_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in FleetComputeConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + FleetComputeConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + FleetComputeConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + disk: Optional[int] = None, + machine_type: Optional[str] = None, + memory: Optional[int] = None, + vcpu: Optional[int] = None): + """ + :param int disk: Amount of disk space of the instance type included in the fleet. + :param str machine_type: Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + :param int memory: Amount of memory of the instance type included in the fleet. + :param int vcpu: Number of vCPUs of the instance type included in the fleet. + """ + if disk is not None: + pulumi.set(__self__, "disk", disk) + if machine_type is not None: + pulumi.set(__self__, "machine_type", machine_type) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if vcpu is not None: + pulumi.set(__self__, "vcpu", vcpu) + + @property + @pulumi.getter + def disk(self) -> Optional[int]: + """ + Amount of disk space of the instance type included in the fleet. + """ + return pulumi.get(self, "disk") + + @property + @pulumi.getter(name="machineType") + def machine_type(self) -> Optional[str]: + """ + Machine type of the instance type included in the fleet. Valid values: `GENERAL`, `NVME`. + """ + return pulumi.get(self, "machine_type") + + @property + @pulumi.getter + def memory(self) -> Optional[int]: + """ + Amount of memory of the instance type included in the fleet. + """ + return pulumi.get(self, "memory") + + @property + @pulumi.getter + def vcpu(self) -> Optional[int]: + """ + Number of vCPUs of the instance type included in the fleet. + """ + return pulumi.get(self, "vcpu") + + @pulumi.output_type class FleetScalingConfiguration(dict): @staticmethod @@ -2087,6 +2161,57 @@ def domain(self) -> Optional[str]: return pulumi.get(self, "domain") +@pulumi.output_type +class GetFleetComputeConfigurationResult(dict): + def __init__(__self__, *, + disk: int, + machine_type: str, + memory: int, + vcpu: int): + """ + :param int disk: Amount of disk space of the instance type included in the fleet. + :param str machine_type: Machine type of the instance type included in the fleet. + :param int memory: Amount of memory of the instance type included in the fleet. + :param int vcpu: Number of vCPUs of the instance type included in the fleet. + """ + pulumi.set(__self__, "disk", disk) + pulumi.set(__self__, "machine_type", machine_type) + pulumi.set(__self__, "memory", memory) + pulumi.set(__self__, "vcpu", vcpu) + + @property + @pulumi.getter + def disk(self) -> int: + """ + Amount of disk space of the instance type included in the fleet. + """ + return pulumi.get(self, "disk") + + @property + @pulumi.getter(name="machineType") + def machine_type(self) -> str: + """ + Machine type of the instance type included in the fleet. + """ + return pulumi.get(self, "machine_type") + + @property + @pulumi.getter + def memory(self) -> int: + """ + Amount of memory of the instance type included in the fleet. + """ + return pulumi.get(self, "memory") + + @property + @pulumi.getter + def vcpu(self) -> int: + """ + Number of vCPUs of the instance type included in the fleet. + """ + return pulumi.get(self, "vcpu") + + @pulumi.output_type class GetFleetScalingConfigurationResult(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/cognito/_inputs.py b/sdk/python/pulumi_aws/cognito/_inputs.py index a25d34aeef9..ce5f62c78ad 100644 --- a/sdk/python/pulumi_aws/cognito/_inputs.py +++ b/sdk/python/pulumi_aws/cognito/_inputs.py @@ -67,6 +67,8 @@ 'UserPoolDeviceConfigurationArgsDict', 'UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict', + 'UserPoolEmailMfaConfigurationArgs', + 'UserPoolEmailMfaConfigurationArgsDict', 'UserPoolLambdaConfigArgs', 'UserPoolLambdaConfigArgsDict', 'UserPoolLambdaConfigCustomEmailSenderArgs', @@ -83,6 +85,8 @@ 'UserPoolSchemaNumberAttributeConstraintsArgsDict', 'UserPoolSchemaStringAttributeConstraintsArgs', 'UserPoolSchemaStringAttributeConstraintsArgsDict', + 'UserPoolSignInPolicyArgs', + 'UserPoolSignInPolicyArgsDict', 'UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict', 'UserPoolSoftwareTokenMfaConfigurationArgs', @@ -95,6 +99,8 @@ 'UserPoolUsernameConfigurationArgsDict', 'UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict', + 'UserPoolWebAuthnConfigurationArgs', + 'UserPoolWebAuthnConfigurationArgsDict', ] MYPY = False @@ -1872,6 +1878,58 @@ def source_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "source_arn", value) +if not MYPY: + class UserPoolEmailMfaConfigurationArgsDict(TypedDict): + message: NotRequired[pulumi.Input[str]] + """ + The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + """ + subject: NotRequired[pulumi.Input[str]] + """ + The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + """ +elif False: + UserPoolEmailMfaConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class UserPoolEmailMfaConfigurationArgs: + def __init__(__self__, *, + message: Optional[pulumi.Input[str]] = None, + subject: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] message: The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + :param pulumi.Input[str] subject: The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + """ + if message is not None: + pulumi.set(__self__, "message", message) + if subject is not None: + pulumi.set(__self__, "subject", subject) + + @property + @pulumi.getter + def message(self) -> Optional[pulumi.Input[str]]: + """ + The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + """ + return pulumi.get(self, "message") + + @message.setter + def message(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "message", value) + + @property + @pulumi.getter + def subject(self) -> Optional[pulumi.Input[str]]: + """ + The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + """ + return pulumi.get(self, "subject") + + @subject.setter + def subject(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subject", value) + + if not MYPY: class UserPoolLambdaConfigArgsDict(TypedDict): create_auth_challenge: NotRequired[pulumi.Input[str]] @@ -2710,6 +2768,38 @@ def min_length(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "min_length", value) +if not MYPY: + class UserPoolSignInPolicyArgsDict(TypedDict): + allowed_first_auth_factors: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + """ +elif False: + UserPoolSignInPolicyArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class UserPoolSignInPolicyArgs: + def __init__(__self__, *, + allowed_first_auth_factors: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_first_auth_factors: The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + """ + if allowed_first_auth_factors is not None: + pulumi.set(__self__, "allowed_first_auth_factors", allowed_first_auth_factors) + + @property + @pulumi.getter(name="allowedFirstAuthFactors") + def allowed_first_auth_factors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + """ + return pulumi.get(self, "allowed_first_auth_factors") + + @allowed_first_auth_factors.setter + def allowed_first_auth_factors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "allowed_first_auth_factors", value) + + if not MYPY: class UserPoolSmsConfigurationArgsDict(TypedDict): external_id: pulumi.Input[str] @@ -3036,3 +3126,55 @@ def sms_message(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "sms_message", value) +if not MYPY: + class UserPoolWebAuthnConfigurationArgsDict(TypedDict): + relying_party_id: NotRequired[pulumi.Input[str]] + """ + The authentication domain that passkeys providers use as a relying party. + """ + user_verification: NotRequired[pulumi.Input[str]] + """ + If your user pool should require a passkey. Must be one of `required` or `preferred`. + """ +elif False: + UserPoolWebAuthnConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class UserPoolWebAuthnConfigurationArgs: + def __init__(__self__, *, + relying_party_id: Optional[pulumi.Input[str]] = None, + user_verification: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] relying_party_id: The authentication domain that passkeys providers use as a relying party. + :param pulumi.Input[str] user_verification: If your user pool should require a passkey. Must be one of `required` or `preferred`. + """ + if relying_party_id is not None: + pulumi.set(__self__, "relying_party_id", relying_party_id) + if user_verification is not None: + pulumi.set(__self__, "user_verification", user_verification) + + @property + @pulumi.getter(name="relyingPartyId") + def relying_party_id(self) -> Optional[pulumi.Input[str]]: + """ + The authentication domain that passkeys providers use as a relying party. + """ + return pulumi.get(self, "relying_party_id") + + @relying_party_id.setter + def relying_party_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "relying_party_id", value) + + @property + @pulumi.getter(name="userVerification") + def user_verification(self) -> Optional[pulumi.Input[str]]: + """ + If your user pool should require a passkey. Must be one of `required` or `preferred`. + """ + return pulumi.get(self, "user_verification") + + @user_verification.setter + def user_verification(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user_verification", value) + + diff --git a/sdk/python/pulumi_aws/cognito/outputs.py b/sdk/python/pulumi_aws/cognito/outputs.py index 60dd970622d..3e57ab87d26 100644 --- a/sdk/python/pulumi_aws/cognito/outputs.py +++ b/sdk/python/pulumi_aws/cognito/outputs.py @@ -42,6 +42,7 @@ 'UserPoolClientTokenValidityUnits', 'UserPoolDeviceConfiguration', 'UserPoolEmailConfiguration', + 'UserPoolEmailMfaConfiguration', 'UserPoolLambdaConfig', 'UserPoolLambdaConfigCustomEmailSender', 'UserPoolLambdaConfigCustomSmsSender', @@ -50,12 +51,14 @@ 'UserPoolSchema', 'UserPoolSchemaNumberAttributeConstraints', 'UserPoolSchemaStringAttributeConstraints', + 'UserPoolSignInPolicy', 'UserPoolSmsConfiguration', 'UserPoolSoftwareTokenMfaConfiguration', 'UserPoolUserAttributeUpdateSettings', 'UserPoolUserPoolAddOns', 'UserPoolUsernameConfiguration', 'UserPoolVerificationMessageTemplate', + 'UserPoolWebAuthnConfiguration', 'GetIdentityPoolCognitoIdentityProviderResult', 'GetUserGroupsGroupResult', 'GetUserPoolAccountRecoverySettingResult', @@ -1622,6 +1625,37 @@ def source_arn(self) -> Optional[str]: return pulumi.get(self, "source_arn") +@pulumi.output_type +class UserPoolEmailMfaConfiguration(dict): + def __init__(__self__, *, + message: Optional[str] = None, + subject: Optional[str] = None): + """ + :param str message: The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + :param str subject: The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + """ + if message is not None: + pulumi.set(__self__, "message", message) + if subject is not None: + pulumi.set(__self__, "subject", subject) + + @property + @pulumi.getter + def message(self) -> Optional[str]: + """ + The template for the email messages that your user pool sends to users with codes for MFA and sign-in with email OTPs. The message must contain the {####} placeholder. In the message, Amazon Cognito replaces this placeholder with the code. If you don't provide this parameter, Amazon Cognito sends messages in the default format. + """ + return pulumi.get(self, "message") + + @property + @pulumi.getter + def subject(self) -> Optional[str]: + """ + The subject of the email messages that your user pool sends to users with codes for MFA and email OTP sign-in. + """ + return pulumi.get(self, "subject") + + @pulumi.output_type class UserPoolLambdaConfig(dict): @staticmethod @@ -2310,6 +2344,42 @@ def min_length(self) -> Optional[str]: return pulumi.get(self, "min_length") +@pulumi.output_type +class UserPoolSignInPolicy(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "allowedFirstAuthFactors": + suggest = "allowed_first_auth_factors" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserPoolSignInPolicy. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserPoolSignInPolicy.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserPoolSignInPolicy.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + allowed_first_auth_factors: Optional[Sequence[str]] = None): + """ + :param Sequence[str] allowed_first_auth_factors: The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + """ + if allowed_first_auth_factors is not None: + pulumi.set(__self__, "allowed_first_auth_factors", allowed_first_auth_factors) + + @property + @pulumi.getter(name="allowedFirstAuthFactors") + def allowed_first_auth_factors(self) -> Optional[Sequence[str]]: + """ + The sign in methods your user pool supports as the first factor. This is a list of strings, allowed values are `PASSWORD`, `EMAIL_OTP`, `SMS_OTP`, and `WEB_AUTHN`. + """ + return pulumi.get(self, "allowed_first_auth_factors") + + @pulumi.output_type class UserPoolSmsConfiguration(dict): @staticmethod @@ -2601,6 +2671,56 @@ def sms_message(self) -> Optional[str]: return pulumi.get(self, "sms_message") +@pulumi.output_type +class UserPoolWebAuthnConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "relyingPartyId": + suggest = "relying_party_id" + elif key == "userVerification": + suggest = "user_verification" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserPoolWebAuthnConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserPoolWebAuthnConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserPoolWebAuthnConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + relying_party_id: Optional[str] = None, + user_verification: Optional[str] = None): + """ + :param str relying_party_id: The authentication domain that passkeys providers use as a relying party. + :param str user_verification: If your user pool should require a passkey. Must be one of `required` or `preferred`. + """ + if relying_party_id is not None: + pulumi.set(__self__, "relying_party_id", relying_party_id) + if user_verification is not None: + pulumi.set(__self__, "user_verification", user_verification) + + @property + @pulumi.getter(name="relyingPartyId") + def relying_party_id(self) -> Optional[str]: + """ + The authentication domain that passkeys providers use as a relying party. + """ + return pulumi.get(self, "relying_party_id") + + @property + @pulumi.getter(name="userVerification") + def user_verification(self) -> Optional[str]: + """ + If your user pool should require a passkey. Must be one of `required` or `preferred`. + """ + return pulumi.get(self, "user_verification") + + @pulumi.output_type class GetIdentityPoolCognitoIdentityProviderResult(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/cognito/user_pool.py b/sdk/python/pulumi_aws/cognito/user_pool.py index ed9ae15b2d1..57c559f141b 100644 --- a/sdk/python/pulumi_aws/cognito/user_pool.py +++ b/sdk/python/pulumi_aws/cognito/user_pool.py @@ -28,6 +28,7 @@ def __init__(__self__, *, deletion_protection: Optional[pulumi.Input[str]] = None, device_configuration: Optional[pulumi.Input['UserPoolDeviceConfigurationArgs']] = None, email_configuration: Optional[pulumi.Input['UserPoolEmailConfigurationArgs']] = None, + email_mfa_configuration: Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']] = None, email_verification_message: Optional[pulumi.Input[str]] = None, email_verification_subject: Optional[pulumi.Input[str]] = None, lambda_config: Optional[pulumi.Input['UserPoolLambdaConfigArgs']] = None, @@ -35,6 +36,7 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, password_policy: Optional[pulumi.Input['UserPoolPasswordPolicyArgs']] = None, schemas: Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]]] = None, + sign_in_policy: Optional[pulumi.Input['UserPoolSignInPolicyArgs']] = None, sms_authentication_message: Optional[pulumi.Input[str]] = None, sms_configuration: Optional[pulumi.Input['UserPoolSmsConfigurationArgs']] = None, sms_verification_message: Optional[pulumi.Input[str]] = None, @@ -42,9 +44,11 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, user_attribute_update_settings: Optional[pulumi.Input['UserPoolUserAttributeUpdateSettingsArgs']] = None, user_pool_add_ons: Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs']] = None, + user_pool_tier: Optional[pulumi.Input[str]] = None, username_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, username_configuration: Optional[pulumi.Input['UserPoolUsernameConfigurationArgs']] = None, - verification_message_template: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']] = None): + verification_message_template: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']] = None, + web_authn_configuration: Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']] = None): """ The set of arguments for constructing a UserPool resource. :param pulumi.Input['UserPoolAccountRecoverySettingArgs'] account_recovery_setting: Configuration block to define which verified available method a user can use to recover their forgotten password. Detailed below. @@ -54,6 +58,7 @@ def __init__(__self__, *, :param pulumi.Input[str] deletion_protection: When active, DeletionProtection prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature. Valid values are `ACTIVE` and `INACTIVE`, Default value is `INACTIVE`. :param pulumi.Input['UserPoolDeviceConfigurationArgs'] device_configuration: Configuration block for the user pool's device tracking. Detailed below. :param pulumi.Input['UserPoolEmailConfigurationArgs'] email_configuration: Configuration block for configuring email. Detailed below. + :param pulumi.Input['UserPoolEmailMfaConfigurationArgs'] email_mfa_configuration: Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. :param pulumi.Input[str] email_verification_message: String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. :param pulumi.Input[str] email_verification_subject: String representing the email verification subject. Conflicts with `verification_message_template` configuration block `email_subject` argument. :param pulumi.Input['UserPoolLambdaConfigArgs'] lambda_config: Configuration block for the AWS Lambda triggers associated with the user pool. Detailed below. @@ -63,6 +68,7 @@ def __init__(__self__, *, The following arguments are optional: :param pulumi.Input['UserPoolPasswordPolicyArgs'] password_policy: Configuration block for information about the user pool password policy. Detailed below. :param pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]] schemas: Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. + :param pulumi.Input['UserPoolSignInPolicyArgs'] sign_in_policy: Configuration block for information about the user pool sign in policy. Detailed below. :param pulumi.Input[str] sms_authentication_message: String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. :param pulumi.Input['UserPoolSmsConfigurationArgs'] sms_configuration: Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. :param pulumi.Input[str] sms_verification_message: String representing the SMS verification message. Conflicts with `verification_message_template` configuration block `sms_message` argument. @@ -70,9 +76,11 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the User Pool. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input['UserPoolUserAttributeUpdateSettingsArgs'] user_attribute_update_settings: Configuration block for user attribute update settings. Detailed below. :param pulumi.Input['UserPoolUserPoolAddOnsArgs'] user_pool_add_ons: Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. + :param pulumi.Input[str] user_pool_tier: The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. :param pulumi.Input[Sequence[pulumi.Input[str]]] username_attributes: Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. :param pulumi.Input['UserPoolUsernameConfigurationArgs'] username_configuration: Configuration block for username configuration. Detailed below. :param pulumi.Input['UserPoolVerificationMessageTemplateArgs'] verification_message_template: Configuration block for verification message templates. Detailed below. + :param pulumi.Input['UserPoolWebAuthnConfigurationArgs'] web_authn_configuration: Configuration block for web authn configuration. Detailed below. """ if account_recovery_setting is not None: pulumi.set(__self__, "account_recovery_setting", account_recovery_setting) @@ -88,6 +96,8 @@ def __init__(__self__, *, pulumi.set(__self__, "device_configuration", device_configuration) if email_configuration is not None: pulumi.set(__self__, "email_configuration", email_configuration) + if email_mfa_configuration is not None: + pulumi.set(__self__, "email_mfa_configuration", email_mfa_configuration) if email_verification_message is not None: pulumi.set(__self__, "email_verification_message", email_verification_message) if email_verification_subject is not None: @@ -102,6 +112,8 @@ def __init__(__self__, *, pulumi.set(__self__, "password_policy", password_policy) if schemas is not None: pulumi.set(__self__, "schemas", schemas) + if sign_in_policy is not None: + pulumi.set(__self__, "sign_in_policy", sign_in_policy) if sms_authentication_message is not None: pulumi.set(__self__, "sms_authentication_message", sms_authentication_message) if sms_configuration is not None: @@ -116,12 +128,16 @@ def __init__(__self__, *, pulumi.set(__self__, "user_attribute_update_settings", user_attribute_update_settings) if user_pool_add_ons is not None: pulumi.set(__self__, "user_pool_add_ons", user_pool_add_ons) + if user_pool_tier is not None: + pulumi.set(__self__, "user_pool_tier", user_pool_tier) if username_attributes is not None: pulumi.set(__self__, "username_attributes", username_attributes) if username_configuration is not None: pulumi.set(__self__, "username_configuration", username_configuration) if verification_message_template is not None: pulumi.set(__self__, "verification_message_template", verification_message_template) + if web_authn_configuration is not None: + pulumi.set(__self__, "web_authn_configuration", web_authn_configuration) @property @pulumi.getter(name="accountRecoverySetting") @@ -207,6 +223,18 @@ def email_configuration(self) -> Optional[pulumi.Input['UserPoolEmailConfigurati def email_configuration(self, value: Optional[pulumi.Input['UserPoolEmailConfigurationArgs']]): pulumi.set(self, "email_configuration", value) + @property + @pulumi.getter(name="emailMfaConfiguration") + def email_mfa_configuration(self) -> Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']]: + """ + Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + """ + return pulumi.get(self, "email_mfa_configuration") + + @email_mfa_configuration.setter + def email_mfa_configuration(self, value: Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']]): + pulumi.set(self, "email_mfa_configuration", value) + @property @pulumi.getter(name="emailVerificationMessage") def email_verification_message(self) -> Optional[pulumi.Input[str]]: @@ -293,6 +321,18 @@ def schemas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchema def schemas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]]]): pulumi.set(self, "schemas", value) + @property + @pulumi.getter(name="signInPolicy") + def sign_in_policy(self) -> Optional[pulumi.Input['UserPoolSignInPolicyArgs']]: + """ + Configuration block for information about the user pool sign in policy. Detailed below. + """ + return pulumi.get(self, "sign_in_policy") + + @sign_in_policy.setter + def sign_in_policy(self, value: Optional[pulumi.Input['UserPoolSignInPolicyArgs']]): + pulumi.set(self, "sign_in_policy", value) + @property @pulumi.getter(name="smsAuthenticationMessage") def sms_authentication_message(self) -> Optional[pulumi.Input[str]]: @@ -377,6 +417,18 @@ def user_pool_add_ons(self) -> Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs def user_pool_add_ons(self, value: Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs']]): pulumi.set(self, "user_pool_add_ons", value) + @property + @pulumi.getter(name="userPoolTier") + def user_pool_tier(self) -> Optional[pulumi.Input[str]]: + """ + The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + """ + return pulumi.get(self, "user_pool_tier") + + @user_pool_tier.setter + def user_pool_tier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user_pool_tier", value) + @property @pulumi.getter(name="usernameAttributes") def username_attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -413,6 +465,18 @@ def verification_message_template(self) -> Optional[pulumi.Input['UserPoolVerifi def verification_message_template(self, value: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']]): pulumi.set(self, "verification_message_template", value) + @property + @pulumi.getter(name="webAuthnConfiguration") + def web_authn_configuration(self) -> Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']]: + """ + Configuration block for web authn configuration. Detailed below. + """ + return pulumi.get(self, "web_authn_configuration") + + @web_authn_configuration.setter + def web_authn_configuration(self, value: Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']]): + pulumi.set(self, "web_authn_configuration", value) + @pulumi.input_type class _UserPoolState: @@ -428,6 +492,7 @@ def __init__(__self__, *, device_configuration: Optional[pulumi.Input['UserPoolDeviceConfigurationArgs']] = None, domain: Optional[pulumi.Input[str]] = None, email_configuration: Optional[pulumi.Input['UserPoolEmailConfigurationArgs']] = None, + email_mfa_configuration: Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']] = None, email_verification_message: Optional[pulumi.Input[str]] = None, email_verification_subject: Optional[pulumi.Input[str]] = None, endpoint: Optional[pulumi.Input[str]] = None, @@ -438,6 +503,7 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, password_policy: Optional[pulumi.Input['UserPoolPasswordPolicyArgs']] = None, schemas: Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]]] = None, + sign_in_policy: Optional[pulumi.Input['UserPoolSignInPolicyArgs']] = None, sms_authentication_message: Optional[pulumi.Input[str]] = None, sms_configuration: Optional[pulumi.Input['UserPoolSmsConfigurationArgs']] = None, sms_verification_message: Optional[pulumi.Input[str]] = None, @@ -446,9 +512,11 @@ def __init__(__self__, *, tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, user_attribute_update_settings: Optional[pulumi.Input['UserPoolUserAttributeUpdateSettingsArgs']] = None, user_pool_add_ons: Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs']] = None, + user_pool_tier: Optional[pulumi.Input[str]] = None, username_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, username_configuration: Optional[pulumi.Input['UserPoolUsernameConfigurationArgs']] = None, - verification_message_template: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']] = None): + verification_message_template: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']] = None, + web_authn_configuration: Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']] = None): """ Input properties used for looking up and filtering UserPool resources. :param pulumi.Input['UserPoolAccountRecoverySettingArgs'] account_recovery_setting: Configuration block to define which verified available method a user can use to recover their forgotten password. Detailed below. @@ -462,6 +530,7 @@ def __init__(__self__, *, :param pulumi.Input['UserPoolDeviceConfigurationArgs'] device_configuration: Configuration block for the user pool's device tracking. Detailed below. :param pulumi.Input[str] domain: Holds the domain prefix if the user pool has a domain associated with it. :param pulumi.Input['UserPoolEmailConfigurationArgs'] email_configuration: Configuration block for configuring email. Detailed below. + :param pulumi.Input['UserPoolEmailMfaConfigurationArgs'] email_mfa_configuration: Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. :param pulumi.Input[str] email_verification_message: String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. :param pulumi.Input[str] email_verification_subject: String representing the email verification subject. Conflicts with `verification_message_template` configuration block `email_subject` argument. :param pulumi.Input[str] endpoint: Endpoint name of the user pool. Example format: `cognito-idp.REGION.amazonaws.com/xxxx_yyyyy` @@ -474,6 +543,7 @@ def __init__(__self__, *, The following arguments are optional: :param pulumi.Input['UserPoolPasswordPolicyArgs'] password_policy: Configuration block for information about the user pool password policy. Detailed below. :param pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]] schemas: Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. + :param pulumi.Input['UserPoolSignInPolicyArgs'] sign_in_policy: Configuration block for information about the user pool sign in policy. Detailed below. :param pulumi.Input[str] sms_authentication_message: String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. :param pulumi.Input['UserPoolSmsConfigurationArgs'] sms_configuration: Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. :param pulumi.Input[str] sms_verification_message: String representing the SMS verification message. Conflicts with `verification_message_template` configuration block `sms_message` argument. @@ -482,9 +552,11 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. :param pulumi.Input['UserPoolUserAttributeUpdateSettingsArgs'] user_attribute_update_settings: Configuration block for user attribute update settings. Detailed below. :param pulumi.Input['UserPoolUserPoolAddOnsArgs'] user_pool_add_ons: Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. + :param pulumi.Input[str] user_pool_tier: The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. :param pulumi.Input[Sequence[pulumi.Input[str]]] username_attributes: Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. :param pulumi.Input['UserPoolUsernameConfigurationArgs'] username_configuration: Configuration block for username configuration. Detailed below. :param pulumi.Input['UserPoolVerificationMessageTemplateArgs'] verification_message_template: Configuration block for verification message templates. Detailed below. + :param pulumi.Input['UserPoolWebAuthnConfigurationArgs'] web_authn_configuration: Configuration block for web authn configuration. Detailed below. """ if account_recovery_setting is not None: pulumi.set(__self__, "account_recovery_setting", account_recovery_setting) @@ -508,6 +580,8 @@ def __init__(__self__, *, pulumi.set(__self__, "domain", domain) if email_configuration is not None: pulumi.set(__self__, "email_configuration", email_configuration) + if email_mfa_configuration is not None: + pulumi.set(__self__, "email_mfa_configuration", email_mfa_configuration) if email_verification_message is not None: pulumi.set(__self__, "email_verification_message", email_verification_message) if email_verification_subject is not None: @@ -528,6 +602,8 @@ def __init__(__self__, *, pulumi.set(__self__, "password_policy", password_policy) if schemas is not None: pulumi.set(__self__, "schemas", schemas) + if sign_in_policy is not None: + pulumi.set(__self__, "sign_in_policy", sign_in_policy) if sms_authentication_message is not None: pulumi.set(__self__, "sms_authentication_message", sms_authentication_message) if sms_configuration is not None: @@ -547,12 +623,16 @@ def __init__(__self__, *, pulumi.set(__self__, "user_attribute_update_settings", user_attribute_update_settings) if user_pool_add_ons is not None: pulumi.set(__self__, "user_pool_add_ons", user_pool_add_ons) + if user_pool_tier is not None: + pulumi.set(__self__, "user_pool_tier", user_pool_tier) if username_attributes is not None: pulumi.set(__self__, "username_attributes", username_attributes) if username_configuration is not None: pulumi.set(__self__, "username_configuration", username_configuration) if verification_message_template is not None: pulumi.set(__self__, "verification_message_template", verification_message_template) + if web_authn_configuration is not None: + pulumi.set(__self__, "web_authn_configuration", web_authn_configuration) @property @pulumi.getter(name="accountRecoverySetting") @@ -686,6 +766,18 @@ def email_configuration(self) -> Optional[pulumi.Input['UserPoolEmailConfigurati def email_configuration(self, value: Optional[pulumi.Input['UserPoolEmailConfigurationArgs']]): pulumi.set(self, "email_configuration", value) + @property + @pulumi.getter(name="emailMfaConfiguration") + def email_mfa_configuration(self) -> Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']]: + """ + Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + """ + return pulumi.get(self, "email_mfa_configuration") + + @email_mfa_configuration.setter + def email_mfa_configuration(self, value: Optional[pulumi.Input['UserPoolEmailMfaConfigurationArgs']]): + pulumi.set(self, "email_mfa_configuration", value) + @property @pulumi.getter(name="emailVerificationMessage") def email_verification_message(self) -> Optional[pulumi.Input[str]]: @@ -808,6 +900,18 @@ def schemas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchema def schemas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserPoolSchemaArgs']]]]): pulumi.set(self, "schemas", value) + @property + @pulumi.getter(name="signInPolicy") + def sign_in_policy(self) -> Optional[pulumi.Input['UserPoolSignInPolicyArgs']]: + """ + Configuration block for information about the user pool sign in policy. Detailed below. + """ + return pulumi.get(self, "sign_in_policy") + + @sign_in_policy.setter + def sign_in_policy(self, value: Optional[pulumi.Input['UserPoolSignInPolicyArgs']]): + pulumi.set(self, "sign_in_policy", value) + @property @pulumi.getter(name="smsAuthenticationMessage") def sms_authentication_message(self) -> Optional[pulumi.Input[str]]: @@ -905,6 +1009,18 @@ def user_pool_add_ons(self) -> Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs def user_pool_add_ons(self, value: Optional[pulumi.Input['UserPoolUserPoolAddOnsArgs']]): pulumi.set(self, "user_pool_add_ons", value) + @property + @pulumi.getter(name="userPoolTier") + def user_pool_tier(self) -> Optional[pulumi.Input[str]]: + """ + The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + """ + return pulumi.get(self, "user_pool_tier") + + @user_pool_tier.setter + def user_pool_tier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user_pool_tier", value) + @property @pulumi.getter(name="usernameAttributes") def username_attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -941,6 +1057,18 @@ def verification_message_template(self) -> Optional[pulumi.Input['UserPoolVerifi def verification_message_template(self, value: Optional[pulumi.Input['UserPoolVerificationMessageTemplateArgs']]): pulumi.set(self, "verification_message_template", value) + @property + @pulumi.getter(name="webAuthnConfiguration") + def web_authn_configuration(self) -> Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']]: + """ + Configuration block for web authn configuration. Detailed below. + """ + return pulumi.get(self, "web_authn_configuration") + + @web_authn_configuration.setter + def web_authn_configuration(self, value: Optional[pulumi.Input['UserPoolWebAuthnConfigurationArgs']]): + pulumi.set(self, "web_authn_configuration", value) + class UserPool(pulumi.CustomResource): @overload @@ -954,6 +1082,7 @@ def __init__(__self__, deletion_protection: Optional[pulumi.Input[str]] = None, device_configuration: Optional[pulumi.Input[Union['UserPoolDeviceConfigurationArgs', 'UserPoolDeviceConfigurationArgsDict']]] = None, email_configuration: Optional[pulumi.Input[Union['UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict']]] = None, + email_mfa_configuration: Optional[pulumi.Input[Union['UserPoolEmailMfaConfigurationArgs', 'UserPoolEmailMfaConfigurationArgsDict']]] = None, email_verification_message: Optional[pulumi.Input[str]] = None, email_verification_subject: Optional[pulumi.Input[str]] = None, lambda_config: Optional[pulumi.Input[Union['UserPoolLambdaConfigArgs', 'UserPoolLambdaConfigArgsDict']]] = None, @@ -961,6 +1090,7 @@ def __init__(__self__, name: Optional[pulumi.Input[str]] = None, password_policy: Optional[pulumi.Input[Union['UserPoolPasswordPolicyArgs', 'UserPoolPasswordPolicyArgsDict']]] = None, schemas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserPoolSchemaArgs', 'UserPoolSchemaArgsDict']]]]] = None, + sign_in_policy: Optional[pulumi.Input[Union['UserPoolSignInPolicyArgs', 'UserPoolSignInPolicyArgsDict']]] = None, sms_authentication_message: Optional[pulumi.Input[str]] = None, sms_configuration: Optional[pulumi.Input[Union['UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict']]] = None, sms_verification_message: Optional[pulumi.Input[str]] = None, @@ -968,9 +1098,11 @@ def __init__(__self__, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, user_attribute_update_settings: Optional[pulumi.Input[Union['UserPoolUserAttributeUpdateSettingsArgs', 'UserPoolUserAttributeUpdateSettingsArgsDict']]] = None, user_pool_add_ons: Optional[pulumi.Input[Union['UserPoolUserPoolAddOnsArgs', 'UserPoolUserPoolAddOnsArgsDict']]] = None, + user_pool_tier: Optional[pulumi.Input[str]] = None, username_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, username_configuration: Optional[pulumi.Input[Union['UserPoolUsernameConfigurationArgs', 'UserPoolUsernameConfigurationArgsDict']]] = None, verification_message_template: Optional[pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']]] = None, + web_authn_configuration: Optional[pulumi.Input[Union['UserPoolWebAuthnConfigurationArgs', 'UserPoolWebAuthnConfigurationArgsDict']]] = None, __props__=None): """ Provides a Cognito User Pool resource. @@ -1044,6 +1176,7 @@ def __init__(__self__, :param pulumi.Input[str] deletion_protection: When active, DeletionProtection prevents accidental deletion of your user pool. Before you can delete a user pool that you have protected against deletion, you must deactivate this feature. Valid values are `ACTIVE` and `INACTIVE`, Default value is `INACTIVE`. :param pulumi.Input[Union['UserPoolDeviceConfigurationArgs', 'UserPoolDeviceConfigurationArgsDict']] device_configuration: Configuration block for the user pool's device tracking. Detailed below. :param pulumi.Input[Union['UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict']] email_configuration: Configuration block for configuring email. Detailed below. + :param pulumi.Input[Union['UserPoolEmailMfaConfigurationArgs', 'UserPoolEmailMfaConfigurationArgsDict']] email_mfa_configuration: Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. :param pulumi.Input[str] email_verification_message: String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. :param pulumi.Input[str] email_verification_subject: String representing the email verification subject. Conflicts with `verification_message_template` configuration block `email_subject` argument. :param pulumi.Input[Union['UserPoolLambdaConfigArgs', 'UserPoolLambdaConfigArgsDict']] lambda_config: Configuration block for the AWS Lambda triggers associated with the user pool. Detailed below. @@ -1053,6 +1186,7 @@ def __init__(__self__, The following arguments are optional: :param pulumi.Input[Union['UserPoolPasswordPolicyArgs', 'UserPoolPasswordPolicyArgsDict']] password_policy: Configuration block for information about the user pool password policy. Detailed below. :param pulumi.Input[Sequence[pulumi.Input[Union['UserPoolSchemaArgs', 'UserPoolSchemaArgsDict']]]] schemas: Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. + :param pulumi.Input[Union['UserPoolSignInPolicyArgs', 'UserPoolSignInPolicyArgsDict']] sign_in_policy: Configuration block for information about the user pool sign in policy. Detailed below. :param pulumi.Input[str] sms_authentication_message: String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. :param pulumi.Input[Union['UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict']] sms_configuration: Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. :param pulumi.Input[str] sms_verification_message: String representing the SMS verification message. Conflicts with `verification_message_template` configuration block `sms_message` argument. @@ -1060,9 +1194,11 @@ def __init__(__self__, :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the User Pool. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[Union['UserPoolUserAttributeUpdateSettingsArgs', 'UserPoolUserAttributeUpdateSettingsArgsDict']] user_attribute_update_settings: Configuration block for user attribute update settings. Detailed below. :param pulumi.Input[Union['UserPoolUserPoolAddOnsArgs', 'UserPoolUserPoolAddOnsArgsDict']] user_pool_add_ons: Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. + :param pulumi.Input[str] user_pool_tier: The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. :param pulumi.Input[Sequence[pulumi.Input[str]]] username_attributes: Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. :param pulumi.Input[Union['UserPoolUsernameConfigurationArgs', 'UserPoolUsernameConfigurationArgsDict']] username_configuration: Configuration block for username configuration. Detailed below. :param pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']] verification_message_template: Configuration block for verification message templates. Detailed below. + :param pulumi.Input[Union['UserPoolWebAuthnConfigurationArgs', 'UserPoolWebAuthnConfigurationArgsDict']] web_authn_configuration: Configuration block for web authn configuration. Detailed below. """ ... @overload @@ -1155,6 +1291,7 @@ def _internal_init(__self__, deletion_protection: Optional[pulumi.Input[str]] = None, device_configuration: Optional[pulumi.Input[Union['UserPoolDeviceConfigurationArgs', 'UserPoolDeviceConfigurationArgsDict']]] = None, email_configuration: Optional[pulumi.Input[Union['UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict']]] = None, + email_mfa_configuration: Optional[pulumi.Input[Union['UserPoolEmailMfaConfigurationArgs', 'UserPoolEmailMfaConfigurationArgsDict']]] = None, email_verification_message: Optional[pulumi.Input[str]] = None, email_verification_subject: Optional[pulumi.Input[str]] = None, lambda_config: Optional[pulumi.Input[Union['UserPoolLambdaConfigArgs', 'UserPoolLambdaConfigArgsDict']]] = None, @@ -1162,6 +1299,7 @@ def _internal_init(__self__, name: Optional[pulumi.Input[str]] = None, password_policy: Optional[pulumi.Input[Union['UserPoolPasswordPolicyArgs', 'UserPoolPasswordPolicyArgsDict']]] = None, schemas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserPoolSchemaArgs', 'UserPoolSchemaArgsDict']]]]] = None, + sign_in_policy: Optional[pulumi.Input[Union['UserPoolSignInPolicyArgs', 'UserPoolSignInPolicyArgsDict']]] = None, sms_authentication_message: Optional[pulumi.Input[str]] = None, sms_configuration: Optional[pulumi.Input[Union['UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict']]] = None, sms_verification_message: Optional[pulumi.Input[str]] = None, @@ -1169,9 +1307,11 @@ def _internal_init(__self__, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, user_attribute_update_settings: Optional[pulumi.Input[Union['UserPoolUserAttributeUpdateSettingsArgs', 'UserPoolUserAttributeUpdateSettingsArgsDict']]] = None, user_pool_add_ons: Optional[pulumi.Input[Union['UserPoolUserPoolAddOnsArgs', 'UserPoolUserPoolAddOnsArgsDict']]] = None, + user_pool_tier: Optional[pulumi.Input[str]] = None, username_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, username_configuration: Optional[pulumi.Input[Union['UserPoolUsernameConfigurationArgs', 'UserPoolUsernameConfigurationArgsDict']]] = None, verification_message_template: Optional[pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']]] = None, + web_authn_configuration: Optional[pulumi.Input[Union['UserPoolWebAuthnConfigurationArgs', 'UserPoolWebAuthnConfigurationArgsDict']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -1188,6 +1328,7 @@ def _internal_init(__self__, __props__.__dict__["deletion_protection"] = deletion_protection __props__.__dict__["device_configuration"] = device_configuration __props__.__dict__["email_configuration"] = email_configuration + __props__.__dict__["email_mfa_configuration"] = email_mfa_configuration __props__.__dict__["email_verification_message"] = email_verification_message __props__.__dict__["email_verification_subject"] = email_verification_subject __props__.__dict__["lambda_config"] = lambda_config @@ -1195,6 +1336,7 @@ def _internal_init(__self__, __props__.__dict__["name"] = name __props__.__dict__["password_policy"] = password_policy __props__.__dict__["schemas"] = schemas + __props__.__dict__["sign_in_policy"] = sign_in_policy __props__.__dict__["sms_authentication_message"] = sms_authentication_message __props__.__dict__["sms_configuration"] = sms_configuration __props__.__dict__["sms_verification_message"] = sms_verification_message @@ -1202,9 +1344,11 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["user_attribute_update_settings"] = user_attribute_update_settings __props__.__dict__["user_pool_add_ons"] = user_pool_add_ons + __props__.__dict__["user_pool_tier"] = user_pool_tier __props__.__dict__["username_attributes"] = username_attributes __props__.__dict__["username_configuration"] = username_configuration __props__.__dict__["verification_message_template"] = verification_message_template + __props__.__dict__["web_authn_configuration"] = web_authn_configuration __props__.__dict__["arn"] = None __props__.__dict__["creation_date"] = None __props__.__dict__["custom_domain"] = None @@ -1234,6 +1378,7 @@ def get(resource_name: str, device_configuration: Optional[pulumi.Input[Union['UserPoolDeviceConfigurationArgs', 'UserPoolDeviceConfigurationArgsDict']]] = None, domain: Optional[pulumi.Input[str]] = None, email_configuration: Optional[pulumi.Input[Union['UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict']]] = None, + email_mfa_configuration: Optional[pulumi.Input[Union['UserPoolEmailMfaConfigurationArgs', 'UserPoolEmailMfaConfigurationArgsDict']]] = None, email_verification_message: Optional[pulumi.Input[str]] = None, email_verification_subject: Optional[pulumi.Input[str]] = None, endpoint: Optional[pulumi.Input[str]] = None, @@ -1244,6 +1389,7 @@ def get(resource_name: str, name: Optional[pulumi.Input[str]] = None, password_policy: Optional[pulumi.Input[Union['UserPoolPasswordPolicyArgs', 'UserPoolPasswordPolicyArgsDict']]] = None, schemas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserPoolSchemaArgs', 'UserPoolSchemaArgsDict']]]]] = None, + sign_in_policy: Optional[pulumi.Input[Union['UserPoolSignInPolicyArgs', 'UserPoolSignInPolicyArgsDict']]] = None, sms_authentication_message: Optional[pulumi.Input[str]] = None, sms_configuration: Optional[pulumi.Input[Union['UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict']]] = None, sms_verification_message: Optional[pulumi.Input[str]] = None, @@ -1252,9 +1398,11 @@ def get(resource_name: str, tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, user_attribute_update_settings: Optional[pulumi.Input[Union['UserPoolUserAttributeUpdateSettingsArgs', 'UserPoolUserAttributeUpdateSettingsArgsDict']]] = None, user_pool_add_ons: Optional[pulumi.Input[Union['UserPoolUserPoolAddOnsArgs', 'UserPoolUserPoolAddOnsArgsDict']]] = None, + user_pool_tier: Optional[pulumi.Input[str]] = None, username_attributes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, username_configuration: Optional[pulumi.Input[Union['UserPoolUsernameConfigurationArgs', 'UserPoolUsernameConfigurationArgsDict']]] = None, - verification_message_template: Optional[pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']]] = None) -> 'UserPool': + verification_message_template: Optional[pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']]] = None, + web_authn_configuration: Optional[pulumi.Input[Union['UserPoolWebAuthnConfigurationArgs', 'UserPoolWebAuthnConfigurationArgsDict']]] = None) -> 'UserPool': """ Get an existing UserPool resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -1273,6 +1421,7 @@ def get(resource_name: str, :param pulumi.Input[Union['UserPoolDeviceConfigurationArgs', 'UserPoolDeviceConfigurationArgsDict']] device_configuration: Configuration block for the user pool's device tracking. Detailed below. :param pulumi.Input[str] domain: Holds the domain prefix if the user pool has a domain associated with it. :param pulumi.Input[Union['UserPoolEmailConfigurationArgs', 'UserPoolEmailConfigurationArgsDict']] email_configuration: Configuration block for configuring email. Detailed below. + :param pulumi.Input[Union['UserPoolEmailMfaConfigurationArgs', 'UserPoolEmailMfaConfigurationArgsDict']] email_mfa_configuration: Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. :param pulumi.Input[str] email_verification_message: String representing the email verification message. Conflicts with `verification_message_template` configuration block `email_message` argument. :param pulumi.Input[str] email_verification_subject: String representing the email verification subject. Conflicts with `verification_message_template` configuration block `email_subject` argument. :param pulumi.Input[str] endpoint: Endpoint name of the user pool. Example format: `cognito-idp.REGION.amazonaws.com/xxxx_yyyyy` @@ -1285,6 +1434,7 @@ def get(resource_name: str, The following arguments are optional: :param pulumi.Input[Union['UserPoolPasswordPolicyArgs', 'UserPoolPasswordPolicyArgsDict']] password_policy: Configuration block for information about the user pool password policy. Detailed below. :param pulumi.Input[Sequence[pulumi.Input[Union['UserPoolSchemaArgs', 'UserPoolSchemaArgsDict']]]] schemas: Configuration block for the schema attributes of a user pool. Detailed below. Schema attributes from the [standard attribute set](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-attributes.html#cognito-user-pools-standard-attributes) only need to be specified if they are different from the default configuration. Attributes can be added, but not modified or removed. Maximum of 50 attributes. + :param pulumi.Input[Union['UserPoolSignInPolicyArgs', 'UserPoolSignInPolicyArgsDict']] sign_in_policy: Configuration block for information about the user pool sign in policy. Detailed below. :param pulumi.Input[str] sms_authentication_message: String representing the SMS authentication message. The Message must contain the `{####}` placeholder, which will be replaced with the code. :param pulumi.Input[Union['UserPoolSmsConfigurationArgs', 'UserPoolSmsConfigurationArgsDict']] sms_configuration: Configuration block for Short Message Service (SMS) settings. Detailed below. These settings apply to SMS user verification and SMS Multi-Factor Authentication (MFA). Due to Cognito API restrictions, the SMS configuration cannot be removed without recreating the Cognito User Pool. For user data safety, this resource will ignore the removal of this configuration by disabling drift detection. To force resource recreation after this configuration has been applied, see the `taint` command. :param pulumi.Input[str] sms_verification_message: String representing the SMS verification message. Conflicts with `verification_message_template` configuration block `sms_message` argument. @@ -1293,9 +1443,11 @@ def get(resource_name: str, :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. :param pulumi.Input[Union['UserPoolUserAttributeUpdateSettingsArgs', 'UserPoolUserAttributeUpdateSettingsArgsDict']] user_attribute_update_settings: Configuration block for user attribute update settings. Detailed below. :param pulumi.Input[Union['UserPoolUserPoolAddOnsArgs', 'UserPoolUserPoolAddOnsArgsDict']] user_pool_add_ons: Configuration block for user pool add-ons to enable user pool advanced security mode features. Detailed below. + :param pulumi.Input[str] user_pool_tier: The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. :param pulumi.Input[Sequence[pulumi.Input[str]]] username_attributes: Whether email addresses or phone numbers can be specified as usernames when a user signs up. Conflicts with `alias_attributes`. :param pulumi.Input[Union['UserPoolUsernameConfigurationArgs', 'UserPoolUsernameConfigurationArgsDict']] username_configuration: Configuration block for username configuration. Detailed below. :param pulumi.Input[Union['UserPoolVerificationMessageTemplateArgs', 'UserPoolVerificationMessageTemplateArgsDict']] verification_message_template: Configuration block for verification message templates. Detailed below. + :param pulumi.Input[Union['UserPoolWebAuthnConfigurationArgs', 'UserPoolWebAuthnConfigurationArgsDict']] web_authn_configuration: Configuration block for web authn configuration. Detailed below. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1312,6 +1464,7 @@ def get(resource_name: str, __props__.__dict__["device_configuration"] = device_configuration __props__.__dict__["domain"] = domain __props__.__dict__["email_configuration"] = email_configuration + __props__.__dict__["email_mfa_configuration"] = email_mfa_configuration __props__.__dict__["email_verification_message"] = email_verification_message __props__.__dict__["email_verification_subject"] = email_verification_subject __props__.__dict__["endpoint"] = endpoint @@ -1322,6 +1475,7 @@ def get(resource_name: str, __props__.__dict__["name"] = name __props__.__dict__["password_policy"] = password_policy __props__.__dict__["schemas"] = schemas + __props__.__dict__["sign_in_policy"] = sign_in_policy __props__.__dict__["sms_authentication_message"] = sms_authentication_message __props__.__dict__["sms_configuration"] = sms_configuration __props__.__dict__["sms_verification_message"] = sms_verification_message @@ -1330,9 +1484,11 @@ def get(resource_name: str, __props__.__dict__["tags_all"] = tags_all __props__.__dict__["user_attribute_update_settings"] = user_attribute_update_settings __props__.__dict__["user_pool_add_ons"] = user_pool_add_ons + __props__.__dict__["user_pool_tier"] = user_pool_tier __props__.__dict__["username_attributes"] = username_attributes __props__.__dict__["username_configuration"] = username_configuration __props__.__dict__["verification_message_template"] = verification_message_template + __props__.__dict__["web_authn_configuration"] = web_authn_configuration return UserPool(resource_name, opts=opts, __props__=__props__) @property @@ -1423,6 +1579,14 @@ def email_configuration(self) -> pulumi.Output[Optional['outputs.UserPoolEmailCo """ return pulumi.get(self, "email_configuration") + @property + @pulumi.getter(name="emailMfaConfiguration") + def email_mfa_configuration(self) -> pulumi.Output[Optional['outputs.UserPoolEmailMfaConfiguration']]: + """ + Configuration block for configuring email Multi-Factor Authentication (MFA); requires at least 2 `account_recovery_setting` entries; requires an `email_configuration` configuration block. Detailed below. + """ + return pulumi.get(self, "email_mfa_configuration") + @property @pulumi.getter(name="emailVerificationMessage") def email_verification_message(self) -> pulumi.Output[str]: @@ -1505,6 +1669,14 @@ def schemas(self) -> pulumi.Output[Optional[Sequence['outputs.UserPoolSchema']]] """ return pulumi.get(self, "schemas") + @property + @pulumi.getter(name="signInPolicy") + def sign_in_policy(self) -> pulumi.Output['outputs.UserPoolSignInPolicy']: + """ + Configuration block for information about the user pool sign in policy. Detailed below. + """ + return pulumi.get(self, "sign_in_policy") + @property @pulumi.getter(name="smsAuthenticationMessage") def sms_authentication_message(self) -> pulumi.Output[Optional[str]]: @@ -1570,6 +1742,14 @@ def user_pool_add_ons(self) -> pulumi.Output[Optional['outputs.UserPoolUserPoolA """ return pulumi.get(self, "user_pool_add_ons") + @property + @pulumi.getter(name="userPoolTier") + def user_pool_tier(self) -> pulumi.Output[str]: + """ + The user pool [feature plan](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-sign-in-feature-plans.html), or tier. Valid values: `LITE`, `ESSENTIALS`, `PLUS`. + """ + return pulumi.get(self, "user_pool_tier") + @property @pulumi.getter(name="usernameAttributes") def username_attributes(self) -> pulumi.Output[Optional[Sequence[str]]]: @@ -1594,3 +1774,11 @@ def verification_message_template(self) -> pulumi.Output['outputs.UserPoolVerifi """ return pulumi.get(self, "verification_message_template") + @property + @pulumi.getter(name="webAuthnConfiguration") + def web_authn_configuration(self) -> pulumi.Output[Optional['outputs.UserPoolWebAuthnConfiguration']]: + """ + Configuration block for web authn configuration. Detailed below. + """ + return pulumi.get(self, "web_authn_configuration") + diff --git a/sdk/python/pulumi_aws/dms/_inputs.py b/sdk/python/pulumi_aws/dms/_inputs.py index 2575ffacf61..fc3fece5743 100644 --- a/sdk/python/pulumi_aws/dms/_inputs.py +++ b/sdk/python/pulumi_aws/dms/_inputs.py @@ -189,6 +189,10 @@ class EndpointKafkaSettingsArgsDict(TypedDict): """ Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. """ + sasl_mechanism: NotRequired[pulumi.Input[str]] + """ + For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + """ sasl_password: NotRequired[pulumi.Input[str]] """ Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. @@ -237,6 +241,7 @@ def __init__(__self__, *, message_max_bytes: Optional[pulumi.Input[int]] = None, no_hex_prefix: Optional[pulumi.Input[bool]] = None, partition_include_schema_table: Optional[pulumi.Input[bool]] = None, + sasl_mechanism: Optional[pulumi.Input[str]] = None, sasl_password: Optional[pulumi.Input[str]] = None, sasl_username: Optional[pulumi.Input[str]] = None, security_protocol: Optional[pulumi.Input[str]] = None, @@ -256,6 +261,7 @@ def __init__(__self__, *, :param pulumi.Input[int] message_max_bytes: Maximum size in bytes for records created on the endpoint Default is `1,000,000`. :param pulumi.Input[bool] no_hex_prefix: Set this optional parameter to true to avoid adding a '0x' prefix to raw data in hexadecimal format. For example, by default, AWS DMS adds a '0x' prefix to the LOB column type in hexadecimal format moving from an Oracle source to a Kafka target. Use the `no_hex_prefix` endpoint setting to enable migration of RAW data type columns without adding the `'0x'` prefix. :param pulumi.Input[bool] partition_include_schema_table: Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. + :param pulumi.Input[str] sasl_mechanism: For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. :param pulumi.Input[str] sasl_password: Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. :param pulumi.Input[str] sasl_username: Secure user name you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. :param pulumi.Input[str] security_protocol: Set secure connection to a Kafka target endpoint using Transport Layer Security (TLS). Options include `ssl-encryption`, `ssl-authentication`, and `sasl-ssl`. `sasl-ssl` requires `sasl_username` and `sasl_password`. @@ -284,6 +290,8 @@ def __init__(__self__, *, pulumi.set(__self__, "no_hex_prefix", no_hex_prefix) if partition_include_schema_table is not None: pulumi.set(__self__, "partition_include_schema_table", partition_include_schema_table) + if sasl_mechanism is not None: + pulumi.set(__self__, "sasl_mechanism", sasl_mechanism) if sasl_password is not None: pulumi.set(__self__, "sasl_password", sasl_password) if sasl_username is not None: @@ -421,6 +429,18 @@ def partition_include_schema_table(self) -> Optional[pulumi.Input[bool]]: def partition_include_schema_table(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "partition_include_schema_table", value) + @property + @pulumi.getter(name="saslMechanism") + def sasl_mechanism(self) -> Optional[pulumi.Input[str]]: + """ + For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + """ + return pulumi.get(self, "sasl_mechanism") + + @sasl_mechanism.setter + def sasl_mechanism(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "sasl_mechanism", value) + @property @pulumi.getter(name="saslPassword") def sasl_password(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_aws/dms/outputs.py b/sdk/python/pulumi_aws/dms/outputs.py index 07f16a60fdc..9491e5322a1 100644 --- a/sdk/python/pulumi_aws/dms/outputs.py +++ b/sdk/python/pulumi_aws/dms/outputs.py @@ -147,6 +147,8 @@ def __key_warning(key: str): suggest = "no_hex_prefix" elif key == "partitionIncludeSchemaTable": suggest = "partition_include_schema_table" + elif key == "saslMechanism": + suggest = "sasl_mechanism" elif key == "saslPassword": suggest = "sasl_password" elif key == "saslUsername": @@ -184,6 +186,7 @@ def __init__(__self__, *, message_max_bytes: Optional[int] = None, no_hex_prefix: Optional[bool] = None, partition_include_schema_table: Optional[bool] = None, + sasl_mechanism: Optional[str] = None, sasl_password: Optional[str] = None, sasl_username: Optional[str] = None, security_protocol: Optional[str] = None, @@ -203,6 +206,7 @@ def __init__(__self__, *, :param int message_max_bytes: Maximum size in bytes for records created on the endpoint Default is `1,000,000`. :param bool no_hex_prefix: Set this optional parameter to true to avoid adding a '0x' prefix to raw data in hexadecimal format. For example, by default, AWS DMS adds a '0x' prefix to the LOB column type in hexadecimal format moving from an Oracle source to a Kafka target. Use the `no_hex_prefix` endpoint setting to enable migration of RAW data type columns without adding the `'0x'` prefix. :param bool partition_include_schema_table: Prefixes schema and table names to partition values, when the partition type is `primary-key-type`. Doing this increases data distribution among Kafka partitions. For example, suppose that a SysBench schema has thousands of tables and each table has only limited range for a primary key. In this case, the same primary key is sent from thousands of tables to the same partition, which causes throttling. Default is `false`. + :param str sasl_mechanism: For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. :param str sasl_password: Secure password you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. :param str sasl_username: Secure user name you created when you first set up your MSK cluster to validate a client identity and make an encrypted connection between server and client using SASL-SSL authentication. :param str security_protocol: Set secure connection to a Kafka target endpoint using Transport Layer Security (TLS). Options include `ssl-encryption`, `ssl-authentication`, and `sasl-ssl`. `sasl-ssl` requires `sasl_username` and `sasl_password`. @@ -231,6 +235,8 @@ def __init__(__self__, *, pulumi.set(__self__, "no_hex_prefix", no_hex_prefix) if partition_include_schema_table is not None: pulumi.set(__self__, "partition_include_schema_table", partition_include_schema_table) + if sasl_mechanism is not None: + pulumi.set(__self__, "sasl_mechanism", sasl_mechanism) if sasl_password is not None: pulumi.set(__self__, "sasl_password", sasl_password) if sasl_username is not None: @@ -328,6 +334,14 @@ def partition_include_schema_table(self) -> Optional[bool]: """ return pulumi.get(self, "partition_include_schema_table") + @property + @pulumi.getter(name="saslMechanism") + def sasl_mechanism(self) -> Optional[str]: + """ + For SASL/SSL authentication, AWS DMS supports the `scram-sha-512` mechanism by default. AWS DMS versions 3.5.0 and later also support the PLAIN mechanism. To use the PLAIN mechanism, set this parameter to `plain`. + """ + return pulumi.get(self, "sasl_mechanism") + @property @pulumi.getter(name="saslPassword") def sasl_password(self) -> Optional[str]: @@ -1855,6 +1869,7 @@ def __init__(__self__, *, message_max_bytes: int, no_hex_prefix: bool, partition_include_schema_table: bool, + sasl_mechanism: str, sasl_password: str, sasl_username: str, security_protocol: str, @@ -1873,6 +1888,7 @@ def __init__(__self__, *, pulumi.set(__self__, "message_max_bytes", message_max_bytes) pulumi.set(__self__, "no_hex_prefix", no_hex_prefix) pulumi.set(__self__, "partition_include_schema_table", partition_include_schema_table) + pulumi.set(__self__, "sasl_mechanism", sasl_mechanism) pulumi.set(__self__, "sasl_password", sasl_password) pulumi.set(__self__, "sasl_username", sasl_username) pulumi.set(__self__, "security_protocol", security_protocol) @@ -1932,6 +1948,11 @@ def no_hex_prefix(self) -> bool: def partition_include_schema_table(self) -> bool: return pulumi.get(self, "partition_include_schema_table") + @property + @pulumi.getter(name="saslMechanism") + def sasl_mechanism(self) -> str: + return pulumi.get(self, "sasl_mechanism") + @property @pulumi.getter(name="saslPassword") def sasl_password(self) -> str: diff --git a/sdk/python/pulumi_aws/ec2/eip_association.py b/sdk/python/pulumi_aws/ec2/eip_association.py index 94a07dc606f..ec396306dd9 100644 --- a/sdk/python/pulumi_aws/ec2/eip_association.py +++ b/sdk/python/pulumi_aws/ec2/eip_association.py @@ -27,21 +27,19 @@ def __init__(__self__, *, public_ip: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a EipAssociation resource. - :param pulumi.Input[str] allocation_id: The allocation ID. This is required for EC2-VPC. - :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. - :param pulumi.Input[str] instance_id: The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. - :param pulumi.Input[str] network_interface_id: The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. - :param pulumi.Input[str] private_ip_address: The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. - :param pulumi.Input[str] public_ip: The Elastic IP address. This is required for EC2-Classic. + :param pulumi.Input[str] allocation_id: ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. + :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. + :param pulumi.Input[str] instance_id: ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] network_interface_id: ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] private_ip_address: Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. + :param pulumi.Input[str] public_ip: ) Address of the associated Elastic IP. """ if allocation_id is not None: pulumi.set(__self__, "allocation_id", allocation_id) @@ -60,7 +58,8 @@ def __init__(__self__, *, @pulumi.getter(name="allocationId") def allocation_id(self) -> Optional[pulumi.Input[str]]: """ - The allocation ID. This is required for EC2-VPC. + ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. """ return pulumi.get(self, "allocation_id") @@ -72,8 +71,8 @@ def allocation_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="allowReassociation") def allow_reassociation(self) -> Optional[pulumi.Input[bool]]: """ - Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. + Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. """ return pulumi.get(self, "allow_reassociation") @@ -85,10 +84,9 @@ def allow_reassociation(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. + ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "instance_id") @@ -100,9 +98,9 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="networkInterfaceId") def network_interface_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. + ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "network_interface_id") @@ -114,10 +112,8 @@ def network_interface_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="privateIpAddress") def private_ip_address(self) -> Optional[pulumi.Input[str]]: """ - The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. + Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. """ return pulumi.get(self, "private_ip_address") @@ -129,7 +125,7 @@ def private_ip_address(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="publicIp") def public_ip(self) -> Optional[pulumi.Input[str]]: """ - The Elastic IP address. This is required for EC2-Classic. + ) Address of the associated Elastic IP. """ return pulumi.get(self, "public_ip") @@ -149,21 +145,19 @@ def __init__(__self__, *, public_ip: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering EipAssociation resources. - :param pulumi.Input[str] allocation_id: The allocation ID. This is required for EC2-VPC. - :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. - :param pulumi.Input[str] instance_id: The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. - :param pulumi.Input[str] network_interface_id: The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. - :param pulumi.Input[str] private_ip_address: The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. - :param pulumi.Input[str] public_ip: The Elastic IP address. This is required for EC2-Classic. + :param pulumi.Input[str] allocation_id: ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. + :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. + :param pulumi.Input[str] instance_id: ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] network_interface_id: ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] private_ip_address: Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. + :param pulumi.Input[str] public_ip: ) Address of the associated Elastic IP. """ if allocation_id is not None: pulumi.set(__self__, "allocation_id", allocation_id) @@ -182,7 +176,8 @@ def __init__(__self__, *, @pulumi.getter(name="allocationId") def allocation_id(self) -> Optional[pulumi.Input[str]]: """ - The allocation ID. This is required for EC2-VPC. + ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. """ return pulumi.get(self, "allocation_id") @@ -194,8 +189,8 @@ def allocation_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="allowReassociation") def allow_reassociation(self) -> Optional[pulumi.Input[bool]]: """ - Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. + Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. """ return pulumi.get(self, "allow_reassociation") @@ -207,10 +202,9 @@ def allow_reassociation(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="instanceId") def instance_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. + ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "instance_id") @@ -222,9 +216,9 @@ def instance_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="networkInterfaceId") def network_interface_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. + ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "network_interface_id") @@ -236,10 +230,8 @@ def network_interface_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="privateIpAddress") def private_ip_address(self) -> Optional[pulumi.Input[str]]: """ - The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. + Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. """ return pulumi.get(self, "private_ip_address") @@ -251,7 +243,7 @@ def private_ip_address(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="publicIp") def public_ip(self) -> Optional[pulumi.Input[str]]: """ - The Elastic IP address. This is required for EC2-Classic. + ) Address of the associated Elastic IP. """ return pulumi.get(self, "public_ip") @@ -273,13 +265,11 @@ def __init__(__self__, public_ip: Optional[pulumi.Input[str]] = None, __props__=None): """ - Provides an AWS EIP Association as a top level resource, to associate and - disassociate Elastic IPs from AWS Instances and Network Interfaces. + Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. > **NOTE:** Do not use this resource to associate an EIP to `lb.LoadBalancer` or `ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. - > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either - pre-existing or distributed to customers or users and therefore cannot be changed. + > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. ## Example Usage @@ -310,21 +300,19 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] allocation_id: The allocation ID. This is required for EC2-VPC. - :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. - :param pulumi.Input[str] instance_id: The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. - :param pulumi.Input[str] network_interface_id: The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. - :param pulumi.Input[str] private_ip_address: The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. - :param pulumi.Input[str] public_ip: The Elastic IP address. This is required for EC2-Classic. + :param pulumi.Input[str] allocation_id: ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. + :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. + :param pulumi.Input[str] instance_id: ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] network_interface_id: ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] private_ip_address: Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. + :param pulumi.Input[str] public_ip: ) Address of the associated Elastic IP. """ ... @overload @@ -333,13 +321,11 @@ def __init__(__self__, args: Optional[EipAssociationArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Provides an AWS EIP Association as a top level resource, to associate and - disassociate Elastic IPs from AWS Instances and Network Interfaces. + Provides an AWS EIP Association as a top level resource, to associate and disassociate Elastic IPs from AWS Instances and Network Interfaces. > **NOTE:** Do not use this resource to associate an EIP to `lb.LoadBalancer` or `ec2.NatGateway` resources. Instead use the `allocation_id` available in those resources to allow AWS to manage the association, otherwise you will see `AuthFailure` errors. - > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either - pre-existing or distributed to customers or users and therefore cannot be changed. + > **NOTE:** `ec2.EipAssociation` is useful in scenarios where EIPs are either pre-existing or distributed to customers or users and therefore cannot be changed. ## Example Usage @@ -427,21 +413,19 @@ def get(resource_name: str, :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[str] allocation_id: The allocation ID. This is required for EC2-VPC. - :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. - :param pulumi.Input[str] instance_id: The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. - :param pulumi.Input[str] network_interface_id: The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. - :param pulumi.Input[str] private_ip_address: The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. - :param pulumi.Input[str] public_ip: The Elastic IP address. This is required for EC2-Classic. + :param pulumi.Input[str] allocation_id: ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. + :param pulumi.Input[bool] allow_reassociation: Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. + :param pulumi.Input[str] instance_id: ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] network_interface_id: ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. + :param pulumi.Input[str] private_ip_address: Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. + :param pulumi.Input[str] public_ip: ) Address of the associated Elastic IP. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -459,7 +443,8 @@ def get(resource_name: str, @pulumi.getter(name="allocationId") def allocation_id(self) -> pulumi.Output[str]: """ - The allocation ID. This is required for EC2-VPC. + ID of the associated Elastic IP. + This argument is required despite being optional at the resource level due to legacy support for EC2-Classic networking. """ return pulumi.get(self, "allocation_id") @@ -467,8 +452,8 @@ def allocation_id(self) -> pulumi.Output[str]: @pulumi.getter(name="allowReassociation") def allow_reassociation(self) -> pulumi.Output[Optional[bool]]: """ - Whether to allow an Elastic IP to - be re-associated. Defaults to `true` in VPC. + Whether to allow an Elastic IP address to be re-associated. + Defaults to `true`. """ return pulumi.get(self, "allow_reassociation") @@ -476,10 +461,9 @@ def allow_reassociation(self) -> pulumi.Output[Optional[bool]]: @pulumi.getter(name="instanceId") def instance_id(self) -> pulumi.Output[str]: """ - The ID of the instance. This is required for - EC2-Classic. For EC2-VPC, you can specify either the instance ID or the - network interface ID, but not both. The operation fails if you specify an - instance ID unless exactly one network interface is attached. + ID of the instance. + The instance must have exactly one attached network interface. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "instance_id") @@ -487,9 +471,9 @@ def instance_id(self) -> pulumi.Output[str]: @pulumi.getter(name="networkInterfaceId") def network_interface_id(self) -> pulumi.Output[str]: """ - The ID of the network interface. If the - instance has more than one network interface, you must specify a network - interface ID. + ID of the network interface. + If the instance has more than one network interface, you must specify a network interface ID. + You can specify either the instance ID or the network interface ID, but not both. """ return pulumi.get(self, "network_interface_id") @@ -497,10 +481,8 @@ def network_interface_id(self) -> pulumi.Output[str]: @pulumi.getter(name="privateIpAddress") def private_ip_address(self) -> pulumi.Output[str]: """ - The primary or secondary private IP address - to associate with the Elastic IP address. If no private IP address is - specified, the Elastic IP address is associated with the primary private IP - address. + Primary or secondary private IP address to associate with the Elastic IP address. + If no private IP address is specified, the Elastic IP address is associated with the primary private IP address. """ return pulumi.get(self, "private_ip_address") @@ -508,7 +490,7 @@ def private_ip_address(self) -> pulumi.Output[str]: @pulumi.getter(name="publicIp") def public_ip(self) -> pulumi.Output[str]: """ - The Elastic IP address. This is required for EC2-Classic. + ) Address of the associated Elastic IP. """ return pulumi.get(self, "public_ip") diff --git a/sdk/python/pulumi_aws/ec2/get_vpc_endpoint_service.py b/sdk/python/pulumi_aws/ec2/get_vpc_endpoint_service.py index 19dfe087e1f..edfd161fed2 100644 --- a/sdk/python/pulumi_aws/ec2/get_vpc_endpoint_service.py +++ b/sdk/python/pulumi_aws/ec2/get_vpc_endpoint_service.py @@ -28,7 +28,7 @@ class GetVpcEndpointServiceResult: """ A collection of values returned by getVpcEndpointService. """ - def __init__(__self__, acceptance_required=None, arn=None, availability_zones=None, base_endpoint_dns_names=None, filters=None, id=None, manages_vpc_endpoints=None, owner=None, private_dns_name=None, private_dns_names=None, service=None, service_id=None, service_name=None, service_type=None, supported_ip_address_types=None, tags=None, vpc_endpoint_policy_supported=None): + def __init__(__self__, acceptance_required=None, arn=None, availability_zones=None, base_endpoint_dns_names=None, filters=None, id=None, manages_vpc_endpoints=None, owner=None, private_dns_name=None, private_dns_names=None, region=None, service=None, service_id=None, service_name=None, service_regions=None, service_type=None, supported_ip_address_types=None, tags=None, vpc_endpoint_policy_supported=None): if acceptance_required and not isinstance(acceptance_required, bool): raise TypeError("Expected argument 'acceptance_required' to be a bool") pulumi.set(__self__, "acceptance_required", acceptance_required) @@ -59,6 +59,9 @@ def __init__(__self__, acceptance_required=None, arn=None, availability_zones=No if private_dns_names and not isinstance(private_dns_names, list): raise TypeError("Expected argument 'private_dns_names' to be a list") pulumi.set(__self__, "private_dns_names", private_dns_names) + if region and not isinstance(region, str): + raise TypeError("Expected argument 'region' to be a str") + pulumi.set(__self__, "region", region) if service and not isinstance(service, str): raise TypeError("Expected argument 'service' to be a str") pulumi.set(__self__, "service", service) @@ -68,6 +71,9 @@ def __init__(__self__, acceptance_required=None, arn=None, availability_zones=No if service_name and not isinstance(service_name, str): raise TypeError("Expected argument 'service_name' to be a str") pulumi.set(__self__, "service_name", service_name) + if service_regions and not isinstance(service_regions, list): + raise TypeError("Expected argument 'service_regions' to be a list") + pulumi.set(__self__, "service_regions", service_regions) if service_type and not isinstance(service_type, str): raise TypeError("Expected argument 'service_type' to be a str") pulumi.set(__self__, "service_type", service_type) @@ -101,7 +107,7 @@ def arn(self) -> str: @pulumi.getter(name="availabilityZones") def availability_zones(self) -> Sequence[str]: """ - Availability Zones in which the service is available. + Availability Zones in which the service is available. Not available for endpoint services in other regions. """ return pulumi.get(self, "availability_zones") @@ -158,6 +164,14 @@ def private_dns_names(self) -> Sequence[str]: """ return pulumi.get(self, "private_dns_names") + @property + @pulumi.getter + def region(self) -> str: + """ + Region of the endpoint service. + """ + return pulumi.get(self, "region") + @property @pulumi.getter def service(self) -> Optional[str]: @@ -176,6 +190,11 @@ def service_id(self) -> str: def service_name(self) -> str: return pulumi.get(self, "service_name") + @property + @pulumi.getter(name="serviceRegions") + def service_regions(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "service_regions") + @property @pulumi.getter(name="serviceType") def service_type(self) -> str: @@ -222,9 +241,11 @@ def __await__(self): owner=self.owner, private_dns_name=self.private_dns_name, private_dns_names=self.private_dns_names, + region=self.region, service=self.service, service_id=self.service_id, service_name=self.service_name, + service_regions=self.service_regions, service_type=self.service_type, supported_ip_address_types=self.supported_ip_address_types, tags=self.tags, @@ -234,6 +255,7 @@ def __await__(self): def get_vpc_endpoint_service(filters: Optional[Sequence[Union['GetVpcEndpointServiceFilterArgs', 'GetVpcEndpointServiceFilterArgsDict']]] = None, service: Optional[str] = None, service_name: Optional[str] = None, + service_regions: Optional[Sequence[str]] = None, service_type: Optional[str] = None, tags: Optional[Mapping[str, str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcEndpointServiceResult: @@ -285,6 +307,7 @@ def get_vpc_endpoint_service(filters: Optional[Sequence[Union['GetVpcEndpointSer :param Sequence[Union['GetVpcEndpointServiceFilterArgs', 'GetVpcEndpointServiceFilterArgsDict']] filters: Configuration block(s) for filtering. Detailed below. :param str service: Common name of an AWS service (e.g., `s3`). :param str service_name: Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). + :param Sequence[str] service_regions: AWS regions in which to look for services. :param str service_type: Service type, `Gateway` or `Interface`. :param Mapping[str, str] tags: Map of tags, each pair of which must exactly match a pair on the desired VPC Endpoint Service. @@ -294,6 +317,7 @@ def get_vpc_endpoint_service(filters: Optional[Sequence[Union['GetVpcEndpointSer __args__['filters'] = filters __args__['service'] = service __args__['serviceName'] = service_name + __args__['serviceRegions'] = service_regions __args__['serviceType'] = service_type __args__['tags'] = tags opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) @@ -310,9 +334,11 @@ def get_vpc_endpoint_service(filters: Optional[Sequence[Union['GetVpcEndpointSer owner=pulumi.get(__ret__, 'owner'), private_dns_name=pulumi.get(__ret__, 'private_dns_name'), private_dns_names=pulumi.get(__ret__, 'private_dns_names'), + region=pulumi.get(__ret__, 'region'), service=pulumi.get(__ret__, 'service'), service_id=pulumi.get(__ret__, 'service_id'), service_name=pulumi.get(__ret__, 'service_name'), + service_regions=pulumi.get(__ret__, 'service_regions'), service_type=pulumi.get(__ret__, 'service_type'), supported_ip_address_types=pulumi.get(__ret__, 'supported_ip_address_types'), tags=pulumi.get(__ret__, 'tags'), @@ -320,6 +346,7 @@ def get_vpc_endpoint_service(filters: Optional[Sequence[Union['GetVpcEndpointSer def get_vpc_endpoint_service_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetVpcEndpointServiceFilterArgs', 'GetVpcEndpointServiceFilterArgsDict']]]]] = None, service: Optional[pulumi.Input[Optional[str]]] = None, service_name: Optional[pulumi.Input[Optional[str]]] = None, + service_regions: Optional[pulumi.Input[Optional[Sequence[str]]]] = None, service_type: Optional[pulumi.Input[Optional[str]]] = None, tags: Optional[pulumi.Input[Optional[Mapping[str, str]]]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetVpcEndpointServiceResult]: @@ -371,6 +398,7 @@ def get_vpc_endpoint_service_output(filters: Optional[pulumi.Input[Optional[Sequ :param Sequence[Union['GetVpcEndpointServiceFilterArgs', 'GetVpcEndpointServiceFilterArgsDict']] filters: Configuration block(s) for filtering. Detailed below. :param str service: Common name of an AWS service (e.g., `s3`). :param str service_name: Service name that is specified when creating a VPC endpoint. For AWS services the service name is usually in the form `com.amazonaws..` (the SageMaker Notebook service is an exception to this rule, the service name is in the form `aws.sagemaker..notebook`). + :param Sequence[str] service_regions: AWS regions in which to look for services. :param str service_type: Service type, `Gateway` or `Interface`. :param Mapping[str, str] tags: Map of tags, each pair of which must exactly match a pair on the desired VPC Endpoint Service. @@ -380,6 +408,7 @@ def get_vpc_endpoint_service_output(filters: Optional[pulumi.Input[Optional[Sequ __args__['filters'] = filters __args__['service'] = service __args__['serviceName'] = service_name + __args__['serviceRegions'] = service_regions __args__['serviceType'] = service_type __args__['tags'] = tags opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) @@ -395,9 +424,11 @@ def get_vpc_endpoint_service_output(filters: Optional[pulumi.Input[Optional[Sequ owner=pulumi.get(__response__, 'owner'), private_dns_name=pulumi.get(__response__, 'private_dns_name'), private_dns_names=pulumi.get(__response__, 'private_dns_names'), + region=pulumi.get(__response__, 'region'), service=pulumi.get(__response__, 'service'), service_id=pulumi.get(__response__, 'service_id'), service_name=pulumi.get(__response__, 'service_name'), + service_regions=pulumi.get(__response__, 'service_regions'), service_type=pulumi.get(__response__, 'service_type'), supported_ip_address_types=pulumi.get(__response__, 'supported_ip_address_types'), tags=pulumi.get(__response__, 'tags'), diff --git a/sdk/python/pulumi_aws/ec2/peering_connection_options.py b/sdk/python/pulumi_aws/ec2/peering_connection_options.py index 13108624c02..fac73eba379 100644 --- a/sdk/python/pulumi_aws/ec2/peering_connection_options.py +++ b/sdk/python/pulumi_aws/ec2/peering_connection_options.py @@ -27,8 +27,8 @@ def __init__(__self__, *, """ The set of arguments for constructing a PeeringConnectionOptions resource. :param pulumi.Input[str] vpc_peering_connection_id: The ID of the requester VPC peering connection. - :param pulumi.Input['PeeringConnectionOptionsAccepterArgs'] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). - :param pulumi.Input['PeeringConnectionOptionsRequesterArgs'] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + :param pulumi.Input['PeeringConnectionOptionsAccepterArgs'] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). + :param pulumi.Input['PeeringConnectionOptionsRequesterArgs'] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). """ pulumi.set(__self__, "vpc_peering_connection_id", vpc_peering_connection_id) if accepter is not None: @@ -52,7 +52,7 @@ def vpc_peering_connection_id(self, value: pulumi.Input[str]): @pulumi.getter def accepter(self) -> Optional[pulumi.Input['PeeringConnectionOptionsAccepterArgs']]: """ - An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). """ return pulumi.get(self, "accepter") @@ -64,7 +64,7 @@ def accepter(self, value: Optional[pulumi.Input['PeeringConnectionOptionsAccepte @pulumi.getter def requester(self) -> Optional[pulumi.Input['PeeringConnectionOptionsRequesterArgs']]: """ - A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). """ return pulumi.get(self, "requester") @@ -81,8 +81,8 @@ def __init__(__self__, *, vpc_peering_connection_id: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering PeeringConnectionOptions resources. - :param pulumi.Input['PeeringConnectionOptionsAccepterArgs'] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). - :param pulumi.Input['PeeringConnectionOptionsRequesterArgs'] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + :param pulumi.Input['PeeringConnectionOptionsAccepterArgs'] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). + :param pulumi.Input['PeeringConnectionOptionsRequesterArgs'] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). :param pulumi.Input[str] vpc_peering_connection_id: The ID of the requester VPC peering connection. """ if accepter is not None: @@ -96,7 +96,7 @@ def __init__(__self__, *, @pulumi.getter def accepter(self) -> Optional[pulumi.Input['PeeringConnectionOptionsAccepterArgs']]: """ - An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). """ return pulumi.get(self, "accepter") @@ -108,7 +108,7 @@ def accepter(self, value: Optional[pulumi.Input['PeeringConnectionOptionsAccepte @pulumi.getter def requester(self) -> Optional[pulumi.Input['PeeringConnectionOptionsRequesterArgs']]: """ - A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). """ return pulumi.get(self, "requester") @@ -224,8 +224,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Union['PeeringConnectionOptionsAccepterArgs', 'PeeringConnectionOptionsAccepterArgsDict']] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). - :param pulumi.Input[Union['PeeringConnectionOptionsRequesterArgs', 'PeeringConnectionOptionsRequesterArgsDict']] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + :param pulumi.Input[Union['PeeringConnectionOptionsAccepterArgs', 'PeeringConnectionOptionsAccepterArgsDict']] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). + :param pulumi.Input[Union['PeeringConnectionOptionsRequesterArgs', 'PeeringConnectionOptionsRequesterArgsDict']] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). :param pulumi.Input[str] vpc_peering_connection_id: The ID of the requester VPC peering connection. """ ... @@ -370,8 +370,8 @@ def get(resource_name: str, :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[Union['PeeringConnectionOptionsAccepterArgs', 'PeeringConnectionOptionsAccepterArgsDict']] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). - :param pulumi.Input[Union['PeeringConnectionOptionsRequesterArgs', 'PeeringConnectionOptionsRequesterArgsDict']] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + :param pulumi.Input[Union['PeeringConnectionOptionsAccepterArgs', 'PeeringConnectionOptionsAccepterArgsDict']] accepter: An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). + :param pulumi.Input[Union['PeeringConnectionOptionsRequesterArgs', 'PeeringConnectionOptionsRequesterArgsDict']] requester: A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). :param pulumi.Input[str] vpc_peering_connection_id: The ID of the requester VPC peering connection. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -387,7 +387,7 @@ def get(resource_name: str, @pulumi.getter def accepter(self) -> pulumi.Output['outputs.PeeringConnectionOptionsAccepter']: """ - An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that acceptsthe peering connection (a maximum of one). + An optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that accepts the peering connection (a maximum of one). """ return pulumi.get(self, "accepter") @@ -395,7 +395,7 @@ def accepter(self) -> pulumi.Output['outputs.PeeringConnectionOptionsAccepter']: @pulumi.getter def requester(self) -> pulumi.Output['outputs.PeeringConnectionOptionsRequester']: """ - A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requeststhe peering connection (a maximum of one). + A optional configuration block that allows for [VPC Peering Connection](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) options to be set for the VPC that requests the peering connection (a maximum of one). """ return pulumi.get(self, "requester") diff --git a/sdk/python/pulumi_aws/ecr/account_setting.py b/sdk/python/pulumi_aws/ecr/account_setting.py index 648ca4c7ad8..a56954e2873 100644 --- a/sdk/python/pulumi_aws/ecr/account_setting.py +++ b/sdk/python/pulumi_aws/ecr/account_setting.py @@ -23,8 +23,10 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a AccountSetting resource. - :param pulumi.Input[str] value: The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. - :param pulumi.Input[str] name: The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + :param pulumi.Input[str] value: Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. + :param pulumi.Input[str] name: Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. """ pulumi.set(__self__, "value", value) if name is not None: @@ -34,7 +36,9 @@ def __init__(__self__, *, @pulumi.getter def value(self) -> pulumi.Input[str]: """ - The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ return pulumi.get(self, "value") @@ -46,7 +50,7 @@ def value(self, value: pulumi.Input[str]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. """ return pulumi.get(self, "name") @@ -62,8 +66,10 @@ def __init__(__self__, *, value: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering AccountSetting resources. - :param pulumi.Input[str] name: The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. - :param pulumi.Input[str] value: The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + :param pulumi.Input[str] name: Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. + :param pulumi.Input[str] value: Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ if name is not None: pulumi.set(__self__, "name", name) @@ -74,7 +80,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. """ return pulumi.get(self, "name") @@ -86,7 +92,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def value(self) -> Optional[pulumi.Input[str]]: """ - The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ return pulumi.get(self, "value") @@ -108,18 +116,31 @@ def __init__(__self__, ## Example Usage + ### Configuring Basic Scanning + ```python import pulumi import pulumi_aws as aws - foo = aws.ecr.AccountSetting("foo", + basic_scan_type_version = aws.ecr.AccountSetting("basic_scan_type_version", name="BASIC_SCAN_TYPE_VERSION", - value="CLAIR") + value="AWS_NATIVE") + ``` + + ### Configuring Registry Policy Scope + + ```python + import pulumi + import pulumi_aws as aws + + registry_policy_scope = aws.ecr.AccountSetting("registry_policy_scope", + name="REGISTRY_POLICY_SCOPE", + value="V2") ``` ## Import - Using `pulumi import`, import EMR Security Configurations using the `name`. For example: + Using `pulumi import`, import EMR Security Configurations using the account setting name. For example: ```sh $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION @@ -127,8 +148,10 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] name: The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. - :param pulumi.Input[str] value: The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + :param pulumi.Input[str] name: Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. + :param pulumi.Input[str] value: Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ ... @overload @@ -141,18 +164,31 @@ def __init__(__self__, ## Example Usage + ### Configuring Basic Scanning + ```python import pulumi import pulumi_aws as aws - foo = aws.ecr.AccountSetting("foo", + basic_scan_type_version = aws.ecr.AccountSetting("basic_scan_type_version", name="BASIC_SCAN_TYPE_VERSION", - value="CLAIR") + value="AWS_NATIVE") + ``` + + ### Configuring Registry Policy Scope + + ```python + import pulumi + import pulumi_aws as aws + + registry_policy_scope = aws.ecr.AccountSetting("registry_policy_scope", + name="REGISTRY_POLICY_SCOPE", + value="V2") ``` ## Import - Using `pulumi import`, import EMR Security Configurations using the `name`. For example: + Using `pulumi import`, import EMR Security Configurations using the account setting name. For example: ```sh $ pulumi import aws:ecr/accountSetting:AccountSetting foo BASIC_SCAN_TYPE_VERSION @@ -207,8 +243,10 @@ def get(resource_name: str, :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[str] name: The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. - :param pulumi.Input[str] value: The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + :param pulumi.Input[str] name: Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. + :param pulumi.Input[str] value: Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -222,7 +260,7 @@ def get(resource_name: str, @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the ECR Scan Type. This should be `BASIC_SCAN_TYPE_VERSION`. + Name of the account setting. One of: `BASIC_SCAN_TYPE_VERSION`, `REGISTRY_POLICY_SCOPE`. """ return pulumi.get(self, "name") @@ -230,7 +268,9 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def value(self) -> pulumi.Output[str]: """ - The value of the ECR Scan Type. This can be `AWS_NATIVE` or `CLAIR`. + Setting value that is specified. Valid values are: + * If `name` is specified as `BASIC_SCAN_TYPE_VERSION`, one of: `AWS_NATIVE`, `CLAIR`. + * If `name` is specified as `REGISTRY_POLICY_SCOPE`, one of: `V1`, `V2`. """ return pulumi.get(self, "value") diff --git a/sdk/python/pulumi_aws/ecs/__init__.py b/sdk/python/pulumi_aws/ecs/__init__.py index cd96776e9d8..ed5b89c7240 100644 --- a/sdk/python/pulumi_aws/ecs/__init__.py +++ b/sdk/python/pulumi_aws/ecs/__init__.py @@ -10,6 +10,7 @@ from .cluster import * from .cluster_capacity_providers import * from .get_cluster import * +from .get_clusters import * from .get_container_definition import * from .get_service import * from .get_task_definition import * diff --git a/sdk/python/pulumi_aws/ecs/get_clusters.py b/sdk/python/pulumi_aws/ecs/get_clusters.py new file mode 100644 index 00000000000..02cfc586890 --- /dev/null +++ b/sdk/python/pulumi_aws/ecs/get_clusters.py @@ -0,0 +1,106 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = [ + 'GetClustersResult', + 'AwaitableGetClustersResult', + 'get_clusters', + 'get_clusters_output', +] + +@pulumi.output_type +class GetClustersResult: + """ + A collection of values returned by getClusters. + """ + def __init__(__self__, cluster_arns=None, id=None): + if cluster_arns and not isinstance(cluster_arns, list): + raise TypeError("Expected argument 'cluster_arns' to be a list") + pulumi.set(__self__, "cluster_arns", cluster_arns) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + + @property + @pulumi.getter(name="clusterArns") + def cluster_arns(self) -> Sequence[str]: + """ + List of ECS cluster ARNs associated with the account. + """ + return pulumi.get(self, "cluster_arns") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + +class AwaitableGetClustersResult(GetClustersResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetClustersResult( + cluster_arns=self.cluster_arns, + id=self.id) + + +def get_clusters(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetClustersResult: + """ + Data source for managing an AWS ECS (Elastic Container) Clusters. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.ecs.get_clusters() + ``` + """ + __args__ = dict() + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws:ecs/getClusters:getClusters', __args__, opts=opts, typ=GetClustersResult).value + + return AwaitableGetClustersResult( + cluster_arns=pulumi.get(__ret__, 'cluster_arns'), + id=pulumi.get(__ret__, 'id')) +def get_clusters_output(opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetClustersResult]: + """ + Data source for managing an AWS ECS (Elastic Container) Clusters. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.ecs.get_clusters() + ``` + """ + __args__ = dict() + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws:ecs/getClusters:getClusters', __args__, opts=opts, typ=GetClustersResult) + return __ret__.apply(lambda __response__: GetClustersResult( + cluster_arns=pulumi.get(__response__, 'cluster_arns'), + id=pulumi.get(__response__, 'id'))) diff --git a/sdk/python/pulumi_aws/eks/_inputs.py b/sdk/python/pulumi_aws/eks/_inputs.py index 6d051b50c31..9a5616fad57 100644 --- a/sdk/python/pulumi_aws/eks/_inputs.py +++ b/sdk/python/pulumi_aws/eks/_inputs.py @@ -63,6 +63,8 @@ 'IdentityProviderConfigOidcArgsDict', 'NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict', + 'NodeGroupNodeRepairConfigArgs', + 'NodeGroupNodeRepairConfigArgsDict', 'NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict', 'NodeGroupResourceArgs', @@ -1424,6 +1426,38 @@ def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) +if not MYPY: + class NodeGroupNodeRepairConfigArgsDict(TypedDict): + enabled: NotRequired[pulumi.Input[bool]] + """ + Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + """ +elif False: + NodeGroupNodeRepairConfigArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class NodeGroupNodeRepairConfigArgs: + def __init__(__self__, *, + enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] enabled: Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[pulumi.Input[bool]]: + """ + Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enabled", value) + + if not MYPY: class NodeGroupRemoteAccessArgsDict(TypedDict): ec2_ssh_key: NotRequired[pulumi.Input[str]] diff --git a/sdk/python/pulumi_aws/eks/node_group.py b/sdk/python/pulumi_aws/eks/node_group.py index ce2c8797d29..485d42a533b 100644 --- a/sdk/python/pulumi_aws/eks/node_group.py +++ b/sdk/python/pulumi_aws/eks/node_group.py @@ -34,6 +34,7 @@ def __init__(__self__, *, launch_template: Optional[pulumi.Input['NodeGroupLaunchTemplateArgs']] = None, node_group_name: Optional[pulumi.Input[str]] = None, node_group_name_prefix: Optional[pulumi.Input[str]] = None, + node_repair_config: Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']] = None, release_version: Optional[pulumi.Input[str]] = None, remote_access: Optional[pulumi.Input['NodeGroupRemoteAccessArgs']] = None, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, @@ -57,6 +58,7 @@ def __init__(__self__, *, :param pulumi.Input['NodeGroupLaunchTemplateArgs'] launch_template: Configuration block with Launch Template settings. See `launch_template` below for details. Conflicts with `remote_access`. :param pulumi.Input[str] node_group_name: Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `node_group_name_prefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters. :param pulumi.Input[str] node_group_name_prefix: Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`. + :param pulumi.Input['NodeGroupNodeRepairConfigArgs'] node_repair_config: The node auto repair configuration for the node group. See `node_repair_config` below for details. :param pulumi.Input[str] release_version: AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. :param pulumi.Input['NodeGroupRemoteAccessArgs'] remote_access: Configuration block with remote access settings. See `remote_access` below for details. Conflicts with `launch_template`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. @@ -86,6 +88,8 @@ def __init__(__self__, *, pulumi.set(__self__, "node_group_name", node_group_name) if node_group_name_prefix is not None: pulumi.set(__self__, "node_group_name_prefix", node_group_name_prefix) + if node_repair_config is not None: + pulumi.set(__self__, "node_repair_config", node_repair_config) if release_version is not None: pulumi.set(__self__, "release_version", release_version) if remote_access is not None: @@ -257,6 +261,18 @@ def node_group_name_prefix(self) -> Optional[pulumi.Input[str]]: def node_group_name_prefix(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "node_group_name_prefix", value) + @property + @pulumi.getter(name="nodeRepairConfig") + def node_repair_config(self) -> Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']]: + """ + The node auto repair configuration for the node group. See `node_repair_config` below for details. + """ + return pulumi.get(self, "node_repair_config") + + @node_repair_config.setter + def node_repair_config(self, value: Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']]): + pulumi.set(self, "node_repair_config", value) + @property @pulumi.getter(name="releaseVersion") def release_version(self) -> Optional[pulumi.Input[str]]: @@ -344,6 +360,7 @@ def __init__(__self__, *, launch_template: Optional[pulumi.Input['NodeGroupLaunchTemplateArgs']] = None, node_group_name: Optional[pulumi.Input[str]] = None, node_group_name_prefix: Optional[pulumi.Input[str]] = None, + node_repair_config: Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']] = None, node_role_arn: Optional[pulumi.Input[str]] = None, release_version: Optional[pulumi.Input[str]] = None, remote_access: Optional[pulumi.Input['NodeGroupRemoteAccessArgs']] = None, @@ -369,6 +386,7 @@ def __init__(__self__, *, :param pulumi.Input['NodeGroupLaunchTemplateArgs'] launch_template: Configuration block with Launch Template settings. See `launch_template` below for details. Conflicts with `remote_access`. :param pulumi.Input[str] node_group_name: Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `node_group_name_prefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters. :param pulumi.Input[str] node_group_name_prefix: Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`. + :param pulumi.Input['NodeGroupNodeRepairConfigArgs'] node_repair_config: The node auto repair configuration for the node group. See `node_repair_config` below for details. :param pulumi.Input[str] node_role_arn: Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. :param pulumi.Input[str] release_version: AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. :param pulumi.Input['NodeGroupRemoteAccessArgs'] remote_access: Configuration block with remote access settings. See `remote_access` below for details. Conflicts with `launch_template`. @@ -406,6 +424,8 @@ def __init__(__self__, *, pulumi.set(__self__, "node_group_name", node_group_name) if node_group_name_prefix is not None: pulumi.set(__self__, "node_group_name_prefix", node_group_name_prefix) + if node_repair_config is not None: + pulumi.set(__self__, "node_repair_config", node_repair_config) if node_role_arn is not None: pulumi.set(__self__, "node_role_arn", node_role_arn) if release_version is not None: @@ -566,6 +586,18 @@ def node_group_name_prefix(self) -> Optional[pulumi.Input[str]]: def node_group_name_prefix(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "node_group_name_prefix", value) + @property + @pulumi.getter(name="nodeRepairConfig") + def node_repair_config(self) -> Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']]: + """ + The node auto repair configuration for the node group. See `node_repair_config` below for details. + """ + return pulumi.get(self, "node_repair_config") + + @node_repair_config.setter + def node_repair_config(self, value: Optional[pulumi.Input['NodeGroupNodeRepairConfigArgs']]): + pulumi.set(self, "node_repair_config", value) + @property @pulumi.getter(name="nodeRoleArn") def node_role_arn(self) -> Optional[pulumi.Input[str]]: @@ -729,6 +761,7 @@ def __init__(__self__, launch_template: Optional[pulumi.Input[Union['NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict']]] = None, node_group_name: Optional[pulumi.Input[str]] = None, node_group_name_prefix: Optional[pulumi.Input[str]] = None, + node_repair_config: Optional[pulumi.Input[Union['NodeGroupNodeRepairConfigArgs', 'NodeGroupNodeRepairConfigArgsDict']]] = None, node_role_arn: Optional[pulumi.Input[str]] = None, release_version: Optional[pulumi.Input[str]] = None, remote_access: Optional[pulumi.Input[Union['NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict']]] = None, @@ -849,6 +882,7 @@ def __init__(__self__, :param pulumi.Input[Union['NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict']] launch_template: Configuration block with Launch Template settings. See `launch_template` below for details. Conflicts with `remote_access`. :param pulumi.Input[str] node_group_name: Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `node_group_name_prefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters. :param pulumi.Input[str] node_group_name_prefix: Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`. + :param pulumi.Input[Union['NodeGroupNodeRepairConfigArgs', 'NodeGroupNodeRepairConfigArgsDict']] node_repair_config: The node auto repair configuration for the node group. See `node_repair_config` below for details. :param pulumi.Input[str] node_role_arn: Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. :param pulumi.Input[str] release_version: AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. :param pulumi.Input[Union['NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict']] remote_access: Configuration block with remote access settings. See `remote_access` below for details. Conflicts with `launch_template`. @@ -990,6 +1024,7 @@ def _internal_init(__self__, launch_template: Optional[pulumi.Input[Union['NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict']]] = None, node_group_name: Optional[pulumi.Input[str]] = None, node_group_name_prefix: Optional[pulumi.Input[str]] = None, + node_repair_config: Optional[pulumi.Input[Union['NodeGroupNodeRepairConfigArgs', 'NodeGroupNodeRepairConfigArgsDict']]] = None, node_role_arn: Optional[pulumi.Input[str]] = None, release_version: Optional[pulumi.Input[str]] = None, remote_access: Optional[pulumi.Input[Union['NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict']]] = None, @@ -1020,6 +1055,7 @@ def _internal_init(__self__, __props__.__dict__["launch_template"] = launch_template __props__.__dict__["node_group_name"] = node_group_name __props__.__dict__["node_group_name_prefix"] = node_group_name_prefix + __props__.__dict__["node_repair_config"] = node_repair_config if node_role_arn is None and not opts.urn: raise TypeError("Missing required property 'node_role_arn'") __props__.__dict__["node_role_arn"] = node_role_arn @@ -1060,6 +1096,7 @@ def get(resource_name: str, launch_template: Optional[pulumi.Input[Union['NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict']]] = None, node_group_name: Optional[pulumi.Input[str]] = None, node_group_name_prefix: Optional[pulumi.Input[str]] = None, + node_repair_config: Optional[pulumi.Input[Union['NodeGroupNodeRepairConfigArgs', 'NodeGroupNodeRepairConfigArgsDict']]] = None, node_role_arn: Optional[pulumi.Input[str]] = None, release_version: Optional[pulumi.Input[str]] = None, remote_access: Optional[pulumi.Input[Union['NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict']]] = None, @@ -1090,6 +1127,7 @@ def get(resource_name: str, :param pulumi.Input[Union['NodeGroupLaunchTemplateArgs', 'NodeGroupLaunchTemplateArgsDict']] launch_template: Configuration block with Launch Template settings. See `launch_template` below for details. Conflicts with `remote_access`. :param pulumi.Input[str] node_group_name: Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `node_group_name_prefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters. :param pulumi.Input[str] node_group_name_prefix: Creates a unique name beginning with the specified prefix. Conflicts with `node_group_name`. + :param pulumi.Input[Union['NodeGroupNodeRepairConfigArgs', 'NodeGroupNodeRepairConfigArgsDict']] node_repair_config: The node auto repair configuration for the node group. See `node_repair_config` below for details. :param pulumi.Input[str] node_role_arn: Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group. :param pulumi.Input[str] release_version: AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version. :param pulumi.Input[Union['NodeGroupRemoteAccessArgs', 'NodeGroupRemoteAccessArgsDict']] remote_access: Configuration block with remote access settings. See `remote_access` below for details. Conflicts with `launch_template`. @@ -1120,6 +1158,7 @@ def get(resource_name: str, __props__.__dict__["launch_template"] = launch_template __props__.__dict__["node_group_name"] = node_group_name __props__.__dict__["node_group_name_prefix"] = node_group_name_prefix + __props__.__dict__["node_repair_config"] = node_repair_config __props__.__dict__["node_role_arn"] = node_role_arn __props__.__dict__["release_version"] = release_version __props__.__dict__["remote_access"] = remote_access @@ -1222,6 +1261,14 @@ def node_group_name_prefix(self) -> pulumi.Output[str]: """ return pulumi.get(self, "node_group_name_prefix") + @property + @pulumi.getter(name="nodeRepairConfig") + def node_repair_config(self) -> pulumi.Output['outputs.NodeGroupNodeRepairConfig']: + """ + The node auto repair configuration for the node group. See `node_repair_config` below for details. + """ + return pulumi.get(self, "node_repair_config") + @property @pulumi.getter(name="nodeRoleArn") def node_role_arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/eks/outputs.py b/sdk/python/pulumi_aws/eks/outputs.py index 046cf0ef106..dd327ab58c3 100644 --- a/sdk/python/pulumi_aws/eks/outputs.py +++ b/sdk/python/pulumi_aws/eks/outputs.py @@ -40,6 +40,7 @@ 'FargateProfileSelector', 'IdentityProviderConfigOidc', 'NodeGroupLaunchTemplate', + 'NodeGroupNodeRepairConfig', 'NodeGroupRemoteAccess', 'NodeGroupResource', 'NodeGroupResourceAutoscalingGroup', @@ -1118,6 +1119,25 @@ def name(self) -> Optional[str]: return pulumi.get(self, "name") +@pulumi.output_type +class NodeGroupNodeRepairConfig(dict): + def __init__(__self__, *, + enabled: Optional[bool] = None): + """ + :param bool enabled: Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + """ + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + + @property + @pulumi.getter + def enabled(self) -> Optional[bool]: + """ + Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default. + """ + return pulumi.get(self, "enabled") + + @pulumi.output_type class NodeGroupRemoteAccess(dict): @staticmethod diff --git a/sdk/python/pulumi_aws/elasticache/user.py b/sdk/python/pulumi_aws/elasticache/user.py index 3107a01a64b..c7857b45b30 100644 --- a/sdk/python/pulumi_aws/elasticache/user.py +++ b/sdk/python/pulumi_aws/elasticache/user.py @@ -32,7 +32,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a User resource. :param pulumi.Input[str] access_string: Access permissions string used for this user. See [Specifying Permissions Using an Access String](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html#Access-string) for more details. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported values are `REDIS`, `VALKEY`. :param pulumi.Input[str] user_id: The ID of the user. :param pulumi.Input[str] user_name: The username of the user. @@ -71,7 +71,7 @@ def access_string(self, value: pulumi.Input[str]): @pulumi.getter def engine(self) -> pulumi.Input[str]: """ - The current supported value is `REDIS`. + The current supported values are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") @@ -172,7 +172,7 @@ def __init__(__self__, *, :param pulumi.Input[str] access_string: Access permissions string used for this user. See [Specifying Permissions Using an Access String](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html#Access-string) for more details. :param pulumi.Input[str] arn: The ARN of the created ElastiCache User. :param pulumi.Input['UserAuthenticationModeArgs'] authentication_mode: Denotes the user's authentication properties. Detailed below. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported values are `REDIS`, `VALKEY`. :param pulumi.Input[bool] no_password_required: Indicates a password is not required for this user. :param pulumi.Input[Sequence[pulumi.Input[str]]] passwords: Passwords used for this user. You can create up to two passwords for each user. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A list of tags to be added to this resource. A tag is a key-value pair. @@ -245,7 +245,7 @@ def authentication_mode(self, value: Optional[pulumi.Input['UserAuthenticationMo @pulumi.getter def engine(self) -> Optional[pulumi.Input[str]]: """ - The current supported value is `REDIS`. + The current supported values are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") @@ -402,7 +402,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] access_string: Access permissions string used for this user. See [Specifying Permissions Using an Access String](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html#Access-string) for more details. :param pulumi.Input[Union['UserAuthenticationModeArgs', 'UserAuthenticationModeArgsDict']] authentication_mode: Denotes the user's authentication properties. Detailed below. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported values are `REDIS`, `VALKEY`. :param pulumi.Input[bool] no_password_required: Indicates a password is not required for this user. :param pulumi.Input[Sequence[pulumi.Input[str]]] passwords: Passwords used for this user. You can create up to two passwords for each user. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A list of tags to be added to this resource. A tag is a key-value pair. @@ -557,7 +557,7 @@ def get(resource_name: str, :param pulumi.Input[str] access_string: Access permissions string used for this user. See [Specifying Permissions Using an Access String](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html#Access-string) for more details. :param pulumi.Input[str] arn: The ARN of the created ElastiCache User. :param pulumi.Input[Union['UserAuthenticationModeArgs', 'UserAuthenticationModeArgsDict']] authentication_mode: Denotes the user's authentication properties. Detailed below. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported values are `REDIS`, `VALKEY`. :param pulumi.Input[bool] no_password_required: Indicates a password is not required for this user. :param pulumi.Input[Sequence[pulumi.Input[str]]] passwords: Passwords used for this user. You can create up to two passwords for each user. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A list of tags to be added to this resource. A tag is a key-value pair. @@ -610,7 +610,7 @@ def authentication_mode(self) -> pulumi.Output['outputs.UserAuthenticationMode'] @pulumi.getter def engine(self) -> pulumi.Output[str]: """ - The current supported value is `REDIS`. + The current supported values are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") diff --git a/sdk/python/pulumi_aws/elasticache/user_group.py b/sdk/python/pulumi_aws/elasticache/user_group.py index 969451dcb1f..45c0ce9aa82 100644 --- a/sdk/python/pulumi_aws/elasticache/user_group.py +++ b/sdk/python/pulumi_aws/elasticache/user_group.py @@ -25,7 +25,7 @@ def __init__(__self__, *, user_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a UserGroup resource. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported value are `REDIS`, `VALKEY`. :param pulumi.Input[str] user_group_id: The ID of the user group. The following arguments are optional: @@ -43,7 +43,7 @@ def __init__(__self__, *, @pulumi.getter def engine(self) -> pulumi.Input[str]: """ - The current supported value is `REDIS`. + The current supported value are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") @@ -102,7 +102,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering UserGroup resources. :param pulumi.Input[str] arn: The ARN that identifies the user group. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported value are `REDIS`, `VALKEY`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. :param pulumi.Input[str] user_group_id: The ID of the user group. @@ -142,7 +142,7 @@ def arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def engine(self) -> Optional[pulumi.Input[str]]: """ - The current supported value is `REDIS`. + The current supported value are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") @@ -243,7 +243,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported value are `REDIS`, `VALKEY`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[str] user_group_id: The ID of the user group. @@ -347,7 +347,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 ARN that identifies the user group. - :param pulumi.Input[str] engine: The current supported value is `REDIS`. + :param pulumi.Input[str] engine: The current supported value are `REDIS`, `VALKEY`. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. :param pulumi.Input[str] user_group_id: The ID of the user group. @@ -379,7 +379,7 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter def engine(self) -> pulumi.Output[str]: """ - The current supported value is `REDIS`. + The current supported value are `REDIS`, `VALKEY`. """ return pulumi.get(self, "engine") diff --git a/sdk/python/pulumi_aws/emr/studio.py b/sdk/python/pulumi_aws/emr/studio.py index 1887f64f0fc..dd8210552cc 100644 --- a/sdk/python/pulumi_aws/emr/studio.py +++ b/sdk/python/pulumi_aws/emr/studio.py @@ -27,6 +27,7 @@ def __init__(__self__, *, vpc_id: pulumi.Input[str], workspace_security_group_id: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -44,6 +45,7 @@ def __init__(__self__, *, The following arguments are optional: :param pulumi.Input[str] description: A detailed description of the Amazon EMR Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. :param pulumi.Input[str] idp_auth_url: The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. :param pulumi.Input[str] idp_relay_state_parameter_name: The name that your identity provider (IdP) uses for its RelayState parameter. For example, RelayState or TargetSource. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState parameter differs by IdP. :param pulumi.Input[str] name: A descriptive name for the Amazon EMR Studio. @@ -59,6 +61,8 @@ def __init__(__self__, *, pulumi.set(__self__, "workspace_security_group_id", workspace_security_group_id) if description is not None: pulumi.set(__self__, "description", description) + if encryption_key_arn is not None: + pulumi.set(__self__, "encryption_key_arn", encryption_key_arn) if idp_auth_url is not None: pulumi.set(__self__, "idp_auth_url", idp_auth_url) if idp_relay_state_parameter_name is not None: @@ -168,6 +172,18 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) + @property + @pulumi.getter(name="encryptionKeyArn") + def encryption_key_arn(self) -> Optional[pulumi.Input[str]]: + """ + The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + """ + return pulumi.get(self, "encryption_key_arn") + + @encryption_key_arn.setter + def encryption_key_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "encryption_key_arn", value) + @property @pulumi.getter(name="idpAuthUrl") def idp_auth_url(self) -> Optional[pulumi.Input[str]]: @@ -236,6 +252,7 @@ def __init__(__self__, *, auth_mode: Optional[pulumi.Input[str]] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, @@ -254,6 +271,7 @@ def __init__(__self__, *, :param pulumi.Input[str] auth_mode: Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO. Valid values are `SSO` or `IAM`. :param pulumi.Input[str] default_s3_location: The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files. :param pulumi.Input[str] description: A detailed description of the Amazon EMR Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. :param pulumi.Input[str] engine_security_group_id: The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. :param pulumi.Input[str] idp_auth_url: The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. :param pulumi.Input[str] idp_relay_state_parameter_name: The name that your identity provider (IdP) uses for its RelayState parameter. For example, RelayState or TargetSource. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState parameter differs by IdP. @@ -276,6 +294,8 @@ def __init__(__self__, *, pulumi.set(__self__, "default_s3_location", default_s3_location) if description is not None: pulumi.set(__self__, "description", description) + if encryption_key_arn is not None: + pulumi.set(__self__, "encryption_key_arn", encryption_key_arn) if engine_security_group_id is not None: pulumi.set(__self__, "engine_security_group_id", engine_security_group_id) if idp_auth_url is not None: @@ -352,6 +372,18 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) + @property + @pulumi.getter(name="encryptionKeyArn") + def encryption_key_arn(self) -> Optional[pulumi.Input[str]]: + """ + The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + """ + return pulumi.get(self, "encryption_key_arn") + + @encryption_key_arn.setter + def encryption_key_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "encryption_key_arn", value) + @property @pulumi.getter(name="engineSecurityGroupId") def engine_security_group_id(self) -> Optional[pulumi.Input[str]]: @@ -505,6 +537,7 @@ def __init__(__self__, auth_mode: Optional[pulumi.Input[str]] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, @@ -550,6 +583,7 @@ def __init__(__self__, :param pulumi.Input[str] auth_mode: Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO. Valid values are `SSO` or `IAM`. :param pulumi.Input[str] default_s3_location: The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files. :param pulumi.Input[str] description: A detailed description of the Amazon EMR Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. :param pulumi.Input[str] engine_security_group_id: The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. :param pulumi.Input[str] idp_auth_url: The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. :param pulumi.Input[str] idp_relay_state_parameter_name: The name that your identity provider (IdP) uses for its RelayState parameter. For example, RelayState or TargetSource. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState parameter differs by IdP. @@ -616,6 +650,7 @@ def _internal_init(__self__, auth_mode: Optional[pulumi.Input[str]] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, @@ -642,6 +677,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'default_s3_location'") __props__.__dict__["default_s3_location"] = default_s3_location __props__.__dict__["description"] = description + __props__.__dict__["encryption_key_arn"] = encryption_key_arn if engine_security_group_id is None and not opts.urn: raise TypeError("Missing required property 'engine_security_group_id'") __props__.__dict__["engine_security_group_id"] = engine_security_group_id @@ -679,6 +715,7 @@ def get(resource_name: str, auth_mode: Optional[pulumi.Input[str]] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, @@ -702,6 +739,7 @@ def get(resource_name: str, :param pulumi.Input[str] auth_mode: Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO. Valid values are `SSO` or `IAM`. :param pulumi.Input[str] default_s3_location: The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files. :param pulumi.Input[str] description: A detailed description of the Amazon EMR Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. :param pulumi.Input[str] engine_security_group_id: The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpc_id`. :param pulumi.Input[str] idp_auth_url: The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials. :param pulumi.Input[str] idp_relay_state_parameter_name: The name that your identity provider (IdP) uses for its RelayState parameter. For example, RelayState or TargetSource. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState parameter differs by IdP. @@ -724,6 +762,7 @@ def get(resource_name: str, __props__.__dict__["auth_mode"] = auth_mode __props__.__dict__["default_s3_location"] = default_s3_location __props__.__dict__["description"] = description + __props__.__dict__["encryption_key_arn"] = encryption_key_arn __props__.__dict__["engine_security_group_id"] = engine_security_group_id __props__.__dict__["idp_auth_url"] = idp_auth_url __props__.__dict__["idp_relay_state_parameter_name"] = idp_relay_state_parameter_name @@ -770,6 +809,14 @@ def description(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "description") + @property + @pulumi.getter(name="encryptionKeyArn") + def encryption_key_arn(self) -> pulumi.Output[Optional[str]]: + """ + The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3. + """ + return pulumi.get(self, "encryption_key_arn") + @property @pulumi.getter(name="engineSecurityGroupId") def engine_security_group_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/fsx/windows_file_system.py b/sdk/python/pulumi_aws/fsx/windows_file_system.py index 7e4f57db35a..f28ef4d1e75 100644 --- a/sdk/python/pulumi_aws/fsx/windows_file_system.py +++ b/sdk/python/pulumi_aws/fsx/windows_file_system.py @@ -889,9 +889,9 @@ def __init__(__self__, example = aws.fsx.WindowsFileSystem("example", active_directory_id=example_aws_directory_service_directory["id"], kms_key_id=example_aws_kms_key["arn"], - storage_capacity=300, + storage_capacity=32, subnet_ids=[example_aws_subnet["id"]], - throughput_capacity=1024) + throughput_capacity=32) ``` ### Using a Self-Managed Microsoft Active Directory @@ -904,9 +904,9 @@ def __init__(__self__, example = aws.fsx.WindowsFileSystem("example", kms_key_id=example_aws_kms_key["arn"], - storage_capacity=300, + storage_capacity=32, subnet_ids=[example_aws_subnet["id"]], - throughput_capacity=1024, + throughput_capacity=32, self_managed_active_directory={ "dns_ips": [ "10.0.0.111", @@ -977,9 +977,9 @@ def __init__(__self__, example = aws.fsx.WindowsFileSystem("example", active_directory_id=example_aws_directory_service_directory["id"], kms_key_id=example_aws_kms_key["arn"], - storage_capacity=300, + storage_capacity=32, subnet_ids=[example_aws_subnet["id"]], - throughput_capacity=1024) + throughput_capacity=32) ``` ### Using a Self-Managed Microsoft Active Directory @@ -992,9 +992,9 @@ def __init__(__self__, example = aws.fsx.WindowsFileSystem("example", kms_key_id=example_aws_kms_key["arn"], - storage_capacity=300, + storage_capacity=32, subnet_ids=[example_aws_subnet["id"]], - throughput_capacity=1024, + throughput_capacity=32, self_managed_active_directory={ "dns_ips": [ "10.0.0.111", diff --git a/sdk/python/pulumi_aws/guardduty/organization_configuration.py b/sdk/python/pulumi_aws/guardduty/organization_configuration.py index c5a33a79fbd..a03ad5c1285 100644 --- a/sdk/python/pulumi_aws/guardduty/organization_configuration.py +++ b/sdk/python/pulumi_aws/guardduty/organization_configuration.py @@ -30,7 +30,7 @@ def __init__(__self__, *, :param pulumi.Input[str] detector_id: The detector ID of the GuardDuty account. :param pulumi.Input[bool] auto_enable: *Deprecated:* Use `auto_enable_organization_members` instead. When this setting is enabled, all new accounts that are created in, or added to, the organization are added as a member accounts of the organization’s GuardDuty delegated administrator and GuardDuty is enabled in that AWS Region. :param pulumi.Input[str] auto_enable_organization_members: Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. - :param pulumi.Input['OrganizationConfigurationDatasourcesArgs'] datasources: Configuration for the collected datasources. + :param pulumi.Input['OrganizationConfigurationDatasourcesArgs'] datasources: Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. """ pulumi.set(__self__, "detector_id", detector_id) if auto_enable is not None: @@ -84,7 +84,7 @@ def auto_enable_organization_members(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def datasources(self) -> Optional[pulumi.Input['OrganizationConfigurationDatasourcesArgs']]: """ - Configuration for the collected datasources. + Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. """ return pulumi.get(self, "datasources") @@ -104,7 +104,7 @@ def __init__(__self__, *, Input properties used for looking up and filtering OrganizationConfiguration resources. :param pulumi.Input[bool] auto_enable: *Deprecated:* Use `auto_enable_organization_members` instead. When this setting is enabled, all new accounts that are created in, or added to, the organization are added as a member accounts of the organization’s GuardDuty delegated administrator and GuardDuty is enabled in that AWS Region. :param pulumi.Input[str] auto_enable_organization_members: Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. - :param pulumi.Input['OrganizationConfigurationDatasourcesArgs'] datasources: Configuration for the collected datasources. + :param pulumi.Input['OrganizationConfigurationDatasourcesArgs'] datasources: Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. :param pulumi.Input[str] detector_id: The detector ID of the GuardDuty account. """ if auto_enable is not None: @@ -148,7 +148,7 @@ def auto_enable_organization_members(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def datasources(self) -> Optional[pulumi.Input['OrganizationConfigurationDatasourcesArgs']]: """ - Configuration for the collected datasources. + Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. """ return pulumi.get(self, "datasources") @@ -225,7 +225,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] auto_enable: *Deprecated:* Use `auto_enable_organization_members` instead. When this setting is enabled, all new accounts that are created in, or added to, the organization are added as a member accounts of the organization’s GuardDuty delegated administrator and GuardDuty is enabled in that AWS Region. :param pulumi.Input[str] auto_enable_organization_members: Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. - :param pulumi.Input[Union['OrganizationConfigurationDatasourcesArgs', 'OrganizationConfigurationDatasourcesArgsDict']] datasources: Configuration for the collected datasources. + :param pulumi.Input[Union['OrganizationConfigurationDatasourcesArgs', 'OrganizationConfigurationDatasourcesArgsDict']] datasources: Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. :param pulumi.Input[str] detector_id: The detector ID of the GuardDuty account. """ ... @@ -333,7 +333,7 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] auto_enable: *Deprecated:* Use `auto_enable_organization_members` instead. When this setting is enabled, all new accounts that are created in, or added to, the organization are added as a member accounts of the organization’s GuardDuty delegated administrator and GuardDuty is enabled in that AWS Region. :param pulumi.Input[str] auto_enable_organization_members: Indicates the auto-enablement configuration of GuardDuty for the member accounts in the organization. Valid values are `ALL`, `NEW`, `NONE`. - :param pulumi.Input[Union['OrganizationConfigurationDatasourcesArgs', 'OrganizationConfigurationDatasourcesArgsDict']] datasources: Configuration for the collected datasources. + :param pulumi.Input[Union['OrganizationConfigurationDatasourcesArgs', 'OrganizationConfigurationDatasourcesArgsDict']] datasources: Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. :param pulumi.Input[str] detector_id: The detector ID of the GuardDuty account. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -367,7 +367,7 @@ def auto_enable_organization_members(self) -> pulumi.Output[str]: @pulumi.getter def datasources(self) -> pulumi.Output['outputs.OrganizationConfigurationDatasources']: """ - Configuration for the collected datasources. + Configuration for the collected datasources. [Deprecated](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-feature-object-api-changes-march2023.html) in favor of `guardduty.OrganizationConfigurationFeature` resources. """ return pulumi.get(self, "datasources") diff --git a/sdk/python/pulumi_aws/lb/trust_store.py b/sdk/python/pulumi_aws/lb/trust_store.py index 783a7f90793..d0000051133 100644 --- a/sdk/python/pulumi_aws/lb/trust_store.py +++ b/sdk/python/pulumi_aws/lb/trust_store.py @@ -291,6 +291,28 @@ def __init__(__self__, ## Example Usage + ### Trust Store Load Balancer Listener + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.lb.TrustStore("test", + name="tf-example-lb-ts", + ca_certificates_bundle_s3_bucket="...", + ca_certificates_bundle_s3_key="...") + example = aws.lb.Listener("example", + load_balancer_arn=example_aws_lb["id"], + default_actions=[{ + "target_group_arn": example_aws_lb_target_group["id"], + "type": "forward", + }], + mutual_authentication={ + "mode": "verify", + "trust_store_arn": test.arn, + }) + ``` + ## Import Using `pulumi import`, import Target Groups using their ARN. For example: @@ -319,6 +341,28 @@ def __init__(__self__, ## Example Usage + ### Trust Store Load Balancer Listener + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.lb.TrustStore("test", + name="tf-example-lb-ts", + ca_certificates_bundle_s3_bucket="...", + ca_certificates_bundle_s3_key="...") + example = aws.lb.Listener("example", + load_balancer_arn=example_aws_lb["id"], + default_actions=[{ + "target_group_arn": example_aws_lb_target_group["id"], + "type": "forward", + }], + mutual_authentication={ + "mode": "verify", + "trust_store_arn": test.arn, + }) + ``` + ## Import Using `pulumi import`, import Target Groups using their ARN. For example: diff --git a/sdk/python/pulumi_aws/msk/_inputs.py b/sdk/python/pulumi_aws/msk/_inputs.py index 0225031440b..d6ccbc9db74 100644 --- a/sdk/python/pulumi_aws/msk/_inputs.py +++ b/sdk/python/pulumi_aws/msk/_inputs.py @@ -1603,6 +1603,9 @@ class ReplicatorReplicationInfoListTopicReplicationArgsDict(TypedDict): Configuration for specifying the position in the topics to start replicating from. """ topic_name_configuration: NotRequired[pulumi.Input['ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgsDict']] + """ + Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + """ topics_to_excludes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ List of regular expression patterns indicating the topics that should not be replica. @@ -1626,6 +1629,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] copy_topic_configurations: Whether to periodically configure remote topics to match their corresponding upstream topics. :param pulumi.Input[bool] detect_and_copy_new_topics: Whether to periodically check for new topics and partitions. :param pulumi.Input['ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs'] starting_position: Configuration for specifying the position in the topics to start replicating from. + :param pulumi.Input['ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs'] topic_name_configuration: Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. :param pulumi.Input[Sequence[pulumi.Input[str]]] topics_to_excludes: List of regular expression patterns indicating the topics that should not be replica. """ pulumi.set(__self__, "topics_to_replicates", topics_to_replicates) @@ -1705,6 +1709,9 @@ def starting_position(self, value: Optional[pulumi.Input['ReplicatorReplicationI @property @pulumi.getter(name="topicNameConfiguration") def topic_name_configuration(self) -> Optional[pulumi.Input['ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs']]: + """ + Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + """ return pulumi.get(self, "topic_name_configuration") @topic_name_configuration.setter @@ -1759,6 +1766,9 @@ def type(self, value: Optional[pulumi.Input[str]]): if not MYPY: class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgsDict(TypedDict): type: NotRequired[pulumi.Input[str]] + """ + The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + """ elif False: ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgsDict: TypeAlias = Mapping[str, Any] @@ -1766,12 +1776,18 @@ class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgsDic class ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs: def __init__(__self__, *, type: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] type: The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + """ if type is not None: pulumi.set(__self__, "type", type) @property @pulumi.getter def type(self) -> Optional[pulumi.Input[str]]: + """ + The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + """ return pulumi.get(self, "type") @type.setter diff --git a/sdk/python/pulumi_aws/msk/outputs.py b/sdk/python/pulumi_aws/msk/outputs.py index 3676298f02e..d0cff4bbf2a 100644 --- a/sdk/python/pulumi_aws/msk/outputs.py +++ b/sdk/python/pulumi_aws/msk/outputs.py @@ -1387,6 +1387,7 @@ def __init__(__self__, *, :param bool copy_topic_configurations: Whether to periodically configure remote topics to match their corresponding upstream topics. :param bool detect_and_copy_new_topics: Whether to periodically check for new topics and partitions. :param 'ReplicatorReplicationInfoListTopicReplicationStartingPositionArgs' starting_position: Configuration for specifying the position in the topics to start replicating from. + :param 'ReplicatorReplicationInfoListTopicReplicationTopicNameConfigurationArgs' topic_name_configuration: Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. :param Sequence[str] topics_to_excludes: List of regular expression patterns indicating the topics that should not be replica. """ pulumi.set(__self__, "topics_to_replicates", topics_to_replicates) @@ -1446,6 +1447,9 @@ def starting_position(self) -> Optional['outputs.ReplicatorReplicationInfoListTo @property @pulumi.getter(name="topicNameConfiguration") def topic_name_configuration(self) -> Optional['outputs.ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration']: + """ + Configuration for specifying replicated topic names should be the same as their corresponding upstream topics or prefixed with source cluster alias. + """ return pulumi.get(self, "topic_name_configuration") @property @@ -1480,12 +1484,18 @@ def type(self) -> Optional[str]: class ReplicatorReplicationInfoListTopicReplicationTopicNameConfiguration(dict): def __init__(__self__, *, type: Optional[str] = None): + """ + :param str type: The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + """ if type is not None: pulumi.set(__self__, "type", type) @property @pulumi.getter def type(self) -> Optional[str]: + """ + The type of topic configuration name. Supports `PREFIXED_WITH_SOURCE_CLUSTER_ALIAS` and `IDENTICAL`. + """ return pulumi.get(self, "type") diff --git a/sdk/python/pulumi_aws/msk/replicator.py b/sdk/python/pulumi_aws/msk/replicator.py index 80dc0cbafa8..de5d6b3d2c0 100644 --- a/sdk/python/pulumi_aws/msk/replicator.py +++ b/sdk/python/pulumi_aws/msk/replicator.py @@ -275,6 +275,55 @@ def __init__(__self__, ## Example Usage + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.msk.Replicator("test", + replicator_name="test-name", + description="test-description", + service_execution_role_arn=source_aws_iam_role["arn"], + kafka_clusters=[ + { + "amazon_msk_cluster": { + "msk_cluster_arn": source["arn"], + }, + "vpc_config": { + "subnet_ids": [__item["id"] for __item in source_aws_subnet], + "security_groups_ids": [source_aws_security_group["id"]], + }, + }, + { + "amazon_msk_cluster": { + "msk_cluster_arn": target["arn"], + }, + "vpc_config": { + "subnet_ids": [__item["id"] for __item in target_aws_subnet], + "security_groups_ids": [target_aws_security_group["id"]], + }, + }, + ], + replication_info_list={ + "source_kafka_cluster_arn": source["arn"], + "target_kafka_cluster_arn": target["arn"], + "target_compression_type": "NONE", + "topic_replications": [{ + "topic_name_configuration": { + "type": "PREFIXED_WITH_SOURCE_CLUSTER_ALIAS", + }, + "topics_to_replicates": [".*"], + "starting_position": { + "type": "LATEST", + }, + }], + "consumer_group_replications": [{ + "consumer_groups_to_replicates": [".*"], + }], + }) + ``` + ## Import Using `pulumi import`, import MSK replicators using the replicator ARN. For example: @@ -302,6 +351,55 @@ def __init__(__self__, ## Example Usage + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.msk.Replicator("test", + replicator_name="test-name", + description="test-description", + service_execution_role_arn=source_aws_iam_role["arn"], + kafka_clusters=[ + { + "amazon_msk_cluster": { + "msk_cluster_arn": source["arn"], + }, + "vpc_config": { + "subnet_ids": [__item["id"] for __item in source_aws_subnet], + "security_groups_ids": [source_aws_security_group["id"]], + }, + }, + { + "amazon_msk_cluster": { + "msk_cluster_arn": target["arn"], + }, + "vpc_config": { + "subnet_ids": [__item["id"] for __item in target_aws_subnet], + "security_groups_ids": [target_aws_security_group["id"]], + }, + }, + ], + replication_info_list={ + "source_kafka_cluster_arn": source["arn"], + "target_kafka_cluster_arn": target["arn"], + "target_compression_type": "NONE", + "topic_replications": [{ + "topic_name_configuration": { + "type": "PREFIXED_WITH_SOURCE_CLUSTER_ALIAS", + }, + "topics_to_replicates": [".*"], + "starting_position": { + "type": "LATEST", + }, + }], + "consumer_group_replications": [{ + "consumer_groups_to_replicates": [".*"], + }], + }) + ``` + ## Import Using `pulumi import`, import MSK replicators using the replicator ARN. For example: diff --git a/sdk/python/pulumi_aws/quicksight/user.py b/sdk/python/pulumi_aws/quicksight/user.py index 1d0252ec32a..d628f88540f 100644 --- a/sdk/python/pulumi_aws/quicksight/user.py +++ b/sdk/python/pulumi_aws/quicksight/user.py @@ -29,14 +29,16 @@ def __init__(__self__, *, user_name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a User resource. - :param pulumi.Input[str] email: The email address of the user that you want to register. - :param pulumi.Input[str] identity_type: Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. - :param pulumi.Input[str] user_role: The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. - :param pulumi.Input[str] aws_account_id: The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. - :param pulumi.Input[str] iam_arn: The ARN of the IAM user or role that you are registering with Amazon QuickSight. + :param pulumi.Input[str] email: Email address of the user that you want to register. + :param pulumi.Input[str] identity_type: Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. + :param pulumi.Input[str] user_role: Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: + :param pulumi.Input[str] aws_account_id: ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. + :param pulumi.Input[str] iam_arn: ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. :param pulumi.Input[str] namespace: The Amazon Quicksight namespace to create the user in. Defaults to `default`. - :param pulumi.Input[str] session_name: The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. - :param pulumi.Input[str] user_name: The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + :param pulumi.Input[str] session_name: Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + :param pulumi.Input[str] user_name: Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. """ pulumi.set(__self__, "email", email) pulumi.set(__self__, "identity_type", identity_type) @@ -56,7 +58,7 @@ def __init__(__self__, *, @pulumi.getter def email(self) -> pulumi.Input[str]: """ - The email address of the user that you want to register. + Email address of the user that you want to register. """ return pulumi.get(self, "email") @@ -68,7 +70,7 @@ def email(self, value: pulumi.Input[str]): @pulumi.getter(name="identityType") def identity_type(self) -> pulumi.Input[str]: """ - Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. """ return pulumi.get(self, "identity_type") @@ -80,7 +82,9 @@ def identity_type(self, value: pulumi.Input[str]): @pulumi.getter(name="userRole") def user_role(self) -> pulumi.Input[str]: """ - The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ return pulumi.get(self, "user_role") @@ -92,7 +96,7 @@ def user_role(self, value: pulumi.Input[str]): @pulumi.getter(name="awsAccountId") def aws_account_id(self) -> Optional[pulumi.Input[str]]: """ - The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. """ return pulumi.get(self, "aws_account_id") @@ -104,7 +108,7 @@ def aws_account_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="iamArn") def iam_arn(self) -> Optional[pulumi.Input[str]]: """ - The ARN of the IAM user or role that you are registering with Amazon QuickSight. + ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. """ return pulumi.get(self, "iam_arn") @@ -128,7 +132,7 @@ def namespace(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sessionName") def session_name(self) -> Optional[pulumi.Input[str]]: """ - The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. """ return pulumi.get(self, "session_name") @@ -140,7 +144,7 @@ def session_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="userName") def user_name(self) -> Optional[pulumi.Input[str]]: """ - The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. """ return pulumi.get(self, "user_name") @@ -159,19 +163,23 @@ def __init__(__self__, *, identity_type: Optional[pulumi.Input[str]] = None, namespace: Optional[pulumi.Input[str]] = None, session_name: Optional[pulumi.Input[str]] = None, + user_invitation_url: Optional[pulumi.Input[str]] = None, user_name: Optional[pulumi.Input[str]] = None, user_role: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering User resources. - :param pulumi.Input[str] arn: Amazon Resource Name (ARN) of the user - :param pulumi.Input[str] aws_account_id: The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. - :param pulumi.Input[str] email: The email address of the user that you want to register. - :param pulumi.Input[str] iam_arn: The ARN of the IAM user or role that you are registering with Amazon QuickSight. - :param pulumi.Input[str] identity_type: Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + :param pulumi.Input[str] arn: Amazon Resource Name (ARN) for the user. + :param pulumi.Input[str] aws_account_id: ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. + :param pulumi.Input[str] email: Email address of the user that you want to register. + :param pulumi.Input[str] iam_arn: ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. + :param pulumi.Input[str] identity_type: Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. :param pulumi.Input[str] namespace: The Amazon Quicksight namespace to create the user in. Defaults to `default`. - :param pulumi.Input[str] session_name: The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. - :param pulumi.Input[str] user_name: The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. - :param pulumi.Input[str] user_role: The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + :param pulumi.Input[str] session_name: Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + :param pulumi.Input[str] user_invitation_url: URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + :param pulumi.Input[str] user_name: Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. + :param pulumi.Input[str] user_role: Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ if arn is not None: pulumi.set(__self__, "arn", arn) @@ -187,6 +195,8 @@ def __init__(__self__, *, pulumi.set(__self__, "namespace", namespace) if session_name is not None: pulumi.set(__self__, "session_name", session_name) + if user_invitation_url is not None: + pulumi.set(__self__, "user_invitation_url", user_invitation_url) if user_name is not None: pulumi.set(__self__, "user_name", user_name) if user_role is not None: @@ -196,7 +206,7 @@ def __init__(__self__, *, @pulumi.getter def arn(self) -> Optional[pulumi.Input[str]]: """ - Amazon Resource Name (ARN) of the user + Amazon Resource Name (ARN) for the user. """ return pulumi.get(self, "arn") @@ -208,7 +218,7 @@ def arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="awsAccountId") def aws_account_id(self) -> Optional[pulumi.Input[str]]: """ - The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. """ return pulumi.get(self, "aws_account_id") @@ -220,7 +230,7 @@ def aws_account_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def email(self) -> Optional[pulumi.Input[str]]: """ - The email address of the user that you want to register. + Email address of the user that you want to register. """ return pulumi.get(self, "email") @@ -232,7 +242,7 @@ def email(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="iamArn") def iam_arn(self) -> Optional[pulumi.Input[str]]: """ - The ARN of the IAM user or role that you are registering with Amazon QuickSight. + ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. """ return pulumi.get(self, "iam_arn") @@ -244,7 +254,7 @@ def iam_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="identityType") def identity_type(self) -> Optional[pulumi.Input[str]]: """ - Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. """ return pulumi.get(self, "identity_type") @@ -268,7 +278,7 @@ def namespace(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sessionName") def session_name(self) -> Optional[pulumi.Input[str]]: """ - The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. """ return pulumi.get(self, "session_name") @@ -276,11 +286,23 @@ def session_name(self) -> Optional[pulumi.Input[str]]: def session_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "session_name", value) + @property + @pulumi.getter(name="userInvitationUrl") + def user_invitation_url(self) -> Optional[pulumi.Input[str]]: + """ + URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + """ + return pulumi.get(self, "user_invitation_url") + + @user_invitation_url.setter + def user_invitation_url(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user_invitation_url", value) + @property @pulumi.getter(name="userName") def user_name(self) -> Optional[pulumi.Input[str]]: """ - The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. """ return pulumi.get(self, "user_name") @@ -292,7 +314,9 @@ def user_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="userRole") def user_role(self) -> Optional[pulumi.Input[str]]: """ - The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ return pulumi.get(self, "user_role") @@ -320,17 +344,45 @@ def __init__(__self__, ## Example Usage + ### Create User With IAM Identity Type Using an IAM Role + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.quicksight.User("example", + email="author1@example.com", + identity_type="IAM", + user_role="AUTHOR", + iam_arn="arn:aws:iam::123456789012:role/AuthorRole", + session_name="author1") + ``` + + ### Create User With IAM Identity Type Using an IAM User + ```python import pulumi import pulumi_aws as aws example = aws.quicksight.User("example", - session_name="an-author", - email="author@example.com", - namespace="foo", + email="authorpro1@example.com", identity_type="IAM", - iam_arn="arn:aws:iam::123456789012:user/Example", - user_role="AUTHOR") + user_role="AUTHOR_PRO", + iam_arn="arn:aws:iam::123456789012:user/authorpro1") + ``` + + ### Create User With QuickSight Identity Type in Non-Default Namespace + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.quicksight.User("example", + email="reader1@example.com", + identity_type="QUICKSIGHT", + user_role="READER", + namespace="example", + user_name="reader1") ``` ## Import @@ -339,14 +391,16 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] aws_account_id: The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. - :param pulumi.Input[str] email: The email address of the user that you want to register. - :param pulumi.Input[str] iam_arn: The ARN of the IAM user or role that you are registering with Amazon QuickSight. - :param pulumi.Input[str] identity_type: Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + :param pulumi.Input[str] aws_account_id: ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. + :param pulumi.Input[str] email: Email address of the user that you want to register. + :param pulumi.Input[str] iam_arn: ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. + :param pulumi.Input[str] identity_type: Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. :param pulumi.Input[str] namespace: The Amazon Quicksight namespace to create the user in. Defaults to `default`. - :param pulumi.Input[str] session_name: The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. - :param pulumi.Input[str] user_name: The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. - :param pulumi.Input[str] user_role: The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + :param pulumi.Input[str] session_name: Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + :param pulumi.Input[str] user_name: Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. + :param pulumi.Input[str] user_role: Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ ... @overload @@ -359,17 +413,45 @@ def __init__(__self__, ## Example Usage + ### Create User With IAM Identity Type Using an IAM Role + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.quicksight.User("example", + email="author1@example.com", + identity_type="IAM", + user_role="AUTHOR", + iam_arn="arn:aws:iam::123456789012:role/AuthorRole", + session_name="author1") + ``` + + ### Create User With IAM Identity Type Using an IAM User + ```python import pulumi import pulumi_aws as aws example = aws.quicksight.User("example", - session_name="an-author", - email="author@example.com", - namespace="foo", + email="authorpro1@example.com", identity_type="IAM", - iam_arn="arn:aws:iam::123456789012:user/Example", - user_role="AUTHOR") + user_role="AUTHOR_PRO", + iam_arn="arn:aws:iam::123456789012:user/authorpro1") + ``` + + ### Create User With QuickSight Identity Type in Non-Default Namespace + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.quicksight.User("example", + email="reader1@example.com", + identity_type="QUICKSIGHT", + user_role="READER", + namespace="example", + user_name="reader1") ``` ## Import @@ -423,6 +505,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'user_role'") __props__.__dict__["user_role"] = user_role __props__.__dict__["arn"] = None + __props__.__dict__["user_invitation_url"] = None super(User, __self__).__init__( 'aws:quicksight/user:User', resource_name, @@ -440,6 +523,7 @@ def get(resource_name: str, identity_type: Optional[pulumi.Input[str]] = None, namespace: Optional[pulumi.Input[str]] = None, session_name: Optional[pulumi.Input[str]] = None, + user_invitation_url: Optional[pulumi.Input[str]] = None, user_name: Optional[pulumi.Input[str]] = None, user_role: Optional[pulumi.Input[str]] = None) -> 'User': """ @@ -449,15 +533,18 @@ def get(resource_name: str, :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[str] arn: Amazon Resource Name (ARN) of the user - :param pulumi.Input[str] aws_account_id: The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. - :param pulumi.Input[str] email: The email address of the user that you want to register. - :param pulumi.Input[str] iam_arn: The ARN of the IAM user or role that you are registering with Amazon QuickSight. - :param pulumi.Input[str] identity_type: Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + :param pulumi.Input[str] arn: Amazon Resource Name (ARN) for the user. + :param pulumi.Input[str] aws_account_id: ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. + :param pulumi.Input[str] email: Email address of the user that you want to register. + :param pulumi.Input[str] iam_arn: ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. + :param pulumi.Input[str] identity_type: Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. :param pulumi.Input[str] namespace: The Amazon Quicksight namespace to create the user in. Defaults to `default`. - :param pulumi.Input[str] session_name: The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. - :param pulumi.Input[str] user_name: The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. - :param pulumi.Input[str] user_role: The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + :param pulumi.Input[str] session_name: Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + :param pulumi.Input[str] user_invitation_url: URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + :param pulumi.Input[str] user_name: Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. + :param pulumi.Input[str] user_role: Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -470,6 +557,7 @@ def get(resource_name: str, __props__.__dict__["identity_type"] = identity_type __props__.__dict__["namespace"] = namespace __props__.__dict__["session_name"] = session_name + __props__.__dict__["user_invitation_url"] = user_invitation_url __props__.__dict__["user_name"] = user_name __props__.__dict__["user_role"] = user_role return User(resource_name, opts=opts, __props__=__props__) @@ -478,7 +566,7 @@ def get(resource_name: str, @pulumi.getter def arn(self) -> pulumi.Output[str]: """ - Amazon Resource Name (ARN) of the user + Amazon Resource Name (ARN) for the user. """ return pulumi.get(self, "arn") @@ -486,7 +574,7 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter(name="awsAccountId") def aws_account_id(self) -> pulumi.Output[str]: """ - The ID for the AWS account that the user is in. Currently, you use the ID for the AWS account that contains your Amazon QuickSight account. + ID for the AWS account that the user is in. Use the ID for the AWS account that contains your Amazon QuickSight account. """ return pulumi.get(self, "aws_account_id") @@ -494,7 +582,7 @@ def aws_account_id(self) -> pulumi.Output[str]: @pulumi.getter def email(self) -> pulumi.Output[str]: """ - The email address of the user that you want to register. + Email address of the user that you want to register. """ return pulumi.get(self, "email") @@ -502,7 +590,7 @@ def email(self) -> pulumi.Output[str]: @pulumi.getter(name="iamArn") def iam_arn(self) -> pulumi.Output[Optional[str]]: """ - The ARN of the IAM user or role that you are registering with Amazon QuickSight. + ARN of the IAM user or role that you are registering with Amazon QuickSight. Required only for users with an identity type of `IAM`. """ return pulumi.get(self, "iam_arn") @@ -510,7 +598,7 @@ def iam_arn(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="identityType") def identity_type(self) -> pulumi.Output[str]: """ - Amazon QuickSight supports several ways of managing the identity of users. This parameter accepts either `IAM` or `QUICKSIGHT`. If `IAM` is specified, the `iam_arn` must also be specified. + Identity type that your Amazon QuickSight account uses to manage the identity of users. Valid values: `IAM`, `QUICKSIGHT`. """ return pulumi.get(self, "identity_type") @@ -526,15 +614,23 @@ def namespace(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="sessionName") def session_name(self) -> pulumi.Output[Optional[str]]: """ - The name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. + Name of the IAM session to use when assuming roles that can embed QuickSight dashboards. Only valid for registering users using an assumed IAM role. Additionally, if registering multiple users using the same IAM role, each user needs to have a unique session name. """ return pulumi.get(self, "session_name") + @property + @pulumi.getter(name="userInvitationUrl") + def user_invitation_url(self) -> pulumi.Output[str]: + """ + URL the user visits to complete registration and provide a password. Returned only for users with an identity type of `QUICKSIGHT`. + """ + return pulumi.get(self, "user_invitation_url") + @property @pulumi.getter(name="userName") def user_name(self) -> pulumi.Output[Optional[str]]: """ - The Amazon QuickSight user name that you want to create for the user you are registering. Only valid for registering a user with `identity_type` set to `QUICKSIGHT`. + Amazon QuickSight user name that you want to create for the user you are registering. Required only for users with an identity type of `QUICKSIGHT`. """ return pulumi.get(self, "user_name") @@ -542,7 +638,9 @@ def user_name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="userRole") def user_role(self) -> pulumi.Output[str]: """ - The Amazon QuickSight role of the user. The user role can be one of the following: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO` or `ADMIN_PRO`. + Amazon QuickSight role for the user. Value values: `READER`, `AUTHOR`, `ADMIN`, `READER_PRO`, `AUTHOR_PRO`, `ADMIN_PRO`. + + The following arguments are optional: """ return pulumi.get(self, "user_role") diff --git a/sdk/python/pulumi_aws/rds/_inputs.py b/sdk/python/pulumi_aws/rds/_inputs.py index fd82aaa4e91..c5ab7bea5d4 100644 --- a/sdk/python/pulumi_aws/rds/_inputs.py +++ b/sdk/python/pulumi_aws/rds/_inputs.py @@ -1585,7 +1585,7 @@ class ProxyAuthArgsDict(TypedDict): """ client_password_auth_type: NotRequired[pulumi.Input[str]] """ - The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. """ description: NotRequired[pulumi.Input[str]] """ @@ -1617,7 +1617,7 @@ def __init__(__self__, *, username: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] auth_scheme: The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`. - :param pulumi.Input[str] client_password_auth_type: The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + :param pulumi.Input[str] client_password_auth_type: The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. :param pulumi.Input[str] description: A user-specified description about the authentication used by a proxy to log in as a specific database user. :param pulumi.Input[str] iam_auth: Whether to require or disallow AWS Identity and Access Management (IAM) authentication for connections to the proxy. One of `DISABLED`, `REQUIRED`. :param pulumi.Input[str] secret_arn: The Amazon Resource Name (ARN) representing the secret that the proxy uses to authenticate to the RDS DB instance or Aurora DB cluster. These secrets are stored within Amazon Secrets Manager. @@ -1652,7 +1652,7 @@ def auth_scheme(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="clientPasswordAuthType") def client_password_auth_type(self) -> Optional[pulumi.Input[str]]: """ - The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. """ return pulumi.get(self, "client_password_auth_type") diff --git a/sdk/python/pulumi_aws/rds/cluster.py b/sdk/python/pulumi_aws/rds/cluster.py index 4bf01da3ca2..80e6cd87d38 100644 --- a/sdk/python/pulumi_aws/rds/cluster.py +++ b/sdk/python/pulumi_aws/rds/cluster.py @@ -128,7 +128,7 @@ def __init__(__self__, *, :param pulumi.Input[str] master_user_secret_kms_key_id: Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used. :param pulumi.Input[str] master_username: Username for the master DB user. Please refer to the [RDS Naming Constraints](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot. :param pulumi.Input[str] network_type: Network type of the cluster. Valid values: `IPV4`, `DUAL`. - :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights for the RDS Cluster + :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights. :param pulumi.Input[str] performance_insights_kms_key_id: Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). :param pulumi.Input[int] performance_insights_retention_period: Specifies the amount of time to retain performance insights data for. Defaults to 7 days if Performance Insights are enabled. Valid values are `7`, `month * 31` (where month is a number of months from 1-23), and `731`. See [here](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Overview.cost.html) for more information on retention periods. :param pulumi.Input[int] port: Port on which the DB accepts connections. @@ -752,7 +752,7 @@ def network_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Enables Performance Insights for the RDS Cluster + Enables Performance Insights. """ return pulumi.get(self, "performance_insights_enabled") @@ -1087,7 +1087,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input['ClusterMasterUserSecretArgs']]] master_user_secrets: Block that specifies the master user secret. Only available when `manage_master_user_password` is set to true. Documented below. :param pulumi.Input[str] master_username: Username for the master DB user. Please refer to the [RDS Naming Constraints](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot. :param pulumi.Input[str] network_type: Network type of the cluster. Valid values: `IPV4`, `DUAL`. - :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights for the RDS Cluster + :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights. :param pulumi.Input[str] performance_insights_kms_key_id: Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). :param pulumi.Input[int] performance_insights_retention_period: Specifies the amount of time to retain performance insights data for. Defaults to 7 days if Performance Insights are enabled. Valid values are `7`, `month * 31` (where month is a number of months from 1-23), and `731`. See [here](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Overview.cost.html) for more information on retention periods. :param pulumi.Input[int] port: Port on which the DB accepts connections. @@ -1820,7 +1820,7 @@ def network_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Enables Performance Insights for the RDS Cluster + Enables Performance Insights. """ return pulumi.get(self, "performance_insights_enabled") @@ -2372,7 +2372,7 @@ def __init__(__self__, :param pulumi.Input[str] master_user_secret_kms_key_id: Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN. If not specified, the default KMS key for your Amazon Web Services account is used. :param pulumi.Input[str] master_username: Username for the master DB user. Please refer to the [RDS Naming Constraints](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot. :param pulumi.Input[str] network_type: Network type of the cluster. Valid values: `IPV4`, `DUAL`. - :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights for the RDS Cluster + :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights. :param pulumi.Input[str] performance_insights_kms_key_id: Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). :param pulumi.Input[int] performance_insights_retention_period: Specifies the amount of time to retain performance insights data for. Defaults to 7 days if Performance Insights are enabled. Valid values are `7`, `month * 31` (where month is a number of months from 1-23), and `731`. See [here](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Overview.cost.html) for more information on retention periods. :param pulumi.Input[int] port: Port on which the DB accepts connections. @@ -2890,7 +2890,7 @@ def get(resource_name: str, :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterMasterUserSecretArgs', 'ClusterMasterUserSecretArgsDict']]]] master_user_secrets: Block that specifies the master user secret. Only available when `manage_master_user_password` is set to true. Documented below. :param pulumi.Input[str] master_username: Username for the master DB user. Please refer to the [RDS Naming Constraints](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints). This argument does not support in-place updates and cannot be changed during a restore from snapshot. :param pulumi.Input[str] network_type: Network type of the cluster. Valid values: `IPV4`, `DUAL`. - :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights for the RDS Cluster + :param pulumi.Input[bool] performance_insights_enabled: Enables Performance Insights. :param pulumi.Input[str] performance_insights_kms_key_id: Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key will be used (`aws/rds`). :param pulumi.Input[int] performance_insights_retention_period: Specifies the amount of time to retain performance insights data for. Defaults to 7 days if Performance Insights are enabled. Valid values are `7`, `month * 31` (where month is a number of months from 1-23), and `731`. See [here](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Overview.cost.html) for more information on retention periods. :param pulumi.Input[int] port: Port on which the DB accepts connections. @@ -3370,7 +3370,7 @@ def network_type(self) -> pulumi.Output[str]: @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> pulumi.Output[Optional[bool]]: """ - Enables Performance Insights for the RDS Cluster + Enables Performance Insights. """ return pulumi.get(self, "performance_insights_enabled") diff --git a/sdk/python/pulumi_aws/rds/cluster_instance.py b/sdk/python/pulumi_aws/rds/cluster_instance.py index abc1828a100..bdded735e5c 100644 --- a/sdk/python/pulumi_aws/rds/cluster_instance.py +++ b/sdk/python/pulumi_aws/rds/cluster_instance.py @@ -65,7 +65,7 @@ def __init__(__self__, *, :param pulumi.Input[str] identifier_prefix: Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`. :param pulumi.Input[int] monitoring_interval: Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60. :param pulumi.Input[str] monitoring_role_arn: ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. - :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. + :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. :param pulumi.Input[str] performance_insights_kms_key_id: ARN for the KMS key to encrypt Performance Insights data. When specifying `performance_insights_kms_key_id`, `performance_insights_enabled` needs to be set to true. :param pulumi.Input[int] performance_insights_retention_period: Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performance_insights_retention_period`, `performance_insights_enabled` needs to be set to true. Defaults to '7'. :param pulumi.Input[str] preferred_backup_window: Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferred_backup_window` is set at the cluster level, this argument **must** be omitted. @@ -331,7 +331,7 @@ def monitoring_role_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Specifies whether Performance Insights is enabled or not. + Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. """ return pulumi.get(self, "performance_insights_enabled") @@ -488,7 +488,7 @@ def __init__(__self__, *, :param pulumi.Input[int] monitoring_interval: Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60. :param pulumi.Input[str] monitoring_role_arn: ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. :param pulumi.Input[str] network_type: Network type of the DB instance. - :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. + :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. :param pulumi.Input[str] performance_insights_kms_key_id: ARN for the KMS key to encrypt Performance Insights data. When specifying `performance_insights_kms_key_id`, `performance_insights_enabled` needs to be set to true. :param pulumi.Input[int] performance_insights_retention_period: Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performance_insights_retention_period`, `performance_insights_enabled` needs to be set to true. Defaults to '7'. :param pulumi.Input[int] port: Database port @@ -856,7 +856,7 @@ def network_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Specifies whether Performance Insights is enabled or not. + Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. """ return pulumi.get(self, "performance_insights_enabled") @@ -1101,7 +1101,7 @@ def __init__(__self__, :param pulumi.Input[Union[str, 'InstanceType']] instance_class: Instance class to use. For details on CPU and memory, see [Scaling Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details. For Aurora Serverless v2 use `db.serverless`. :param pulumi.Input[int] monitoring_interval: Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60. :param pulumi.Input[str] monitoring_role_arn: ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. - :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. + :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. :param pulumi.Input[str] performance_insights_kms_key_id: ARN for the KMS key to encrypt Performance Insights data. When specifying `performance_insights_kms_key_id`, `performance_insights_enabled` needs to be set to true. :param pulumi.Input[int] performance_insights_retention_period: Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performance_insights_retention_period`, `performance_insights_enabled` needs to be set to true. Defaults to '7'. :param pulumi.Input[str] preferred_backup_window: Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferred_backup_window` is set at the cluster level, this argument **must** be omitted. @@ -1334,7 +1334,7 @@ def get(resource_name: str, :param pulumi.Input[int] monitoring_interval: Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60. :param pulumi.Input[str] monitoring_role_arn: ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances. :param pulumi.Input[str] network_type: Network type of the DB instance. - :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. + :param pulumi.Input[bool] performance_insights_enabled: Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. :param pulumi.Input[str] performance_insights_kms_key_id: ARN for the KMS key to encrypt Performance Insights data. When specifying `performance_insights_kms_key_id`, `performance_insights_enabled` needs to be set to true. :param pulumi.Input[int] performance_insights_retention_period: Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performance_insights_retention_period`, `performance_insights_enabled` needs to be set to true. Defaults to '7'. :param pulumi.Input[int] port: Database port @@ -1577,7 +1577,7 @@ def network_type(self) -> pulumi.Output[str]: @pulumi.getter(name="performanceInsightsEnabled") def performance_insights_enabled(self) -> pulumi.Output[bool]: """ - Specifies whether Performance Insights is enabled or not. + Specifies whether Performance Insights is enabled or not. **NOTE:** When Performance Insights is configured at the cluster level through `rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration. """ return pulumi.get(self, "performance_insights_enabled") diff --git a/sdk/python/pulumi_aws/rds/get_certificate.py b/sdk/python/pulumi_aws/rds/get_certificate.py index 915ca539827..07394a51685 100644 --- a/sdk/python/pulumi_aws/rds/get_certificate.py +++ b/sdk/python/pulumi_aws/rds/get_certificate.py @@ -26,7 +26,7 @@ class GetCertificateResult: """ A collection of values returned by getCertificate. """ - def __init__(__self__, arn=None, certificate_type=None, customer_override=None, customer_override_valid_till=None, id=None, latest_valid_till=None, thumbprint=None, valid_from=None, valid_till=None): + def __init__(__self__, arn=None, certificate_type=None, customer_override=None, customer_override_valid_till=None, default_for_new_launches=None, id=None, latest_valid_till=None, thumbprint=None, valid_from=None, valid_till=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -39,6 +39,9 @@ def __init__(__self__, arn=None, certificate_type=None, customer_override=None, if customer_override_valid_till and not isinstance(customer_override_valid_till, str): raise TypeError("Expected argument 'customer_override_valid_till' to be a str") pulumi.set(__self__, "customer_override_valid_till", customer_override_valid_till) + if default_for_new_launches and not isinstance(default_for_new_launches, bool): + raise TypeError("Expected argument 'default_for_new_launches' to be a bool") + pulumi.set(__self__, "default_for_new_launches", default_for_new_launches) if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) @@ -87,6 +90,11 @@ def customer_override_valid_till(self) -> str: """ return pulumi.get(self, "customer_override_valid_till") + @property + @pulumi.getter(name="defaultForNewLaunches") + def default_for_new_launches(self) -> Optional[bool]: + return pulumi.get(self, "default_for_new_launches") + @property @pulumi.getter def id(self) -> str: @@ -132,6 +140,7 @@ def __await__(self): certificate_type=self.certificate_type, customer_override=self.customer_override, customer_override_valid_till=self.customer_override_valid_till, + default_for_new_launches=self.default_for_new_launches, id=self.id, latest_valid_till=self.latest_valid_till, thumbprint=self.thumbprint, @@ -139,7 +148,8 @@ def __await__(self): valid_till=self.valid_till) -def get_certificate(id: Optional[str] = None, +def get_certificate(default_for_new_launches: Optional[bool] = None, + id: Optional[str] = None, latest_valid_till: Optional[bool] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetCertificateResult: """ @@ -155,10 +165,12 @@ def get_certificate(id: Optional[str] = None, ``` + :param bool default_for_new_launches: When enabled, returns the default certificate for new RDS instances. :param str id: Certificate identifier. For example, `rds-ca-2019`. :param bool latest_valid_till: When enabled, returns the certificate with the latest `ValidTill`. """ __args__ = dict() + __args__['defaultForNewLaunches'] = default_for_new_launches __args__['id'] = id __args__['latestValidTill'] = latest_valid_till opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) @@ -169,12 +181,14 @@ def get_certificate(id: Optional[str] = None, certificate_type=pulumi.get(__ret__, 'certificate_type'), customer_override=pulumi.get(__ret__, 'customer_override'), customer_override_valid_till=pulumi.get(__ret__, 'customer_override_valid_till'), + default_for_new_launches=pulumi.get(__ret__, 'default_for_new_launches'), id=pulumi.get(__ret__, 'id'), latest_valid_till=pulumi.get(__ret__, 'latest_valid_till'), thumbprint=pulumi.get(__ret__, 'thumbprint'), valid_from=pulumi.get(__ret__, 'valid_from'), valid_till=pulumi.get(__ret__, 'valid_till')) -def get_certificate_output(id: Optional[pulumi.Input[Optional[str]]] = None, +def get_certificate_output(default_for_new_launches: Optional[pulumi.Input[Optional[bool]]] = None, + id: Optional[pulumi.Input[Optional[str]]] = None, latest_valid_till: Optional[pulumi.Input[Optional[bool]]] = None, opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetCertificateResult]: """ @@ -190,10 +204,12 @@ def get_certificate_output(id: Optional[pulumi.Input[Optional[str]]] = None, ``` + :param bool default_for_new_launches: When enabled, returns the default certificate for new RDS instances. :param str id: Certificate identifier. For example, `rds-ca-2019`. :param bool latest_valid_till: When enabled, returns the certificate with the latest `ValidTill`. """ __args__ = dict() + __args__['defaultForNewLaunches'] = default_for_new_launches __args__['id'] = id __args__['latestValidTill'] = latest_valid_till opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) @@ -203,6 +219,7 @@ def get_certificate_output(id: Optional[pulumi.Input[Optional[str]]] = None, certificate_type=pulumi.get(__response__, 'certificate_type'), customer_override=pulumi.get(__response__, 'customer_override'), customer_override_valid_till=pulumi.get(__response__, 'customer_override_valid_till'), + default_for_new_launches=pulumi.get(__response__, 'default_for_new_launches'), id=pulumi.get(__response__, 'id'), latest_valid_till=pulumi.get(__response__, 'latest_valid_till'), thumbprint=pulumi.get(__response__, 'thumbprint'), diff --git a/sdk/python/pulumi_aws/rds/get_engine_version.py b/sdk/python/pulumi_aws/rds/get_engine_version.py index b96e7d753f7..848e77dce5d 100644 --- a/sdk/python/pulumi_aws/rds/get_engine_version.py +++ b/sdk/python/pulumi_aws/rds/get_engine_version.py @@ -28,7 +28,7 @@ class GetEngineVersionResult: """ A collection of values returned by getEngineVersion. """ - def __init__(__self__, default_character_set=None, default_only=None, engine=None, engine_description=None, exportable_log_types=None, filters=None, has_major_target=None, has_minor_target=None, id=None, include_all=None, latest=None, parameter_group_family=None, preferred_major_targets=None, preferred_upgrade_targets=None, preferred_versions=None, status=None, supported_character_sets=None, supported_feature_names=None, supported_modes=None, supported_timezones=None, supports_global_databases=None, supports_limitless_database=None, supports_log_exports_to_cloudwatch=None, supports_parallel_query=None, supports_read_replica=None, valid_major_targets=None, valid_minor_targets=None, valid_upgrade_targets=None, version=None, version_actual=None, version_description=None): + def __init__(__self__, default_character_set=None, default_only=None, engine=None, engine_description=None, exportable_log_types=None, filters=None, has_major_target=None, has_minor_target=None, id=None, include_all=None, latest=None, parameter_group_family=None, preferred_major_targets=None, preferred_upgrade_targets=None, preferred_versions=None, status=None, supported_character_sets=None, supported_feature_names=None, supported_modes=None, supported_timezones=None, supports_certificate_rotation_without_restart=None, supports_global_databases=None, supports_integrations=None, supports_limitless_database=None, supports_local_write_forwarding=None, supports_log_exports_to_cloudwatch=None, supports_parallel_query=None, supports_read_replica=None, valid_major_targets=None, valid_minor_targets=None, valid_upgrade_targets=None, version=None, version_actual=None, version_description=None): if default_character_set and not isinstance(default_character_set, str): raise TypeError("Expected argument 'default_character_set' to be a str") pulumi.set(__self__, "default_character_set", default_character_set) @@ -89,12 +89,21 @@ def __init__(__self__, default_character_set=None, default_only=None, engine=Non if supported_timezones and not isinstance(supported_timezones, list): raise TypeError("Expected argument 'supported_timezones' to be a list") pulumi.set(__self__, "supported_timezones", supported_timezones) + if supports_certificate_rotation_without_restart and not isinstance(supports_certificate_rotation_without_restart, bool): + raise TypeError("Expected argument 'supports_certificate_rotation_without_restart' to be a bool") + pulumi.set(__self__, "supports_certificate_rotation_without_restart", supports_certificate_rotation_without_restart) if supports_global_databases and not isinstance(supports_global_databases, bool): raise TypeError("Expected argument 'supports_global_databases' to be a bool") pulumi.set(__self__, "supports_global_databases", supports_global_databases) + if supports_integrations and not isinstance(supports_integrations, bool): + raise TypeError("Expected argument 'supports_integrations' to be a bool") + pulumi.set(__self__, "supports_integrations", supports_integrations) if supports_limitless_database and not isinstance(supports_limitless_database, bool): raise TypeError("Expected argument 'supports_limitless_database' to be a bool") pulumi.set(__self__, "supports_limitless_database", supports_limitless_database) + if supports_local_write_forwarding and not isinstance(supports_local_write_forwarding, bool): + raise TypeError("Expected argument 'supports_local_write_forwarding' to be a bool") + pulumi.set(__self__, "supports_local_write_forwarding", supports_local_write_forwarding) if supports_log_exports_to_cloudwatch and not isinstance(supports_log_exports_to_cloudwatch, bool): raise TypeError("Expected argument 'supports_log_exports_to_cloudwatch' to be a bool") pulumi.set(__self__, "supports_log_exports_to_cloudwatch", supports_log_exports_to_cloudwatch) @@ -250,6 +259,14 @@ def supported_timezones(self) -> Sequence[str]: """ return pulumi.get(self, "supported_timezones") + @property + @pulumi.getter(name="supportsCertificateRotationWithoutRestart") + def supports_certificate_rotation_without_restart(self) -> bool: + """ + Whether the certificates can be rotated without restarting the Aurora instance. + """ + return pulumi.get(self, "supports_certificate_rotation_without_restart") + @property @pulumi.getter(name="supportsGlobalDatabases") def supports_global_databases(self) -> bool: @@ -258,6 +275,14 @@ def supports_global_databases(self) -> bool: """ return pulumi.get(self, "supports_global_databases") + @property + @pulumi.getter(name="supportsIntegrations") + def supports_integrations(self) -> bool: + """ + Whether the engine version supports integrations with other AWS services. + """ + return pulumi.get(self, "supports_integrations") + @property @pulumi.getter(name="supportsLimitlessDatabase") def supports_limitless_database(self) -> bool: @@ -266,6 +291,14 @@ def supports_limitless_database(self) -> bool: """ return pulumi.get(self, "supports_limitless_database") + @property + @pulumi.getter(name="supportsLocalWriteForwarding") + def supports_local_write_forwarding(self) -> bool: + """ + Whether the engine version supports local write forwarding or not. + """ + return pulumi.get(self, "supports_local_write_forwarding") + @property @pulumi.getter(name="supportsLogExportsToCloudwatch") def supports_log_exports_to_cloudwatch(self) -> bool: @@ -362,8 +395,11 @@ def __await__(self): supported_feature_names=self.supported_feature_names, supported_modes=self.supported_modes, supported_timezones=self.supported_timezones, + supports_certificate_rotation_without_restart=self.supports_certificate_rotation_without_restart, supports_global_databases=self.supports_global_databases, + supports_integrations=self.supports_integrations, supports_limitless_database=self.supports_limitless_database, + supports_local_write_forwarding=self.supports_local_write_forwarding, supports_log_exports_to_cloudwatch=self.supports_log_exports_to_cloudwatch, supports_parallel_query=self.supports_parallel_query, supports_read_replica=self.supports_read_replica, @@ -473,8 +509,11 @@ def get_engine_version(default_only: Optional[bool] = None, supported_feature_names=pulumi.get(__ret__, 'supported_feature_names'), supported_modes=pulumi.get(__ret__, 'supported_modes'), supported_timezones=pulumi.get(__ret__, 'supported_timezones'), + supports_certificate_rotation_without_restart=pulumi.get(__ret__, 'supports_certificate_rotation_without_restart'), supports_global_databases=pulumi.get(__ret__, 'supports_global_databases'), + supports_integrations=pulumi.get(__ret__, 'supports_integrations'), supports_limitless_database=pulumi.get(__ret__, 'supports_limitless_database'), + supports_local_write_forwarding=pulumi.get(__ret__, 'supports_local_write_forwarding'), supports_log_exports_to_cloudwatch=pulumi.get(__ret__, 'supports_log_exports_to_cloudwatch'), supports_parallel_query=pulumi.get(__ret__, 'supports_parallel_query'), supports_read_replica=pulumi.get(__ret__, 'supports_read_replica'), @@ -581,8 +620,11 @@ def get_engine_version_output(default_only: Optional[pulumi.Input[Optional[bool] supported_feature_names=pulumi.get(__response__, 'supported_feature_names'), supported_modes=pulumi.get(__response__, 'supported_modes'), supported_timezones=pulumi.get(__response__, 'supported_timezones'), + supports_certificate_rotation_without_restart=pulumi.get(__response__, 'supports_certificate_rotation_without_restart'), supports_global_databases=pulumi.get(__response__, 'supports_global_databases'), + supports_integrations=pulumi.get(__response__, 'supports_integrations'), supports_limitless_database=pulumi.get(__response__, 'supports_limitless_database'), + supports_local_write_forwarding=pulumi.get(__response__, 'supports_local_write_forwarding'), supports_log_exports_to_cloudwatch=pulumi.get(__response__, 'supports_log_exports_to_cloudwatch'), supports_parallel_query=pulumi.get(__response__, 'supports_parallel_query'), supports_read_replica=pulumi.get(__response__, 'supports_read_replica'), diff --git a/sdk/python/pulumi_aws/rds/integration.py b/sdk/python/pulumi_aws/rds/integration.py index 37585f40411..2488eeda301 100644 --- a/sdk/python/pulumi_aws/rds/integration.py +++ b/sdk/python/pulumi_aws/rds/integration.py @@ -25,6 +25,7 @@ def __init__(__self__, *, source_arn: pulumi.Input[str], target_arn: pulumi.Input[str], additional_encryption_context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + data_filter: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, timeouts: Optional[pulumi.Input['IntegrationTimeoutsArgs']] = None): @@ -35,8 +36,17 @@ def __init__(__self__, *, :param pulumi.Input[str] target_arn: ARN of the Redshift data warehouse to use as the target for replication. The following arguments are optional: - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. - :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. + :param pulumi.Input[str] data_filter: Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. """ pulumi.set(__self__, "integration_name", integration_name) @@ -44,6 +54,8 @@ def __init__(__self__, *, pulumi.set(__self__, "target_arn", target_arn) if additional_encryption_context is not None: pulumi.set(__self__, "additional_encryption_context", additional_encryption_context) + if data_filter is not None: + pulumi.set(__self__, "data_filter", data_filter) if kms_key_id is not None: pulumi.set(__self__, "kms_key_id", kms_key_id) if tags is not None: @@ -93,7 +105,9 @@ def target_arn(self, value: pulumi.Input[str]): @pulumi.getter(name="additionalEncryptionContext") def additional_encryption_context(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. """ return pulumi.get(self, "additional_encryption_context") @@ -101,11 +115,29 @@ def additional_encryption_context(self) -> Optional[pulumi.Input[Mapping[str, pu def additional_encryption_context(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): pulumi.set(self, "additional_encryption_context", value) + @property + @pulumi.getter(name="dataFilter") + def data_filter(self) -> Optional[pulumi.Input[str]]: + """ + Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + """ + return pulumi.get(self, "data_filter") + + @data_filter.setter + def data_filter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_filter", value) + @property @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> Optional[pulumi.Input[str]]: """ - KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. """ return pulumi.get(self, "kms_key_id") @@ -140,6 +172,7 @@ class _IntegrationState: def __init__(__self__, *, additional_encryption_context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, arn: Optional[pulumi.Input[str]] = None, + data_filter: Optional[pulumi.Input[str]] = None, integration_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, source_arn: Optional[pulumi.Input[str]] = None, @@ -149,10 +182,19 @@ def __init__(__self__, *, timeouts: Optional[pulumi.Input['IntegrationTimeoutsArgs']] = None): """ Input properties used for looking up and filtering Integration resources. - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. :param pulumi.Input[str] arn: ARN of the Integration. + :param pulumi.Input[str] data_filter: Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. :param pulumi.Input[str] integration_name: Name of the integration. - :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. :param pulumi.Input[str] source_arn: ARN of the database to use as the source for replication. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. @@ -164,6 +206,8 @@ def __init__(__self__, *, pulumi.set(__self__, "additional_encryption_context", additional_encryption_context) if arn is not None: pulumi.set(__self__, "arn", arn) + if data_filter is not None: + pulumi.set(__self__, "data_filter", data_filter) if integration_name is not None: pulumi.set(__self__, "integration_name", integration_name) if kms_key_id is not None: @@ -186,7 +230,9 @@ def __init__(__self__, *, @pulumi.getter(name="additionalEncryptionContext") def additional_encryption_context(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. """ return pulumi.get(self, "additional_encryption_context") @@ -206,6 +252,22 @@ def arn(self) -> Optional[pulumi.Input[str]]: def arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "arn", value) + @property + @pulumi.getter(name="dataFilter") + def data_filter(self) -> Optional[pulumi.Input[str]]: + """ + Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + """ + return pulumi.get(self, "data_filter") + + @data_filter.setter + def data_filter(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_filter", value) + @property @pulumi.getter(name="integrationName") def integration_name(self) -> Optional[pulumi.Input[str]]: @@ -222,7 +284,9 @@ def integration_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> Optional[pulumi.Input[str]]: """ - KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. """ return pulumi.get(self, "kms_key_id") @@ -297,6 +361,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, additional_encryption_context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + data_filter: Optional[pulumi.Input[str]] = None, integration_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, source_arn: Optional[pulumi.Input[str]] = None, @@ -384,9 +449,18 @@ def __init__(__self__, :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]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. + :param pulumi.Input[str] data_filter: Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. :param pulumi.Input[str] integration_name: Name of the integration. - :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. :param pulumi.Input[str] source_arn: ARN of the database to use as the source for replication. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[str] target_arn: ARN of the Redshift data warehouse to use as the target for replication. @@ -493,6 +567,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, additional_encryption_context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + data_filter: Optional[pulumi.Input[str]] = None, integration_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, source_arn: Optional[pulumi.Input[str]] = None, @@ -509,6 +584,7 @@ def _internal_init(__self__, __props__ = IntegrationArgs.__new__(IntegrationArgs) __props__.__dict__["additional_encryption_context"] = additional_encryption_context + __props__.__dict__["data_filter"] = data_filter if integration_name is None and not opts.urn: raise TypeError("Missing required property 'integration_name'") __props__.__dict__["integration_name"] = integration_name @@ -535,6 +611,7 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, additional_encryption_context: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, arn: Optional[pulumi.Input[str]] = None, + data_filter: Optional[pulumi.Input[str]] = None, integration_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, source_arn: Optional[pulumi.Input[str]] = None, @@ -549,10 +626,19 @@ def get(resource_name: str, :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[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] additional_encryption_context: Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. :param pulumi.Input[str] arn: ARN of the Integration. + :param pulumi.Input[str] data_filter: Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. :param pulumi.Input[str] integration_name: Name of the integration. - :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + :param pulumi.Input[str] kms_key_id: KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. :param pulumi.Input[str] source_arn: ARN of the database to use as the source for replication. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value map of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. @@ -566,6 +652,7 @@ def get(resource_name: str, __props__.__dict__["additional_encryption_context"] = additional_encryption_context __props__.__dict__["arn"] = arn + __props__.__dict__["data_filter"] = data_filter __props__.__dict__["integration_name"] = integration_name __props__.__dict__["kms_key_id"] = kms_key_id __props__.__dict__["source_arn"] = source_arn @@ -579,7 +666,9 @@ def get(resource_name: str, @pulumi.getter(name="additionalEncryptionContext") def additional_encryption_context(self) -> pulumi.Output[Optional[Mapping[str, str]]]: """ - Set of non-secret key–value pairs that contains additional contextual information about the data. For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). You can only include this parameter if you specify the `kms_key_id` parameter. + Set of non-secret key–value pairs that contains additional contextual information about the data. + For more information, see the [User Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context). + You can only include this parameter if you specify the `kms_key_id` parameter. """ return pulumi.get(self, "additional_encryption_context") @@ -591,6 +680,18 @@ def arn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "arn") + @property + @pulumi.getter(name="dataFilter") + def data_filter(self) -> pulumi.Output[str]: + """ + Data filters for the integration. + These filters determine which tables from the source database are sent to the target Amazon Redshift data warehouse. + The value should match the syntax from the AWS CLI which includes an `include:` or `exclude:` prefix before a filter expression. + Multiple expressions are separated by a comma. + See the [Amazon RDS data filtering guide](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/zero-etl.filtering.html) for additional details. + """ + return pulumi.get(self, "data_filter") + @property @pulumi.getter(name="integrationName") def integration_name(self) -> pulumi.Output[str]: @@ -603,7 +704,9 @@ def integration_name(self) -> pulumi.Output[str]: @pulumi.getter(name="kmsKeyId") def kms_key_id(self) -> pulumi.Output[str]: """ - KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default AWS owned key. If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. + KMS key identifier for the key to use to encrypt the integration. + If you don't specify an encryption key, RDS uses a default AWS owned key. + If you use the default AWS owned key, you should ignore `kms_key_id` parameter by using `lifecycle` parameter to avoid unintended change after the first creation. """ return pulumi.get(self, "kms_key_id") diff --git a/sdk/python/pulumi_aws/rds/outputs.py b/sdk/python/pulumi_aws/rds/outputs.py index f1f95d3b9a7..57d95ac6382 100644 --- a/sdk/python/pulumi_aws/rds/outputs.py +++ b/sdk/python/pulumi_aws/rds/outputs.py @@ -1262,7 +1262,7 @@ def __init__(__self__, *, username: Optional[str] = None): """ :param str auth_scheme: The type of authentication that the proxy uses for connections from the proxy to the underlying database. One of `SECRETS`. - :param str client_password_auth_type: The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + :param str client_password_auth_type: The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. :param str description: A user-specified description about the authentication used by a proxy to log in as a specific database user. :param str iam_auth: Whether to require or disallow AWS Identity and Access Management (IAM) authentication for connections to the proxy. One of `DISABLED`, `REQUIRED`. :param str secret_arn: The Amazon Resource Name (ARN) representing the secret that the proxy uses to authenticate to the RDS DB instance or Aurora DB cluster. These secrets are stored within Amazon Secrets Manager. @@ -1293,7 +1293,7 @@ def auth_scheme(self) -> Optional[str]: @pulumi.getter(name="clientPasswordAuthType") def client_password_auth_type(self) -> Optional[str]: """ - The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. + The type of authentication the proxy uses for connections from clients. Valid values are `MYSQL_CACHING_SHA2_PASSWORD`, `MYSQL_NATIVE_PASSWORD`, `POSTGRES_SCRAM_SHA_256`, `POSTGRES_MD5`, and `SQL_SERVER_AUTHENTICATION`. """ return pulumi.get(self, "client_password_auth_type") diff --git a/sdk/python/pulumi_aws/route53/__init__.py b/sdk/python/pulumi_aws/route53/__init__.py index dec39479452..8aa42f6b0e6 100644 --- a/sdk/python/pulumi_aws/route53/__init__.py +++ b/sdk/python/pulumi_aws/route53/__init__.py @@ -12,6 +12,7 @@ from .get_delegation_set import * from .get_profiles_profiles import * from .get_query_log_config import * +from .get_records import * from .get_resolver_endpoint import * from .get_resolver_firewall_config import * from .get_resolver_firewall_domain_list import * diff --git a/sdk/python/pulumi_aws/route53/get_records.py b/sdk/python/pulumi_aws/route53/get_records.py new file mode 100644 index 00000000000..ce8c1394aa8 --- /dev/null +++ b/sdk/python/pulumi_aws/route53/get_records.py @@ -0,0 +1,181 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetRecordsResult', + 'AwaitableGetRecordsResult', + 'get_records', + 'get_records_output', +] + +@pulumi.output_type +class GetRecordsResult: + """ + A collection of values returned by getRecords. + """ + def __init__(__self__, id=None, name_regex=None, resource_record_sets=None, zone_id=None): + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name_regex and not isinstance(name_regex, str): + raise TypeError("Expected argument 'name_regex' to be a str") + pulumi.set(__self__, "name_regex", name_regex) + if resource_record_sets and not isinstance(resource_record_sets, list): + raise TypeError("Expected argument 'resource_record_sets' to be a list") + pulumi.set(__self__, "resource_record_sets", resource_record_sets) + if zone_id and not isinstance(zone_id, str): + raise TypeError("Expected argument 'zone_id' to be a str") + pulumi.set(__self__, "zone_id", zone_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="nameRegex") + def name_regex(self) -> Optional[str]: + return pulumi.get(self, "name_regex") + + @property + @pulumi.getter(name="resourceRecordSets") + def resource_record_sets(self) -> Sequence['outputs.GetRecordsResourceRecordSetResult']: + """ + The resource records sets. + """ + return pulumi.get(self, "resource_record_sets") + + @property + @pulumi.getter(name="zoneId") + def zone_id(self) -> str: + return pulumi.get(self, "zone_id") + + +class AwaitableGetRecordsResult(GetRecordsResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetRecordsResult( + id=self.id, + name_regex=self.name_regex, + resource_record_sets=self.resource_record_sets, + zone_id=self.zone_id) + + +def get_records(name_regex: Optional[str] = None, + zone_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRecordsResult: + """ + Use this data source to get the details of resource records in a Route 53 hosted zone. + + ## Example Usage + + ### Basic Usage + + Return all records in the zone. + + ```python + import pulumi + import pulumi_aws as aws + + selected = aws.route53.get_zone(name="test.com.", + private_zone=True) + example = aws.route53.get_records(zone_id=selected.zone_id) + ``` + + ### Basic Usage with filter + + Return the records that starts with `www`. + + ```python + import pulumi + import pulumi_aws as aws + + selected = aws.route53.get_zone(name="test.com.", + private_zone=True) + example = aws.route53.get_records(zone_id=selected.zone_id, + name_regex="^www") + ``` + + + :param str name_regex: Regex string to apply to the resource record names returned by AWS. + :param str zone_id: The ID of the hosted zone that contains the resource record sets that you want to list. + """ + __args__ = dict() + __args__['nameRegex'] = name_regex + __args__['zoneId'] = zone_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws:route53/getRecords:getRecords', __args__, opts=opts, typ=GetRecordsResult).value + + return AwaitableGetRecordsResult( + id=pulumi.get(__ret__, 'id'), + name_regex=pulumi.get(__ret__, 'name_regex'), + resource_record_sets=pulumi.get(__ret__, 'resource_record_sets'), + zone_id=pulumi.get(__ret__, 'zone_id')) +def get_records_output(name_regex: Optional[pulumi.Input[Optional[str]]] = None, + zone_id: Optional[pulumi.Input[str]] = None, + opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetRecordsResult]: + """ + Use this data source to get the details of resource records in a Route 53 hosted zone. + + ## Example Usage + + ### Basic Usage + + Return all records in the zone. + + ```python + import pulumi + import pulumi_aws as aws + + selected = aws.route53.get_zone(name="test.com.", + private_zone=True) + example = aws.route53.get_records(zone_id=selected.zone_id) + ``` + + ### Basic Usage with filter + + Return the records that starts with `www`. + + ```python + import pulumi + import pulumi_aws as aws + + selected = aws.route53.get_zone(name="test.com.", + private_zone=True) + example = aws.route53.get_records(zone_id=selected.zone_id, + name_regex="^www") + ``` + + + :param str name_regex: Regex string to apply to the resource record names returned by AWS. + :param str zone_id: The ID of the hosted zone that contains the resource record sets that you want to list. + """ + __args__ = dict() + __args__['nameRegex'] = name_regex + __args__['zoneId'] = zone_id + opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke_output('aws:route53/getRecords:getRecords', __args__, opts=opts, typ=GetRecordsResult) + return __ret__.apply(lambda __response__: GetRecordsResult( + id=pulumi.get(__response__, 'id'), + name_regex=pulumi.get(__response__, 'name_regex'), + resource_record_sets=pulumi.get(__response__, 'resource_record_sets'), + zone_id=pulumi.get(__response__, 'zone_id'))) diff --git a/sdk/python/pulumi_aws/route53/outputs.py b/sdk/python/pulumi_aws/route53/outputs.py index 89790e446eb..fbd24e69b93 100644 --- a/sdk/python/pulumi_aws/route53/outputs.py +++ b/sdk/python/pulumi_aws/route53/outputs.py @@ -33,6 +33,13 @@ 'ZoneVpc', 'GetProfilesProfilesProfileResult', 'GetQueryLogConfigFilterResult', + 'GetRecordsResourceRecordSetResult', + 'GetRecordsResourceRecordSetAliasTargetResult', + 'GetRecordsResourceRecordSetCidrRoutingConfigResult', + 'GetRecordsResourceRecordSetGeolocationResult', + 'GetRecordsResourceRecordSetGeoproximityLocationResult', + 'GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult', + 'GetRecordsResourceRecordSetResourceRecordResult', 'GetResolverEndpointFilterResult', 'GetResolverFirewallRulesFirewallRuleResult', 'GetTrafficPolicyDocumentEndpointResult', @@ -720,6 +727,385 @@ def values(self) -> Sequence[str]: return pulumi.get(self, "values") +@pulumi.output_type +class GetRecordsResourceRecordSetResult(dict): + def __init__(__self__, *, + alias_target: 'outputs.GetRecordsResourceRecordSetAliasTargetResult', + cidr_routing_config: 'outputs.GetRecordsResourceRecordSetCidrRoutingConfigResult', + failover: str, + geolocation: 'outputs.GetRecordsResourceRecordSetGeolocationResult', + geoproximity_location: 'outputs.GetRecordsResourceRecordSetGeoproximityLocationResult', + health_check_id: str, + multi_value_answer: bool, + name: str, + region: str, + resource_records: Sequence['outputs.GetRecordsResourceRecordSetResourceRecordResult'], + set_identifier: str, + traffic_policy_instance_id: str, + ttl: int, + type: str, + weight: int): + """ + :param 'GetRecordsResourceRecordSetAliasTargetArgs' alias_target: Information about the AWS resource traffic is routed to. + :param 'GetRecordsResourceRecordSetCidrRoutingConfigArgs' cidr_routing_config: Information about the CIDR location traffic is routed to. + :param str failover: `PRIMARY` or `SECONDARY`. + :param 'GetRecordsResourceRecordSetGeolocationArgs' geolocation: Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + :param 'GetRecordsResourceRecordSetGeoproximityLocationArgs' geoproximity_location: Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + :param str health_check_id: ID of any applicable health check. + :param bool multi_value_answer: Traffic is routed approximately randomly to multiple resources. + :param str name: The name of the record. + :param str region: The Amazon EC2 Region of the resource that this resource record set refers to. + :param Sequence['GetRecordsResourceRecordSetResourceRecordArgs'] resource_records: The resource records. + :param str set_identifier: An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + :param str traffic_policy_instance_id: The ID of any traffic policy instance that Route 53 created this resource record set for. + :param int ttl: The resource record cache time to live (TTL), in seconds. + :param str type: The DNS record type. + :param int weight: Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + """ + pulumi.set(__self__, "alias_target", alias_target) + pulumi.set(__self__, "cidr_routing_config", cidr_routing_config) + pulumi.set(__self__, "failover", failover) + pulumi.set(__self__, "geolocation", geolocation) + pulumi.set(__self__, "geoproximity_location", geoproximity_location) + pulumi.set(__self__, "health_check_id", health_check_id) + pulumi.set(__self__, "multi_value_answer", multi_value_answer) + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "region", region) + pulumi.set(__self__, "resource_records", resource_records) + pulumi.set(__self__, "set_identifier", set_identifier) + pulumi.set(__self__, "traffic_policy_instance_id", traffic_policy_instance_id) + pulumi.set(__self__, "ttl", ttl) + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "weight", weight) + + @property + @pulumi.getter(name="aliasTarget") + def alias_target(self) -> 'outputs.GetRecordsResourceRecordSetAliasTargetResult': + """ + Information about the AWS resource traffic is routed to. + """ + return pulumi.get(self, "alias_target") + + @property + @pulumi.getter(name="cidrRoutingConfig") + def cidr_routing_config(self) -> 'outputs.GetRecordsResourceRecordSetCidrRoutingConfigResult': + """ + Information about the CIDR location traffic is routed to. + """ + return pulumi.get(self, "cidr_routing_config") + + @property + @pulumi.getter + def failover(self) -> str: + """ + `PRIMARY` or `SECONDARY`. + """ + return pulumi.get(self, "failover") + + @property + @pulumi.getter + def geolocation(self) -> 'outputs.GetRecordsResourceRecordSetGeolocationResult': + """ + Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + """ + return pulumi.get(self, "geolocation") + + @property + @pulumi.getter(name="geoproximityLocation") + def geoproximity_location(self) -> 'outputs.GetRecordsResourceRecordSetGeoproximityLocationResult': + """ + Information about how Amazon Route 53 responds to DNS queries based on the geographic origin of the query. + """ + return pulumi.get(self, "geoproximity_location") + + @property + @pulumi.getter(name="healthCheckId") + def health_check_id(self) -> str: + """ + ID of any applicable health check. + """ + return pulumi.get(self, "health_check_id") + + @property + @pulumi.getter(name="multiValueAnswer") + def multi_value_answer(self) -> bool: + """ + Traffic is routed approximately randomly to multiple resources. + """ + return pulumi.get(self, "multi_value_answer") + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the record. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def region(self) -> str: + """ + The Amazon EC2 Region of the resource that this resource record set refers to. + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="resourceRecords") + def resource_records(self) -> Sequence['outputs.GetRecordsResourceRecordSetResourceRecordResult']: + """ + The resource records. + """ + return pulumi.get(self, "resource_records") + + @property + @pulumi.getter(name="setIdentifier") + def set_identifier(self) -> str: + """ + An identifier that differentiates among multiple resource record sets that have the same combination of name and type. + """ + return pulumi.get(self, "set_identifier") + + @property + @pulumi.getter(name="trafficPolicyInstanceId") + def traffic_policy_instance_id(self) -> str: + """ + The ID of any traffic policy instance that Route 53 created this resource record set for. + """ + return pulumi.get(self, "traffic_policy_instance_id") + + @property + @pulumi.getter + def ttl(self) -> int: + """ + The resource record cache time to live (TTL), in seconds. + """ + return pulumi.get(self, "ttl") + + @property + @pulumi.getter + def type(self) -> str: + """ + The DNS record type. + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def weight(self) -> int: + """ + Among resource record sets that have the same combination of DNS name and type, a value that determines the proportion of DNS queries that Amazon Route 53 responds to using the current resource record set. + """ + return pulumi.get(self, "weight") + + +@pulumi.output_type +class GetRecordsResourceRecordSetAliasTargetResult(dict): + def __init__(__self__, *, + dns_name: str, + evaluate_target_health: bool, + hosted_zone_id: str): + """ + :param str dns_name: Target DNS name. + :param bool evaluate_target_health: Whether an alias resource record set inherits the health of the referenced AWS resource. + :param str hosted_zone_id: Target hosted zone ID. + """ + pulumi.set(__self__, "dns_name", dns_name) + pulumi.set(__self__, "evaluate_target_health", evaluate_target_health) + pulumi.set(__self__, "hosted_zone_id", hosted_zone_id) + + @property + @pulumi.getter(name="dnsName") + def dns_name(self) -> str: + """ + Target DNS name. + """ + return pulumi.get(self, "dns_name") + + @property + @pulumi.getter(name="evaluateTargetHealth") + def evaluate_target_health(self) -> bool: + """ + Whether an alias resource record set inherits the health of the referenced AWS resource. + """ + return pulumi.get(self, "evaluate_target_health") + + @property + @pulumi.getter(name="hostedZoneId") + def hosted_zone_id(self) -> str: + """ + Target hosted zone ID. + """ + return pulumi.get(self, "hosted_zone_id") + + +@pulumi.output_type +class GetRecordsResourceRecordSetCidrRoutingConfigResult(dict): + def __init__(__self__, *, + collection_id: str, + location_name: str): + """ + :param str collection_id: The CIDR collection ID. + :param str location_name: The CIDR collection location name. + """ + pulumi.set(__self__, "collection_id", collection_id) + pulumi.set(__self__, "location_name", location_name) + + @property + @pulumi.getter(name="collectionId") + def collection_id(self) -> str: + """ + The CIDR collection ID. + """ + return pulumi.get(self, "collection_id") + + @property + @pulumi.getter(name="locationName") + def location_name(self) -> str: + """ + The CIDR collection location name. + """ + return pulumi.get(self, "location_name") + + +@pulumi.output_type +class GetRecordsResourceRecordSetGeolocationResult(dict): + def __init__(__self__, *, + continent_code: str, + country_code: str, + subdivision_code: str): + """ + :param str continent_code: The two-letter code for the continent. + :param str country_code: The two-letter code for a country. + :param str subdivision_code: The two-letter code for a state of the United States. + """ + pulumi.set(__self__, "continent_code", continent_code) + pulumi.set(__self__, "country_code", country_code) + pulumi.set(__self__, "subdivision_code", subdivision_code) + + @property + @pulumi.getter(name="continentCode") + def continent_code(self) -> str: + """ + The two-letter code for the continent. + """ + return pulumi.get(self, "continent_code") + + @property + @pulumi.getter(name="countryCode") + def country_code(self) -> str: + """ + The two-letter code for a country. + """ + return pulumi.get(self, "country_code") + + @property + @pulumi.getter(name="subdivisionCode") + def subdivision_code(self) -> str: + """ + The two-letter code for a state of the United States. + """ + return pulumi.get(self, "subdivision_code") + + +@pulumi.output_type +class GetRecordsResourceRecordSetGeoproximityLocationResult(dict): + def __init__(__self__, *, + aws_region: str, + bias: int, + coordinates: 'outputs.GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult', + local_zone_group: str): + """ + :param str aws_region: The AWS Region the resource you are directing DNS traffic to, is in. + :param int bias: The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + :param 'GetRecordsResourceRecordSetGeoproximityLocationCoordinatesArgs' coordinates: Contains the longitude and latitude for a geographic region. + :param str local_zone_group: An AWS Local Zone Group. + """ + pulumi.set(__self__, "aws_region", aws_region) + pulumi.set(__self__, "bias", bias) + pulumi.set(__self__, "coordinates", coordinates) + pulumi.set(__self__, "local_zone_group", local_zone_group) + + @property + @pulumi.getter(name="awsRegion") + def aws_region(self) -> str: + """ + The AWS Region the resource you are directing DNS traffic to, is in. + """ + return pulumi.get(self, "aws_region") + + @property + @pulumi.getter + def bias(self) -> int: + """ + The bias increases or decreases the size of the geographic region from which Route 53 routes traffic to a resource. + """ + return pulumi.get(self, "bias") + + @property + @pulumi.getter + def coordinates(self) -> 'outputs.GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult': + """ + Contains the longitude and latitude for a geographic region. + """ + return pulumi.get(self, "coordinates") + + @property + @pulumi.getter(name="localZoneGroup") + def local_zone_group(self) -> str: + """ + An AWS Local Zone Group. + """ + return pulumi.get(self, "local_zone_group") + + +@pulumi.output_type +class GetRecordsResourceRecordSetGeoproximityLocationCoordinatesResult(dict): + def __init__(__self__, *, + latitude: str, + longitude: str): + """ + :param str latitude: Latitude. + :param str longitude: Longitude. + """ + pulumi.set(__self__, "latitude", latitude) + pulumi.set(__self__, "longitude", longitude) + + @property + @pulumi.getter + def latitude(self) -> str: + """ + Latitude. + """ + return pulumi.get(self, "latitude") + + @property + @pulumi.getter + def longitude(self) -> str: + """ + Longitude. + """ + return pulumi.get(self, "longitude") + + +@pulumi.output_type +class GetRecordsResourceRecordSetResourceRecordResult(dict): + def __init__(__self__, *, + value: str): + """ + :param str value: The DNS record value. + """ + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def value(self) -> str: + """ + The DNS record value. + """ + return pulumi.get(self, "value") + + @pulumi.output_type class GetResolverEndpointFilterResult(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/route53/record.py b/sdk/python/pulumi_aws/route53/record.py index c5b6752e768..3ed2b17300e 100644 --- a/sdk/python/pulumi_aws/route53/record.py +++ b/sdk/python/pulumi_aws/route53/record.py @@ -730,12 +730,12 @@ def __init__(__self__, Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): ```sh - $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS + $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS ``` If the record also contains a set identifier, append it: ```sh - $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev + $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev ``` :param str resource_name: The name of the resource. @@ -902,12 +902,12 @@ def __init__(__self__, Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`): ```sh - $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS + $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS ``` If the record also contains a set identifier, append it: ```sh - $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev + $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev_NS_dev ``` :param str resource_name: The name of the resource. diff --git a/sdk/python/pulumi_aws/s3/_inputs.py b/sdk/python/pulumi_aws/s3/_inputs.py index 26a83936c86..49f0a60d400 100644 --- a/sdk/python/pulumi_aws/s3/_inputs.py +++ b/sdk/python/pulumi_aws/s3/_inputs.py @@ -258,6 +258,10 @@ 'InventoryScheduleArgsDict', 'ObjectCopyGrantArgs', 'ObjectCopyGrantArgsDict', + 'ObjectCopyOverrideProviderArgs', + 'ObjectCopyOverrideProviderArgsDict', + 'ObjectCopyOverrideProviderDefaultTagsArgs', + 'ObjectCopyOverrideProviderDefaultTagsArgsDict', ] MYPY = False @@ -8141,3 +8145,67 @@ def uri(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "uri", value) +if not MYPY: + class ObjectCopyOverrideProviderArgsDict(TypedDict): + default_tags: NotRequired[pulumi.Input['ObjectCopyOverrideProviderDefaultTagsArgsDict']] + """ + Override the provider `default_tags` configuration block. + """ +elif False: + ObjectCopyOverrideProviderArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ObjectCopyOverrideProviderArgs: + def __init__(__self__, *, + default_tags: Optional[pulumi.Input['ObjectCopyOverrideProviderDefaultTagsArgs']] = None): + """ + :param pulumi.Input['ObjectCopyOverrideProviderDefaultTagsArgs'] default_tags: Override the provider `default_tags` configuration block. + """ + if default_tags is not None: + pulumi.set(__self__, "default_tags", default_tags) + + @property + @pulumi.getter(name="defaultTags") + def default_tags(self) -> Optional[pulumi.Input['ObjectCopyOverrideProviderDefaultTagsArgs']]: + """ + Override the provider `default_tags` configuration block. + """ + return pulumi.get(self, "default_tags") + + @default_tags.setter + def default_tags(self, value: Optional[pulumi.Input['ObjectCopyOverrideProviderDefaultTagsArgs']]): + pulumi.set(self, "default_tags", value) + + +if not MYPY: + class ObjectCopyOverrideProviderDefaultTagsArgsDict(TypedDict): + tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] + """ + Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ +elif False: + ObjectCopyOverrideProviderDefaultTagsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ObjectCopyOverrideProviderDefaultTagsArgs: + def __init__(__self__, *, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): + """ + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + diff --git a/sdk/python/pulumi_aws/s3/object_copy.py b/sdk/python/pulumi_aws/s3/object_copy.py index 3b9d50894b8..7ef01a04ce0 100644 --- a/sdk/python/pulumi_aws/s3/object_copy.py +++ b/sdk/python/pulumi_aws/s3/object_copy.py @@ -51,6 +51,7 @@ def __init__(__self__, *, object_lock_legal_hold_status: Optional[pulumi.Input[str]] = None, object_lock_mode: Optional[pulumi.Input[str]] = None, object_lock_retain_until_date: Optional[pulumi.Input[str]] = None, + override_provider: Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']] = None, request_payer: Optional[pulumi.Input[str]] = None, server_side_encryption: Optional[pulumi.Input[str]] = None, source_customer_algorithm: Optional[pulumi.Input[str]] = None, @@ -160,6 +161,8 @@ def __init__(__self__, *, pulumi.set(__self__, "object_lock_mode", object_lock_mode) if object_lock_retain_until_date is not None: pulumi.set(__self__, "object_lock_retain_until_date", object_lock_retain_until_date) + if override_provider is not None: + pulumi.set(__self__, "override_provider", override_provider) if request_payer is not None: pulumi.set(__self__, "request_payer", request_payer) if server_side_encryption is not None: @@ -538,6 +541,15 @@ def object_lock_retain_until_date(self) -> Optional[pulumi.Input[str]]: def object_lock_retain_until_date(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "object_lock_retain_until_date", value) + @property + @pulumi.getter(name="overrideProvider") + def override_provider(self) -> Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']]: + return pulumi.get(self, "override_provider") + + @override_provider.setter + def override_provider(self, value: Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']]): + pulumi.set(self, "override_provider", value) + @property @pulumi.getter(name="requestPayer") def request_payer(self) -> Optional[pulumi.Input[str]]: @@ -687,6 +699,7 @@ def __init__(__self__, *, object_lock_legal_hold_status: Optional[pulumi.Input[str]] = None, object_lock_mode: Optional[pulumi.Input[str]] = None, object_lock_retain_until_date: Optional[pulumi.Input[str]] = None, + override_provider: Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']] = None, request_charged: Optional[pulumi.Input[bool]] = None, request_payer: Optional[pulumi.Input[str]] = None, server_side_encryption: Optional[pulumi.Input[str]] = None, @@ -830,6 +843,8 @@ def __init__(__self__, *, pulumi.set(__self__, "object_lock_mode", object_lock_mode) if object_lock_retain_until_date is not None: pulumi.set(__self__, "object_lock_retain_until_date", object_lock_retain_until_date) + if override_provider is not None: + pulumi.set(__self__, "override_provider", override_provider) if request_charged is not None: pulumi.set(__self__, "request_charged", request_charged) if request_payer is not None: @@ -1303,6 +1318,15 @@ def object_lock_retain_until_date(self) -> Optional[pulumi.Input[str]]: def object_lock_retain_until_date(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "object_lock_retain_until_date", value) + @property + @pulumi.getter(name="overrideProvider") + def override_provider(self) -> Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']]: + return pulumi.get(self, "override_provider") + + @override_provider.setter + def override_provider(self, value: Optional[pulumi.Input['ObjectCopyOverrideProviderArgs']]): + pulumi.set(self, "override_provider", value) + @property @pulumi.getter(name="requestCharged") def request_charged(self) -> Optional[pulumi.Input[bool]]: @@ -1509,6 +1533,7 @@ def __init__(__self__, object_lock_legal_hold_status: Optional[pulumi.Input[str]] = None, object_lock_mode: Optional[pulumi.Input[str]] = None, object_lock_retain_until_date: Optional[pulumi.Input[str]] = None, + override_provider: Optional[pulumi.Input[Union['ObjectCopyOverrideProviderArgs', 'ObjectCopyOverrideProviderArgsDict']]] = None, request_payer: Optional[pulumi.Input[str]] = None, server_side_encryption: Optional[pulumi.Input[str]] = None, source: Optional[pulumi.Input[str]] = None, @@ -1540,6 +1565,26 @@ def __init__(__self__, }]) ``` + ### Ignoring Provider `default_tags` + + S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). + If the resource's own `tags` and the provider-level `default_tags` would together lead to more than 10 tags on an S3 object copy, use the `override_provider` configuration block to suppress any provider-level `default_tags`. + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.s3.ObjectCopy("test", + bucket="destination_bucket", + key="destination_key", + source="source_bucket/source_key", + override_provider={ + "default_tags": { + "tags": {}, + }, + }) + ``` + :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] acl: [Canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) to apply. Valid values are `private`, `public-read`, `public-read-write`, `authenticated-read`, `aws-exec-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Conflicts with `grant`. @@ -1609,6 +1654,26 @@ def __init__(__self__, }]) ``` + ### Ignoring Provider `default_tags` + + S3 objects support a [maximum of 10 tags](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html). + If the resource's own `tags` and the provider-level `default_tags` would together lead to more than 10 tags on an S3 object copy, use the `override_provider` configuration block to suppress any provider-level `default_tags`. + + ```python + import pulumi + import pulumi_aws as aws + + test = aws.s3.ObjectCopy("test", + bucket="destination_bucket", + key="destination_key", + source="source_bucket/source_key", + override_provider={ + "default_tags": { + "tags": {}, + }, + }) + ``` + :param str resource_name: The name of the resource. :param ObjectCopyArgs args: The arguments to use to populate this resource's properties. :param pulumi.ResourceOptions opts: Options for the resource. @@ -1653,6 +1718,7 @@ def _internal_init(__self__, object_lock_legal_hold_status: Optional[pulumi.Input[str]] = None, object_lock_mode: Optional[pulumi.Input[str]] = None, object_lock_retain_until_date: Optional[pulumi.Input[str]] = None, + override_provider: Optional[pulumi.Input[Union['ObjectCopyOverrideProviderArgs', 'ObjectCopyOverrideProviderArgsDict']]] = None, request_payer: Optional[pulumi.Input[str]] = None, server_side_encryption: Optional[pulumi.Input[str]] = None, source: Optional[pulumi.Input[str]] = None, @@ -1705,6 +1771,7 @@ def _internal_init(__self__, __props__.__dict__["object_lock_legal_hold_status"] = object_lock_legal_hold_status __props__.__dict__["object_lock_mode"] = object_lock_mode __props__.__dict__["object_lock_retain_until_date"] = object_lock_retain_until_date + __props__.__dict__["override_provider"] = override_provider __props__.__dict__["request_payer"] = request_payer __props__.__dict__["server_side_encryption"] = server_side_encryption if source is None and not opts.urn: @@ -1778,6 +1845,7 @@ def get(resource_name: str, object_lock_legal_hold_status: Optional[pulumi.Input[str]] = None, object_lock_mode: Optional[pulumi.Input[str]] = None, object_lock_retain_until_date: Optional[pulumi.Input[str]] = None, + override_provider: Optional[pulumi.Input[Union['ObjectCopyOverrideProviderArgs', 'ObjectCopyOverrideProviderArgsDict']]] = None, request_charged: Optional[pulumi.Input[bool]] = None, request_payer: Optional[pulumi.Input[str]] = None, server_side_encryption: Optional[pulumi.Input[str]] = None, @@ -1893,6 +1961,7 @@ def get(resource_name: str, __props__.__dict__["object_lock_legal_hold_status"] = object_lock_legal_hold_status __props__.__dict__["object_lock_mode"] = object_lock_mode __props__.__dict__["object_lock_retain_until_date"] = object_lock_retain_until_date + __props__.__dict__["override_provider"] = override_provider __props__.__dict__["request_charged"] = request_charged __props__.__dict__["request_payer"] = request_payer __props__.__dict__["server_side_encryption"] = server_side_encryption @@ -2202,6 +2271,11 @@ def object_lock_retain_until_date(self) -> pulumi.Output[str]: """ return pulumi.get(self, "object_lock_retain_until_date") + @property + @pulumi.getter(name="overrideProvider") + def override_provider(self) -> pulumi.Output[Optional['outputs.ObjectCopyOverrideProvider']]: + return pulumi.get(self, "override_provider") + @property @pulumi.getter(name="requestCharged") def request_charged(self) -> pulumi.Output[bool]: diff --git a/sdk/python/pulumi_aws/s3/outputs.py b/sdk/python/pulumi_aws/s3/outputs.py index a05975ab1ad..b73b2ad3f31 100644 --- a/sdk/python/pulumi_aws/s3/outputs.py +++ b/sdk/python/pulumi_aws/s3/outputs.py @@ -138,6 +138,8 @@ 'InventoryFilter', 'InventorySchedule', 'ObjectCopyGrant', + 'ObjectCopyOverrideProvider', + 'ObjectCopyOverrideProviderDefaultTags', ] @pulumi.output_type @@ -6189,3 +6191,58 @@ def uri(self) -> Optional[str]: return pulumi.get(self, "uri") +@pulumi.output_type +class ObjectCopyOverrideProvider(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultTags": + suggest = "default_tags" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ObjectCopyOverrideProvider. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ObjectCopyOverrideProvider.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ObjectCopyOverrideProvider.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_tags: Optional['outputs.ObjectCopyOverrideProviderDefaultTags'] = None): + """ + :param 'ObjectCopyOverrideProviderDefaultTagsArgs' default_tags: Override the provider `default_tags` configuration block. + """ + if default_tags is not None: + pulumi.set(__self__, "default_tags", default_tags) + + @property + @pulumi.getter(name="defaultTags") + def default_tags(self) -> Optional['outputs.ObjectCopyOverrideProviderDefaultTags']: + """ + Override the provider `default_tags` configuration block. + """ + return pulumi.get(self, "default_tags") + + +@pulumi.output_type +class ObjectCopyOverrideProviderDefaultTags(dict): + def __init__(__self__, *, + tags: Optional[Mapping[str, str]] = None): + """ + :param Mapping[str, str] tags: Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def tags(self) -> Optional[Mapping[str, str]]: + """ + Map of tags to assign to the object. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + diff --git a/sdk/python/pulumi_aws/s3tables/table.py b/sdk/python/pulumi_aws/s3tables/table.py index aa833209466..a13719f9e67 100644 --- a/sdk/python/pulumi_aws/s3tables/table.py +++ b/sdk/python/pulumi_aws/s3tables/table.py @@ -413,7 +413,7 @@ def __init__(__self__, table_bucket_arn=example_table_bucket.arn) example = aws.s3tables.Table("example", name="example-table", - namespace=example_namespace, + namespace=example_namespace.namespace, table_bucket_arn=example_namespace.table_bucket_arn, format="ICEBERG") ``` @@ -465,7 +465,7 @@ def __init__(__self__, table_bucket_arn=example_table_bucket.arn) example = aws.s3tables.Table("example", name="example-table", - namespace=example_namespace, + namespace=example_namespace.namespace, table_bucket_arn=example_namespace.table_bucket_arn, format="ICEBERG") ``` diff --git a/sdk/python/pulumi_aws/ssmincidents/get_replication_set.py b/sdk/python/pulumi_aws/ssmincidents/get_replication_set.py index 59564ff8821..d0b193a55c3 100644 --- a/sdk/python/pulumi_aws/ssmincidents/get_replication_set.py +++ b/sdk/python/pulumi_aws/ssmincidents/get_replication_set.py @@ -57,7 +57,7 @@ def __init__(__self__, arn=None, created_by=None, deletion_protected=None, id=No @pulumi.getter def arn(self) -> str: """ - The Amazon Resouce Name (ARN) of the replication set. + The Amazon Resource Name (ARN) of the replication set. """ return pulumi.get(self, "arn") diff --git a/sdk/python/pulumi_aws/ssoadmin/managed_policy_attachment.py b/sdk/python/pulumi_aws/ssoadmin/managed_policy_attachment.py index f28af390025..25a0bed3947 100644 --- a/sdk/python/pulumi_aws/ssoadmin/managed_policy_attachment.py +++ b/sdk/python/pulumi_aws/ssoadmin/managed_policy_attachment.py @@ -189,7 +189,7 @@ def __init__(__self__, identity_store_id=example.identity_store_ids[0], display_name="Admin", description="Admin Group") - account_assignment = aws.ssoadmin.AccountAssignment("account_assignment", + example_account_assignment = aws.ssoadmin.AccountAssignment("example", instance_arn=example.arns[0], permission_set_arn=example_permission_set.arn, principal_id=example_group.group_id, @@ -200,7 +200,7 @@ def __init__(__self__, instance_arn=example.arns[0], managed_policy_arn="arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup", permission_set_arn=example_permission_set.arn, - opts = pulumi.ResourceOptions(depends_on=[example_aws_ssoadmin_account_assignment])) + opts = pulumi.ResourceOptions(depends_on=[example_account_assignment])) ``` ## Import @@ -262,7 +262,7 @@ def __init__(__self__, identity_store_id=example.identity_store_ids[0], display_name="Admin", description="Admin Group") - account_assignment = aws.ssoadmin.AccountAssignment("account_assignment", + example_account_assignment = aws.ssoadmin.AccountAssignment("example", instance_arn=example.arns[0], permission_set_arn=example_permission_set.arn, principal_id=example_group.group_id, @@ -273,7 +273,7 @@ def __init__(__self__, instance_arn=example.arns[0], managed_policy_arn="arn:aws:iam::aws:policy/AlexaForBusinessDeviceSetup", permission_set_arn=example_permission_set.arn, - opts = pulumi.ResourceOptions(depends_on=[example_aws_ssoadmin_account_assignment])) + opts = pulumi.ResourceOptions(depends_on=[example_account_assignment])) ``` ## Import diff --git a/sdk/python/pulumi_aws/transfer/outputs.py b/sdk/python/pulumi_aws/transfer/outputs.py index 9853a5358d2..5dee0de7233 100644 --- a/sdk/python/pulumi_aws/transfer/outputs.py +++ b/sdk/python/pulumi_aws/transfer/outputs.py @@ -2345,7 +2345,7 @@ def __init__(__self__, *, user_secret_id: str): """ :param Sequence[str] trusted_host_keys: List of the public portions of the host keys that are used to identify the servers the connector is connected to. - :param str user_secret_id: Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + :param str user_secret_id: Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. """ pulumi.set(__self__, "trusted_host_keys", trusted_host_keys) pulumi.set(__self__, "user_secret_id", user_secret_id) @@ -2362,7 +2362,7 @@ def trusted_host_keys(self) -> Sequence[str]: @pulumi.getter(name="userSecretId") def user_secret_id(self) -> str: """ - Identifer for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. + Identifier for the secret in AWS Secrets Manager that contains the SFTP user's private key, and/or password. """ return pulumi.get(self, "user_secret_id") diff --git a/sdk/python/pulumi_aws/vpclattice/__init__.py b/sdk/python/pulumi_aws/vpclattice/__init__.py index 8c82947c0f2..b0705ef3b77 100644 --- a/sdk/python/pulumi_aws/vpclattice/__init__.py +++ b/sdk/python/pulumi_aws/vpclattice/__init__.py @@ -14,6 +14,7 @@ from .get_service_network import * from .listener import * from .listener_rule import * +from .resource_gateway import * from .resource_policy import * from .service import * from .service_network import * diff --git a/sdk/python/pulumi_aws/vpclattice/_inputs.py b/sdk/python/pulumi_aws/vpclattice/_inputs.py index 21a58d6784d..2f138b00278 100644 --- a/sdk/python/pulumi_aws/vpclattice/_inputs.py +++ b/sdk/python/pulumi_aws/vpclattice/_inputs.py @@ -43,6 +43,8 @@ 'ListenerRuleMatchHttpMatchPathMatchArgsDict', 'ListenerRuleMatchHttpMatchPathMatchMatchArgs', 'ListenerRuleMatchHttpMatchPathMatchMatchArgsDict', + 'ResourceGatewayTimeoutsArgs', + 'ResourceGatewayTimeoutsArgsDict', 'ServiceDnsEntryArgs', 'ServiceDnsEntryArgsDict', 'ServiceNetworkServiceAssociationDnsEntryArgs', @@ -732,6 +734,78 @@ def prefix(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "prefix", value) +if not MYPY: + class ResourceGatewayTimeoutsArgsDict(TypedDict): + create: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + delete: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + update: NotRequired[pulumi.Input[str]] + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ +elif False: + ResourceGatewayTimeoutsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ResourceGatewayTimeoutsArgs: + def __init__(__self__, *, + create: Optional[pulumi.Input[str]] = None, + delete: Optional[pulumi.Input[str]] = None, + update: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param pulumi.Input[str] delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param pulumi.Input[str] update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @create.setter + def create(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "create", value) + + @property + @pulumi.getter + def delete(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @delete.setter + def delete(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "delete", value) + + @property + @pulumi.getter + def update(self) -> Optional[pulumi.Input[str]]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @update.setter + def update(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "update", value) + + if not MYPY: class ServiceDnsEntryArgsDict(TypedDict): domain_name: NotRequired[pulumi.Input[str]] diff --git a/sdk/python/pulumi_aws/vpclattice/outputs.py b/sdk/python/pulumi_aws/vpclattice/outputs.py index 8e5f46be7ff..02ea10da0f6 100644 --- a/sdk/python/pulumi_aws/vpclattice/outputs.py +++ b/sdk/python/pulumi_aws/vpclattice/outputs.py @@ -30,6 +30,7 @@ 'ListenerRuleMatchHttpMatchHeaderMatchMatch', 'ListenerRuleMatchHttpMatchPathMatch', 'ListenerRuleMatchHttpMatchPathMatchMatch', + 'ResourceGatewayTimeouts', 'ServiceDnsEntry', 'ServiceNetworkServiceAssociationDnsEntry', 'TargetGroupAttachmentTarget', @@ -648,6 +649,49 @@ def prefix(self) -> Optional[str]: return pulumi.get(self, "prefix") +@pulumi.output_type +class ResourceGatewayTimeouts(dict): + def __init__(__self__, *, + create: Optional[str] = None, + delete: Optional[str] = None, + update: Optional[str] = None): + """ + :param str create: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + :param str delete: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + :param str update: A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + if create is not None: + pulumi.set(__self__, "create", create) + if delete is not None: + pulumi.set(__self__, "delete", delete) + if update is not None: + pulumi.set(__self__, "update", update) + + @property + @pulumi.getter + def create(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "create") + + @property + @pulumi.getter + def delete(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. + """ + return pulumi.get(self, "delete") + + @property + @pulumi.getter + def update(self) -> Optional[str]: + """ + A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). + """ + return pulumi.get(self, "update") + + @pulumi.output_type class ServiceDnsEntry(dict): @staticmethod diff --git a/sdk/python/pulumi_aws/vpclattice/resource_gateway.py b/sdk/python/pulumi_aws/vpclattice/resource_gateway.py new file mode 100644 index 00000000000..ffc137676a4 --- /dev/null +++ b/sdk/python/pulumi_aws/vpclattice/resource_gateway.py @@ -0,0 +1,634 @@ +# 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 copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['ResourceGatewayArgs', 'ResourceGateway'] + +@pulumi.input_type +class ResourceGatewayArgs: + def __init__(__self__, *, + subnet_ids: pulumi.Input[Sequence[pulumi.Input[str]]], + vpc_id: pulumi.Input[str], + ip_address_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']] = None): + """ + The set of arguments for constructing a ResourceGateway resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: IDs of the VPC subnets in which to create the resource gateway. + :param pulumi.Input[str] vpc_id: ID of the VPC for the resource gateway. + + The following arguments are optional: + :param pulumi.Input[str] ip_address_type: IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + :param pulumi.Input[str] name: Name of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + pulumi.set(__self__, "subnet_ids", subnet_ids) + pulumi.set(__self__, "vpc_id", vpc_id) + if ip_address_type is not None: + pulumi.set(__self__, "ip_address_type", ip_address_type) + if name is not None: + pulumi.set(__self__, "name", name) + if security_group_ids is not None: + pulumi.set(__self__, "security_group_ids", security_group_ids) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + IDs of the VPC subnets in which to create the resource gateway. + """ + return pulumi.get(self, "subnet_ids") + + @subnet_ids.setter + def subnet_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "subnet_ids", value) + + @property + @pulumi.getter(name="vpcId") + def vpc_id(self) -> pulumi.Input[str]: + """ + ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + return pulumi.get(self, "vpc_id") + + @vpc_id.setter + def vpc_id(self, value: pulumi.Input[str]): + pulumi.set(self, "vpc_id", value) + + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional[pulumi.Input[str]]: + """ + IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + """ + return pulumi.get(self, "ip_address_type") + + @ip_address_type.setter + def ip_address_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ip_address_type", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the resource gateway. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + """ + return pulumi.get(self, "security_group_ids") + + @security_group_ids.setter + def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "security_group_ids", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +@pulumi.input_type +class _ResourceGatewayState: + def __init__(__self__, *, + arn: Optional[pulumi.Input[str]] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None, + subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']] = None, + vpc_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering ResourceGateway resources. + :param pulumi.Input[str] arn: ARN of the resource gateway. + :param pulumi.Input[str] ip_address_type: IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + :param pulumi.Input[str] name: Name of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + :param pulumi.Input[str] status: Status of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: IDs of the VPC subnets in which to create the resource gateway. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + :param pulumi.Input[str] vpc_id: ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + if arn is not None: + pulumi.set(__self__, "arn", arn) + if ip_address_type is not None: + pulumi.set(__self__, "ip_address_type", ip_address_type) + if name is not None: + pulumi.set(__self__, "name", name) + if security_group_ids is not None: + pulumi.set(__self__, "security_group_ids", security_group_ids) + if status is not None: + pulumi.set(__self__, "status", status) + if subnet_ids is not None: + pulumi.set(__self__, "subnet_ids", subnet_ids) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if tags_all is not None: + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + if tags_all is not None: + pulumi.set(__self__, "tags_all", tags_all) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + if vpc_id is not None: + pulumi.set(__self__, "vpc_id", vpc_id) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + ARN of the resource gateway. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional[pulumi.Input[str]]: + """ + IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + """ + return pulumi.get(self, "ip_address_type") + + @ip_address_type.setter + def ip_address_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ip_address_type", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the resource gateway. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + """ + return pulumi.get(self, "security_group_ids") + + @security_group_ids.setter + def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "security_group_ids", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + Status of the resource gateway. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + IDs of the VPC subnets in which to create the resource gateway. + """ + return pulumi.get(self, "subnet_ids") + + @subnet_ids.setter + def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "subnet_ids", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + + @tags_all.setter + def tags_all(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]): + pulumi.set(self, "tags_all", value) + + @property + @pulumi.getter + def timeouts(self) -> Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['ResourceGatewayTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + @property + @pulumi.getter(name="vpcId") + def vpc_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + return pulumi.get(self, "vpc_id") + + @vpc_id.setter + def vpc_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "vpc_id", value) + + +class ResourceGateway(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input[Union['ResourceGatewayTimeoutsArgs', 'ResourceGatewayTimeoutsArgsDict']]] = None, + vpc_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource for managing an AWS VPC Lattice Resource Gateway. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + subnet_ids=[example_aws_subnet["id"]], + tags={ + "Environment": "Example", + }) + ``` + + ### Specifying IP address type + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + subnet_ids=[example_aws_subnet["id"]], + ip_address_type="DUALSTACK", + tags={ + "Environment": "Example", + }) + ``` + + ### With security groups + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + security_group_ids=[test["id"]], + subnet_ids=[example_aws_subnet["id"]]) + ``` + + ## Import + + Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: + + ```sh + $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] ip_address_type: IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + :param pulumi.Input[str] name: Name of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: IDs of the VPC subnets in which to create the resource gateway. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[str] vpc_id: ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ResourceGatewayArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS VPC Lattice Resource Gateway. + + ## Example Usage + + ### Basic Usage + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + subnet_ids=[example_aws_subnet["id"]], + tags={ + "Environment": "Example", + }) + ``` + + ### Specifying IP address type + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + subnet_ids=[example_aws_subnet["id"]], + ip_address_type="DUALSTACK", + tags={ + "Environment": "Example", + }) + ``` + + ### With security groups + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.vpclattice.ResourceGateway("example", + name="Example", + vpc_id=example_aws_vpc["id"], + security_group_ids=[test["id"]], + subnet_ids=[example_aws_subnet["id"]]) + ``` + + ## Import + + Using `pulumi import`, import VPC Lattice Resource Gateway using the `id`. For example: + + ```sh + $ pulumi import aws:vpclattice/resourceGateway:ResourceGateway example rgw-0a1b2c3d4e5f + ``` + + :param str resource_name: The name of the resource. + :param ResourceGatewayArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(ResourceGatewayArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input[Union['ResourceGatewayTimeoutsArgs', 'ResourceGatewayTimeoutsArgsDict']]] = None, + vpc_id: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = ResourceGatewayArgs.__new__(ResourceGatewayArgs) + + __props__.__dict__["ip_address_type"] = ip_address_type + __props__.__dict__["name"] = name + __props__.__dict__["security_group_ids"] = security_group_ids + if subnet_ids is None and not opts.urn: + raise TypeError("Missing required property 'subnet_ids'") + __props__.__dict__["subnet_ids"] = subnet_ids + __props__.__dict__["tags"] = tags + __props__.__dict__["timeouts"] = timeouts + if vpc_id is None and not opts.urn: + raise TypeError("Missing required property 'vpc_id'") + __props__.__dict__["vpc_id"] = vpc_id + __props__.__dict__["arn"] = None + __props__.__dict__["status"] = None + __props__.__dict__["tags_all"] = None + super(ResourceGateway, __self__).__init__( + 'aws:vpclattice/resourceGateway:ResourceGateway', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + arn: Optional[pulumi.Input[str]] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None, + subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + tags_all: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input[Union['ResourceGatewayTimeoutsArgs', 'ResourceGatewayTimeoutsArgsDict']]] = None, + vpc_id: Optional[pulumi.Input[str]] = None) -> 'ResourceGateway': + """ + Get an existing ResourceGateway 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[str] arn: ARN of the resource gateway. + :param pulumi.Input[str] ip_address_type: IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + :param pulumi.Input[str] name: Name of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + :param pulumi.Input[str] status: Status of the resource gateway. + :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: IDs of the VPC subnets in which to create the resource gateway. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags_all: Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + :param pulumi.Input[str] vpc_id: ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _ResourceGatewayState.__new__(_ResourceGatewayState) + + __props__.__dict__["arn"] = arn + __props__.__dict__["ip_address_type"] = ip_address_type + __props__.__dict__["name"] = name + __props__.__dict__["security_group_ids"] = security_group_ids + __props__.__dict__["status"] = status + __props__.__dict__["subnet_ids"] = subnet_ids + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + __props__.__dict__["timeouts"] = timeouts + __props__.__dict__["vpc_id"] = vpc_id + return ResourceGateway(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + ARN of the resource gateway. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> pulumi.Output[str]: + """ + IP address type used by the resource gateway. Valid values are `IPV4`, `IPV6`, and `DUALSTACK`. The IP address type of a resource gateway must be compatible with the subnets of the resource gateway and the IP address type of the resource. + """ + return pulumi.get(self, "ip_address_type") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Name of the resource gateway. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> pulumi.Output[Sequence[str]]: + """ + Security group IDs associated with the resource gateway. The security groups must be in the same VPC. + """ + return pulumi.get(self, "security_group_ids") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + Status of the resource gateway. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> pulumi.Output[Sequence[str]]: + """ + IDs of the VPC subnets in which to create the resource gateway. + """ + return pulumi.get(self, "subnet_ids") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + Key-value mapping of resource tags. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + @_utilities.deprecated("""Please use `tags` instead.""") + def tags_all(self) -> pulumi.Output[Mapping[str, str]]: + """ + Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block. + """ + return pulumi.get(self, "tags_all") + + @property + @pulumi.getter + def timeouts(self) -> pulumi.Output[Optional['outputs.ResourceGatewayTimeouts']]: + return pulumi.get(self, "timeouts") + + @property + @pulumi.getter(name="vpcId") + def vpc_id(self) -> pulumi.Output[str]: + """ + ID of the VPC for the resource gateway. + + The following arguments are optional: + """ + return pulumi.get(self, "vpc_id") + diff --git a/upstream b/upstream index ec6555ce8d4..6b0d5d2f47b 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit ec6555ce8d44ce5661811b3877f10fe9e379bccd +Subproject commit 6b0d5d2f47bd0e42ffc81bcbc0ad30314af840b9