From ed3a6968706a49773c16e724cadd67acfd1c0748 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 17:33:01 -0400 Subject: [PATCH 1/6] Move ./upstream to v5.40.0 --- upstream | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/upstream b/upstream index c7c1bc3e6d8..e3b903a12ac 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit c7c1bc3e6d88d3d47979ba38c7a44c56e6763449 +Subproject commit e3b903a12acba8e16aafeba2a18cb813cd234f75 From c7f5d9dd7c9fdca321ecf2803cccdb8c22094d32 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 17:33:28 -0400 Subject: [PATCH 2/6] Rebase patches and resolve conflicts --- patches/0005-De-deprecate-bucket_object.patch | 10 +++++----- patches/0013-Revert-WAF-schema-changes.patch | 2 +- ...8-Do-not-compute-tags_all-at-TF-level.patch | 10 +++++----- .../0032-Fix-job-queue-sdkv2-migration.patch | 14 +++++++------- ...DisableTagSchemaCheck-for-PF-provider.patch | 4 ++-- ...il-fast-when-PF-resources-are-dropped.patch | 4 ++-- ...ix-tags_all-Computed-for-PF-resources.patch | 10 +++++----- patches/0039-Restore-legacy-bucket.patch | 18 +++++++++--------- 8 files changed, 36 insertions(+), 36 deletions(-) diff --git a/patches/0005-De-deprecate-bucket_object.patch b/patches/0005-De-deprecate-bucket_object.patch index c438a705812..008a4a9b913 100644 --- a/patches/0005-De-deprecate-bucket_object.patch +++ b/patches/0005-De-deprecate-bucket_object.patch @@ -5,11 +5,11 @@ Subject: [PATCH 05/46] De-deprecate bucket_object diff --git a/internal/service/s3/bucket_object.go b/internal/service/s3/bucket_object.go -index d562dbed71..89cf387654 100644 +index fe0d296ce8..3a99e36393 100644 --- a/internal/service/s3/bucket_object.go +++ b/internal/service/s3/bucket_object.go -@@ -63,7 +63,7 @@ func resourceBucketObject() *schema.Resource { - ValidateDiagFunc: enum.Validate[types.ObjectCannedACL](), +@@ -67,7 +67,7 @@ func resourceBucketObject() *schema.Resource { + Computed: true, }, "bucket": { - Deprecated: "Use the aws_s3_object resource instead", @@ -17,7 +17,7 @@ index d562dbed71..89cf387654 100644 Type: schema.TypeString, Required: true, ForceNew: true, -@@ -120,7 +120,7 @@ func resourceBucketObject() *schema.Resource { +@@ -124,7 +124,7 @@ func resourceBucketObject() *schema.Resource { Default: false, }, "key": { @@ -26,7 +26,7 @@ index d562dbed71..89cf387654 100644 Type: schema.TypeString, Required: true, ForceNew: true, -@@ -193,7 +193,9 @@ func resourceBucketObject() *schema.Resource { +@@ -197,7 +197,9 @@ func resourceBucketObject() *schema.Resource { }, }, diff --git a/patches/0013-Revert-WAF-schema-changes.patch b/patches/0013-Revert-WAF-schema-changes.patch index 83731cc3e0d..5d550eaead9 100644 --- a/patches/0013-Revert-WAF-schema-changes.patch +++ b/patches/0013-Revert-WAF-schema-changes.patch @@ -6,7 +6,7 @@ Subject: [PATCH 13/46] 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 285dfa548a..146b8d7ef1 100644 +index 129dd5b5cc..011ebdeeeb 100644 --- a/internal/service/wafv2/schemas.go +++ b/internal/service/wafv2/schemas.go @@ -52,14 +52,14 @@ func ruleGroupRootStatementSchema(level int) *schema.Schema { diff --git a/patches/0028-Do-not-compute-tags_all-at-TF-level.patch b/patches/0028-Do-not-compute-tags_all-at-TF-level.patch index df19027e58f..c143427ab87 100644 --- a/patches/0028-Do-not-compute-tags_all-at-TF-level.patch +++ b/patches/0028-Do-not-compute-tags_all-at-TF-level.patch @@ -22,10 +22,10 @@ index d1c4c7d1ab..3e51e53f87 100644 if request.Plan.Raw.IsNull() { return diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index 963d905424..be3bc32ec2 100644 +index 027b39dd43..07c0c9ce31 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go -@@ -425,8 +425,8 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { +@@ -430,8 +430,8 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { continue } if v, ok := schemaResponse.Schema.Attributes[names.AttrTagsAll]; ok { @@ -89,10 +89,10 @@ index 942630acae..45b72fc158 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 504a6f5ac3..955cfb4816 100644 +index 728e0ffa3c..67e2411288 100644 --- a/internal/service/batch/job_queue.go +++ b/internal/service/batch/job_queue.go -@@ -96,7 +96,7 @@ func (r *resourceJobQueue) Schema(ctx context.Context, request resource.SchemaRe +@@ -109,7 +109,7 @@ func (r *resourceJobQueue) Schema(ctx context.Context, request resource.SchemaRe }, }, names.AttrTags: tftags.TagsAttribute(), @@ -102,7 +102,7 @@ index 504a6f5ac3..955cfb4816 100644 } diff --git a/internal/service/batch/job_queue_schema.go b/internal/service/batch/job_queue_schema.go -index bd19814922..45c6b8cadc 100644 +index 8b11271ab7..0ded1f6052 100644 --- a/internal/service/batch/job_queue_schema.go +++ b/internal/service/batch/job_queue_schema.go @@ -58,7 +58,7 @@ func jobQueueSchema0(ctx context.Context) schema.Schema { diff --git a/patches/0032-Fix-job-queue-sdkv2-migration.patch b/patches/0032-Fix-job-queue-sdkv2-migration.patch index b20e31e2ddd..348e7a8a229 100644 --- a/patches/0032-Fix-job-queue-sdkv2-migration.patch +++ b/patches/0032-Fix-job-queue-sdkv2-migration.patch @@ -5,14 +5,14 @@ Subject: [PATCH 32/46] Fix job queue sdkv2 migration diff --git a/internal/service/batch/job_queue_schema.go b/internal/service/batch/job_queue_schema.go -index 45c6b8cadc..11cf093ece 100644 +index 0ded1f6052..90de7f202f 100644 --- a/internal/service/batch/job_queue_schema.go +++ b/internal/service/batch/job_queue_schema.go -@@ -92,6 +92,7 @@ func upgradeJobQueueResourceStateV0toV1(ctx context.Context, req resource.Upgrad - } +@@ -93,6 +93,7 @@ func upgradeJobQueueResourceStateV0toV1(ctx context.Context, req resource.Upgrad + ceo := fwtypes.NewListNestedObjectValueOfNull[computeEnvironmentOrder](ctx) jobQueueDataV2 := resourceJobQueueData{ -+ ARN: jobQueueDataV0.ARN, - ComputeEnvironments: jobQueueDataV0.ComputeEnvironments, - ID: jobQueueDataV0.ID, - Name: jobQueueDataV0.Name, ++ ARN: jobQueueDataV0.ARN, + ComputeEnvironments: jobQueueDataV0.ComputeEnvironments, + ComputeEnvironmentOrder: ceo, + ID: jobQueueDataV0.ID, diff --git a/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch b/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch index e135787a77f..e4df3ef4beb 100644 --- a/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch +++ b/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch @@ -5,10 +5,10 @@ Subject: [PATCH 33/46] DisableTagSchemaCheck for PF provider diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index be3bc32ec2..3af242e72b 100644 +index 07c0c9ce31..d4226ab980 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go -@@ -412,8 +412,7 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { +@@ -417,8 +417,7 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { if v.Tags != nil { // The resource has opted in to transparent tagging. // Ensure that the schema look OK. diff --git a/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch b/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch index cb23124543d..136cc737b1a 100644 --- a/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch +++ b/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch @@ -5,10 +5,10 @@ Subject: [PATCH 35/46] Fail fast when PF resources are dropped diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go -index 3af242e72b..bea9b2541f 100644 +index d4226ab980..0da16366c0 100644 --- a/internal/provider/fwprovider/provider.go +++ b/internal/provider/fwprovider/provider.go -@@ -443,9 +443,7 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { +@@ -448,9 +448,7 @@ func (p *fwprovider) Resources(ctx context.Context) []func() resource.Resource { } if err := errors.Join(errs...); err != nil { diff --git a/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch index 0d2b6058281..a8add7ad1ee 100644 --- a/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch @@ -44,10 +44,10 @@ index 130998fa1b..dadc35736d 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 1ea07b398e..54d8d5b5d7 100644 +index 25d88eb72d..ac51f127f4 100644 --- a/internal/service/elasticache/serverless_cache.go +++ b/internal/service/elasticache/serverless_cache.go -@@ -176,7 +176,7 @@ func (r *resourceServerlessCache) Schema(ctx context.Context, request resource.S +@@ -178,7 +178,7 @@ func (r *serverlessCacheResource) Schema(ctx context.Context, request resource.S }, }, names.AttrTags: tftags.TagsAttribute(), @@ -70,10 +70,10 @@ index 11242d1636..ea24792626 100644 } diff --git a/internal/service/securityhub/automation_rule.go b/internal/service/securityhub/automation_rule.go -index a2ceb7000f..62014cc5c5 100644 +index b60ec79697..add8d30c09 100644 --- a/internal/service/securityhub/automation_rule.go +++ b/internal/service/securityhub/automation_rule.go -@@ -74,7 +74,7 @@ func (r *automationRuleResource) Schema(ctx context.Context, request resource.Sc +@@ -75,7 +75,7 @@ func (r *automationRuleResource) Schema(ctx context.Context, request resource.Sc }, }, names.AttrTags: tftags.TagsAttribute(), @@ -96,7 +96,7 @@ index f74c1b2850..3a95d706f4 100644 Blocks: map[string]schema.Block{ "configuration": schema.ListNestedBlock{ diff --git a/internal/service/ssmcontacts/rotation.go b/internal/service/ssmcontacts/rotation.go -index c34658efc5..86f0437728 100644 +index b515434073..f4bc4a8514 100644 --- a/internal/service/ssmcontacts/rotation.go +++ b/internal/service/ssmcontacts/rotation.go @@ -70,7 +70,7 @@ func (r *resourceRotation) Schema(ctx context.Context, request resource.SchemaRe diff --git a/patches/0039-Restore-legacy-bucket.patch b/patches/0039-Restore-legacy-bucket.patch index ec2ccc4dbc2..ed14f85e54f 100644 --- a/patches/0039-Restore-legacy-bucket.patch +++ b/patches/0039-Restore-legacy-bucket.patch @@ -5,10 +5,10 @@ Subject: [PATCH 39/46] Restore legacy bucket diff --git a/go.mod b/go.mod -index 8238e7bf4d..e95b21343a 100644 +index 0b42b862f2..348ea0276e 100644 --- a/go.mod +++ b/go.mod -@@ -150,6 +150,7 @@ require ( +@@ -151,6 +151,7 @@ require ( github.com/gertd/go-pluralize v0.2.1 github.com/google/go-cmp v0.6.0 github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.21.0 @@ -17,7 +17,7 @@ index 8238e7bf4d..e95b21343a 100644 github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.49 github.com/hashicorp/awspolicyequivalence v1.6.0 diff --git a/go.sum b/go.sum -index fbff7d6716..02abbcc288 100644 +index 05283e819b..3c2ca85f47 100644 --- a/go.sum +++ b/go.sum @@ -22,6 +22,7 @@ github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew @@ -25,10 +25,10 @@ index fbff7d6716..02abbcc288 100644 github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/aws/aws-sdk-go v1.31.9/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= - github.com/aws/aws-sdk-go v1.50.29 h1:Ol2FYzesF2tsQrgVSnDWRFI60+FsSqKKdt7MLlZKubc= - github.com/aws/aws-sdk-go v1.50.29/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= + github.com/aws/aws-sdk-go v1.50.33 h1:/SKPJ7ZVPCFOYZyTKo5YdjeUEeOn2J2M0qfDTXWAoEU= + github.com/aws/aws-sdk-go v1.50.33/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/aws/aws-sdk-go-v2 v1.25.2 h1:/uiG1avJRgLGiQM9X3qJM8+Qa6KRGK5rRPuXE0HUM+w= -@@ -367,6 +368,7 @@ github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= +@@ -371,6 +372,7 @@ github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= @@ -36,7 +36,7 @@ index fbff7d6716..02abbcc288 100644 github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg= github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= -@@ -386,6 +388,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +@@ -390,6 +392,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.21.0 h1:IUypt/TbXiJBkBbE3926CgnjD8IltAitdn7Yive61DY= github.com/hashicorp/aws-cloudformation-resource-schema-sdk-go v0.21.0/go.mod h1:cdTE6F2pCKQobug+RqRaQp7Kz9hIEqiSvpPmb6E5G1w= @@ -45,7 +45,7 @@ index fbff7d6716..02abbcc288 100644 github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.48 h1:ZPaCJH4o3BBeOB7w3UvREzjPuV4eBWYFEjD/ASPnnJ8= github.com/hashicorp/aws-sdk-go-base/v2 v2.0.0-beta.48/go.mod h1:3FrgFmze7QYSCeUytmMUBFL7axlBBJv/GsZOaCiWn8A= github.com/hashicorp/aws-sdk-go-base/v2/awsv1shim/v2 v2.0.0-beta.49 h1:BtuFKfdi40fQwGQPDCd5PhEOF4CEf6nAce9g8EbtQ+U= -@@ -459,6 +463,7 @@ github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i +@@ -465,6 +469,7 @@ github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jhump/protoreflect v1.15.1 h1:HUMERORf3I3ZdX05WaQ6MIpd/NJ434hTp5YiKgfCL6c= github.com/jhump/protoreflect v1.15.1/go.mod h1:jD/2GMKKE6OqX8qTjhADU1e6DShO+gavG9e0Q693nKo= @@ -53,7 +53,7 @@ index fbff7d6716..02abbcc288 100644 github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= -@@ -573,6 +578,7 @@ golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= +@@ -579,6 +584,7 @@ golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= From e287f99cd15a577467597de8c090595827b02674 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 17:46:09 -0400 Subject: [PATCH 3/6] Update pulumi/terraform-plugin-framework reference --- examples/go.mod | 55 ++++++++++++------------ examples/go.sum | 109 ++++++++++++++++++++++++++---------------------- provider/go.mod | 59 +++++++++++++------------- provider/go.sum | 109 ++++++++++++++++++++++++++---------------------- 4 files changed, 178 insertions(+), 154 deletions(-) diff --git a/examples/go.mod b/examples/go.mod index 30502bd8d82..88530bf8eb4 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -3,7 +3,7 @@ module github.com/pulumi/pulumi-aws/examples/v6 go 1.21.0 require ( - github.com/aws/aws-sdk-go v1.50.29 + github.com/aws/aws-sdk-go v1.50.33 github.com/pulumi/providertest v0.0.11 github.com/pulumi/pulumi-aws/provider/v6 v6.0.0-00010101000000-000000000000 github.com/pulumi/pulumi-terraform-bridge/pf v0.30.1-0.20240311191722-54802d5b003c @@ -54,15 +54,15 @@ require ( github.com/atotto/clipboard v0.1.4 // indirect github.com/aws/aws-sdk-go-v2 v1.25.2 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 // indirect - github.com/aws/aws-sdk-go-v2/config v1.27.4 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.4 // indirect + github.com/aws/aws-sdk-go-v2/config v1.27.6 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.6 // indirect github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.2 // indirect - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6 // indirect + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8 // indirect github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2 // indirect github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.2 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2 // indirect - github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2 // indirect github.com/aws/aws-sdk-go-v2/service/account v1.16.1 // indirect github.com/aws/aws-sdk-go-v2/service/acm v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/amp v1.25.1 // indirect @@ -105,14 +105,16 @@ require ( github.com/aws/aws-sdk-go-v2/service/controltower v1.13.1 // indirect github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1 // indirect github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1 // indirect + github.com/aws/aws-sdk-go-v2/service/dax v1.19.1 // indirect github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1 // indirect github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0 // indirect - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1 // indirect + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4 // indirect github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1 // indirect github.com/aws/aws-sdk-go-v2/service/ecs v1.41.1 // indirect github.com/aws/aws-sdk-go-v2/service/eks v1.41.0 // indirect github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1 // indirect github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1 // indirect github.com/aws/aws-sdk-go-v2/service/emr v1.39.1 // indirect github.com/aws/aws-sdk-go-v2/service/emrserverless v1.17.2 // indirect @@ -127,9 +129,9 @@ require ( github.com/aws/aws-sdk-go-v2/service/identitystore v1.23.1 // indirect github.com/aws/aws-sdk-go-v2/service/inspector2 v1.24.1 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4 // indirect github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2 // indirect github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.12.1 // indirect github.com/aws/aws-sdk-go-v2/service/ivschat v1.12.1 // indirect @@ -151,19 +153,19 @@ require ( github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.9.1 // indirect github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1 // indirect github.com/aws/aws-sdk-go-v2/service/mq v1.22.1 // indirect - github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2 // indirect github.com/aws/aws-sdk-go-v2/service/oam v1.9.1 // indirect github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.11.1 // indirect github.com/aws/aws-sdk-go-v2/service/osis v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1 // indirect github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/polly v1.39.1 // indirect + github.com/aws/aws-sdk-go-v2/service/polly v1.39.3 // indirect github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1 // indirect github.com/aws/aws-sdk-go-v2/service/qbusiness v1.4.1 // indirect github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1 // indirect github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1 // indirect - github.com/aws/aws-sdk-go-v2/service/rds v1.74.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1 // indirect + github.com/aws/aws-sdk-go-v2/service/rds v1.75.0 // indirect + github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2 // indirect github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.17.1 // indirect github.com/aws/aws-sdk-go-v2/service/rekognition v1.39.1 // indirect @@ -172,7 +174,7 @@ require ( github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.21.1 // indirect github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1 // indirect - github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1 // indirect + github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3 // indirect github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1 // indirect github.com/aws/aws-sdk-go-v2/service/scheduler v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.28.1 // indirect @@ -180,7 +182,7 @@ require ( github.com/aws/aws-sdk-go-v2/service/securitylake v1.13.0 // indirect github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1 // indirect github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0 // indirect github.com/aws/aws-sdk-go-v2/service/shield v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/signer v1.22.1 // indirect github.com/aws/aws-sdk-go-v2/service/sns v1.29.1 // indirect @@ -192,13 +194,13 @@ require ( github.com/aws/aws-sdk-go-v2/service/sso v1.20.1 // indirect github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.28.3 // indirect github.com/aws/aws-sdk-go-v2/service/swf v1.22.1 // indirect github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2 // indirect github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1 // indirect github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1 // indirect - github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1 // indirect + github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0 // indirect github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1 // indirect github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.29.1 // indirect github.com/aws/aws-sdk-go-v2/service/workspaces v1.38.1 // indirect @@ -255,7 +257,7 @@ require ( github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637 // indirect - github.com/hashicorp/go-hclog v1.5.0 // indirect + github.com/hashicorp/go-hclog v1.6.2 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/hashicorp/go-plugin v1.6.0 // indirect @@ -270,19 +272,20 @@ require ( github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hc-install v0.6.3 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/hcl/v2 v2.19.1 // indirect + github.com/hashicorp/hcl/v2 v2.20.0 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-exec v0.20.0 // indirect github.com/hashicorp/terraform-json v0.21.0 // indirect github.com/hashicorp/terraform-plugin-framework v1.6.1 // indirect github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect + github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0 // indirect github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 // indirect github.com/hashicorp/terraform-plugin-go v0.22.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-plugin-mux v0.15.0 // indirect github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 // indirect - github.com/hashicorp/terraform-plugin-testing v1.6.0 // indirect + github.com/hashicorp/terraform-plugin-testing v1.7.0 // indirect github.com/hashicorp/terraform-provider-aws v1.60.1-0.20220923175450-ca71523cdc36 // indirect github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect @@ -356,7 +359,7 @@ require ( github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect - github.com/zclconf/go-cty v1.14.2 // indirect + github.com/zclconf/go-cty v1.14.3 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.48.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect @@ -367,14 +370,14 @@ require ( go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.36.0 // indirect gocloud.dev/secrets/hashivault v0.27.0 // indirect - golang.org/x/crypto v0.20.0 // indirect + golang.org/x/crypto v0.21.0 // indirect golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect golang.org/x/mod v0.15.0 // indirect golang.org/x/net v0.21.0 // indirect golang.org/x/oauth2 v0.16.0 // indirect golang.org/x/sync v0.6.0 // indirect - golang.org/x/sys v0.17.0 // indirect - golang.org/x/term v0.17.0 // indirect + golang.org/x/sys v0.18.0 // indirect + golang.org/x/term v0.18.0 // indirect golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.5.0 // indirect golang.org/x/tools v0.15.0 // indirect diff --git a/examples/go.sum b/examples/go.sum index 92cda565535..74cf28597a1 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -820,8 +820,8 @@ github.com/aws/aws-sdk-go v1.43.11/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4 github.com/aws/aws-sdk-go v1.43.31/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.45/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.68/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= -github.com/aws/aws-sdk-go v1.50.29 h1:Ol2FYzesF2tsQrgVSnDWRFI60+FsSqKKdt7MLlZKubc= -github.com/aws/aws-sdk-go v1.50.29/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.50.33 h1:/SKPJ7ZVPCFOYZyTKo5YdjeUEeOn2J2M0qfDTXWAoEU= +github.com/aws/aws-sdk-go v1.50.33/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= github.com/aws/aws-sdk-go-v2 v1.16.8/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw= github.com/aws/aws-sdk-go-v2 v1.25.2 h1:/uiG1avJRgLGiQM9X3qJM8+Qa6KRGK5rRPuXE0HUM+w= @@ -830,17 +830,17 @@ github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3/go.mod h1:gNsR5CaXK github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 h1:gTK2uhtAPtFcdRRJilZPx8uJLL2J85xK11nKtWL0wfU= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1/go.mod h1:sxpLb+nZk7tIfCWChfd+h4QwHNUR57d8hA1cleTkjJo= github.com/aws/aws-sdk-go-v2/config v1.15.15/go.mod h1:A1Lzyy/o21I5/s2FbyX5AevQfSVXpvvIDCoVFD0BC4E= -github.com/aws/aws-sdk-go-v2/config v1.27.4 h1:AhfWb5ZwimdsYTgP7Od8E9L1u4sKmDW2ZVeLcf2O42M= -github.com/aws/aws-sdk-go-v2/config v1.27.4/go.mod h1:zq2FFXK3A416kiukwpsd+rD4ny6JC7QSkp4QdN1Mp2g= +github.com/aws/aws-sdk-go-v2/config v1.27.6 h1:WmoH1aPrxwcqAZTTnETjKr+fuvqzKd4hRrKxQUiuKP4= +github.com/aws/aws-sdk-go-v2/config v1.27.6/go.mod h1:W9RZFF2pL+OhnUSZsQS/eDMWD8v+R+yWgjj3nSlrXVU= github.com/aws/aws-sdk-go-v2/credentials v1.12.10/go.mod h1:g5eIM5XRs/OzIIK81QMBl+dAuDyoLN0VYaLP+tBqEOk= -github.com/aws/aws-sdk-go-v2/credentials v1.17.4 h1:h5Vztbd8qLppiPwX+y0Q6WiwMZgpd9keKe2EAENgAuI= -github.com/aws/aws-sdk-go-v2/credentials v1.17.4/go.mod h1:+30tpwrkOgvkJL1rUZuRLoxcJwtI/OkeBLYnHxJtVe0= +github.com/aws/aws-sdk-go-v2/credentials v1.17.6 h1:akhj/nSC6SEx3OmiYGG/7mAyXMem9ZNVVf+DXkikcTk= +github.com/aws/aws-sdk-go-v2/credentials v1.17.6/go.mod h1:chJZuJ7TkW4kiMwmldOJOEueBoSkUb4ynZS1d9dhygo= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9/go.mod h1:KDCCm4ONIdHtUloDcFvK2+vshZvx4Zmj7UMDfusuz5s= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.2 h1:AK0J8iYBFeUk2Ax7O8YpLtFsfhdOByh2QIkHmigpRYk= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.2/go.mod h1:iRlGzMix0SExQEviAyptRWRGdYNo3+ufW/lCzvKVTUc= github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21/go.mod h1:iIYPrQ2rYfZiB/iADYlhj9HHZ9TTi6PqKQPAqygohbE= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6 h1:prcsGA3onmpc7ea1W/m+SMj4uOn5vZ63uJp805UhJJs= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6/go.mod h1:7eQrvATnVFDY0WfMYhfKkSQ1YtZlClT71fAAlsA1s34= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8 h1:fjsaZ2EUoOaosuYMLbQAVJsPIAOV4Xn52AQmk5JbhAs= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8/go.mod h1:WPJcs0Mze3WntafH9Df2NdJ1oSQkEQVL6piZxoS0ecY= github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.15/go.mod h1:pWrr2OoHlT7M/Pd2y4HV3gJyPb3qj5qMmnPkKSNPYK4= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2 h1:bNo4LagzUKbjdxE0tIcR9pMzLR2U/Tgie1Hq1HQ3iH8= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2/go.mod h1:wRQv0nN6v9wDXuWThpovGQjqF1HFdcgWjporw14lS8k= @@ -853,8 +853,8 @@ github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpV github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6/go.mod h1:O7Oc4peGZDEKlddivslfYFvAbgzvl/GH3J8j3JIGBXc= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2 h1:en92G0Z7xlksoOylkUhuBSfJgijC7rHVLRdnIlHEs0E= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2/go.mod h1:HgtQ/wN5G+8QSlK62lbOtNwQ3wTSByJ4wH2rCkPt+AE= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1 h1:KUfELMh/cv1EbJn9LPugQ4xQpEwtsmjZ3CzFcoZJZ0k= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1/go.mod h1:bObB1vkC3I30/+iJ9yO7P8p6hKYojMexupSgShfSEAY= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2 h1:OXFlvBkTmGvPIUaYgWc48gZsxovlLJapQMGwoQP25r8= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2/go.mod h1:bObB1vkC3I30/+iJ9yO7P8p6hKYojMexupSgShfSEAY= github.com/aws/aws-sdk-go-v2/service/account v1.16.1 h1:30tnG69DcbS28/Ou5Yrl5CX0qf0bvj9rUm60lY/nhWI= github.com/aws/aws-sdk-go-v2/service/account v1.16.1/go.mod h1:UoL7hPHV8/7A9j6+SbRk12Ea8T5MQyEKu5gtdZxFpW8= github.com/aws/aws-sdk-go-v2/service/acm v1.25.1 h1:PwTzrPPB/L3vasKiNwmTpprzWEaHItCCdK7MJZf+jlE= @@ -939,14 +939,16 @@ github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1 h1:CBh0CI9D73QnG github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1/go.mod h1:zwMr7HbCFo7yMDo3HtrAKj7LLW942cc3/wV559Mhx9M= github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1 h1:fuoX8H3zlFFbXvuDG0/jBoE4HcrbBTANgYzmpNLEs6s= github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1/go.mod h1:4NqexR3UzSSCVJYyxqkEeWvGuHcSudqwdnzJCCC+NvQ= +github.com/aws/aws-sdk-go-v2/service/dax v1.19.1 h1:m3o6QYXv4zFXTTbSPlMGhGyrJySmGg5ejbrAA9NRrcI= +github.com/aws/aws-sdk-go-v2/service/dax v1.19.1/go.mod h1:QJzqcWGkvfcpDWQI7S0MkQuESisgPaoVRaONToDvwyo= github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1 h1:4zKDWmYwlhvwY0r0n++ZJkyHjW4y+ESPSjnJ0iuDGSU= github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1/go.mod h1:q89pJPdvEFMk5PbnXO4wA/grZlmtYhHNwXnIbH0zQLA= github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0 h1:m0cG+eVPpCD9RGkx+K3973fddPNqqeyn/cjHhdF9SJc= github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0/go.mod h1:ss968JYRABS5c+BJOznD+NNLh9e0gSwiZFEtI5AqgXk= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1 h1:haLXE5R07oaq/UnvSyE43V4jp9gA2XRMYcxkFYHEpdU= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1/go.mod h1:mM51J0CILKQjqIawPDM4g6E1nyxdlvk/qaCDyJkx0II= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1 h1:OGZUMBYZnz+R5nkW6FS1J8UlfLeM/pKojck+74+ZQGY= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1/go.mod h1:XxJNg7fIkR8cbm89i0zVZSxKpcPYsC8BWRwMIJOWbnk= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3 h1:redziOZeT6YVgJfTS3c/dIG0KDbT+x4eAsAKuCHro+s= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3/go.mod h1:BzzW6QegtSMnC1BhD+lagiUDSRYjRTOhXAb1mLfEaMg= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4 h1:CGKvG+I3Qxly4jkKm3OCEeVNqcH6xUJ0NCGoqjytoGY= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4/go.mod h1:XvYGmTpdybgh+aNRfm+XbnaJdjWXxPXvRPlp7YpTs1A= github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1 h1:GFt/4yMrCuMDi4YzKy0HCW9NhwbxoYZUMqIWqWJFsqE= github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1/go.mod h1:ydHfHlVpaydWdStDKNcV6BnI0fD+ZwlPWvDgVG2fLt0= github.com/aws/aws-sdk-go-v2/service/ecs v1.41.1 h1:h1oi77d7nGeM7DvResjebSnhdBVJZefd/eCT+DGjhY4= @@ -955,6 +957,8 @@ github.com/aws/aws-sdk-go-v2/service/eks v1.41.0 h1:/bitqsA6wgIS2vgjtHJi1JG3SOTb github.com/aws/aws-sdk-go-v2/service/eks v1.41.0/go.mod h1:GFqWNwDLyuSevADun69Dg5aurANpv8KNrz2vxYPEqmw= github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1 h1:f1Oc1hr92u+KPw0um3qdZvFOS8rdwUXmvWcOkzzNIbo= github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1/go.mod h1:M4h0TpSwm0tJ9Pj7+OOn19/9Zy6jwXfr3cXSv6dvIpU= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1 h1:C8WyakcSzm9pfNmv/nbBZmkKEyRwQKMZft2jVmkGTGY= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1/go.mod h1:XGovJTsyRNnDERieCR/odSntl/VTyevWg2+8trOc4gI= github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1 h1:eDD7nyDlMxlkGhWu0n92LYkuSQIIEwN5CffwiMDohh0= github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1/go.mod h1:DGUI2cbxu24m0rNOm7DDmrCtTzR0U0FqE3XpBkR8+r8= github.com/aws/aws-sdk-go-v2/service/emr v1.39.1 h1:6mNb+DpB7tRXRkkyF+uD0Va57nDR1O3UnSa1wHtMg2Q= @@ -985,13 +989,13 @@ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3/go.mod h1:g github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 h1:EyBZibRTVAs6ECHZOw5/wlylS9OcTzwyjeQMudmREjE= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1/go.mod h1:JKpmtYhhPs7D97NL/ltqz7yCkERFW5dOlHyVl66ZYF8= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10/go.mod h1:Qks+dxK3O+Z2deAhNo6cJ8ls1bam3tUGUAcgxQP1c70= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2 h1:zSdTXYLwuXDNPUS+V41i1SFDXG7V0ITp0D9UT9Cvl18= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2/go.mod h1:v8m8k+qVy95nYi7d56uP1QImleIIY25BPiNJYzPBdFE= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2 h1:3tS2g6P3N+Wz64e9aNx7X4BCWN/gT9MUvIuv5l2eoho= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2/go.mod h1:1Pf5vPqk8t9pdYB3dmUMRE/0m8u0IHHg8ESSiutJd0I= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4 h1:J3Q6N2sTChfYLZSTey3Qeo7n3JSm6RTJDcKev+7Sbus= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4/go.mod h1:ZopsdDMVg1H03X7BdzpGaufOkuz27RjtKDzioP2U0Hg= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3 h1:/MpYoYvgshlGMFmSyfzGWf6HKoEo/DrKBoHxXR3vh+U= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3/go.mod h1:1Pf5vPqk8t9pdYB3dmUMRE/0m8u0IHHg8ESSiutJd0I= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9/go.mod h1:yQowTpvdZkFVuHrLBXmczat4W+WJKg/PafBZnGBLga0= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2 h1:5ffmXjPtwRExp1zc7gENLgCPyHFbhEPwVTkTiH9niSk= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2/go.mod h1:Ru7vg1iQ7cR4i7SZ/JTLYN9kaXtbL69UdgG0OQWQxW0= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4 h1:jRiWxyuVO8PlkN72wDMVn/haVH4SDCBkUt0Lf/dxd7s= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4/go.mod h1:Ru7vg1iQ7cR4i7SZ/JTLYN9kaXtbL69UdgG0OQWQxW0= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9/go.mod h1:Rc5+wn2k8gFSi3V1Ch4mhxOzjMh+bYSXVFfVaqowQOY= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2 h1:1oY1AVEisRI4HNuFoLdRUB0hC63ylDAN6Me3MrfclEg= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2/go.mod h1:KZ03VgvZwSjkT7fOetQ/wF3MZUvYFirlI1H5NklUNsY= @@ -1036,8 +1040,8 @@ github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1 h1:pHi6LikWSuNxlfhiF7w4j github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1/go.mod h1:1VTLJoiDMhc9gnf8WT1FmFsx1SH1hgQOSxgh+yvHGM0= github.com/aws/aws-sdk-go-v2/service/mq v1.22.1 h1:xEHSeR2ko/pBnXd2h9VfaCbWdR3YGIwoaOQxUqgxytA= github.com/aws/aws-sdk-go-v2/service/mq v1.22.1/go.mod h1:TiZfMUSUUYd+1GyvUNeLfVHCBHe2CmW/F7SeLIBDM2o= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1 h1:VUx+TQGQV5UQ/vbRO34lsmoDaRyRKx+K197RIxemSo4= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1/go.mod h1:xwdLYNtyblfXu5dZEp5m44cHgKPXhDSzTika+nF0M5M= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2 h1:U0qjiY/D7EskLCMFb84wyrInwVqw62at1+YXdS0VWfY= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2/go.mod h1:xwdLYNtyblfXu5dZEp5m44cHgKPXhDSzTika+nF0M5M= github.com/aws/aws-sdk-go-v2/service/oam v1.9.1 h1:uMcyjgz7wN4Z1pMtoRGm/5eiOHVrKWnWDZQ2cH2e7vE= github.com/aws/aws-sdk-go-v2/service/oam v1.9.1/go.mod h1:HQzeDvFZX5kza9wVaVVpyILgf1YE7/V/uyIICDI1p4Y= github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.11.1 h1:it1xeN5Unxm1yWPWtkFWQmCtDnJNN9LBr9LXI774ZFY= @@ -1048,8 +1052,8 @@ github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1 h1:3xjnMZNuLN6jTf/AOu github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1/go.mod h1:hISA8L4B2e1OtS/QhNMJHu79zTZJINYjSMKoVYXeS/g= github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1 h1:olGuN8lvMgPGE00bb/fem6xqjrzQ40dFhtIAF8JkfM4= github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1/go.mod h1:ACXvNNRlZ2Rc3/nqNDIY27rejsTm/9pyzCCe4d3Q44I= -github.com/aws/aws-sdk-go-v2/service/polly v1.39.1 h1:jLtzeXpI1pcSs0pd/N45T/69z2+e63HOZXxb1i4ZSuU= -github.com/aws/aws-sdk-go-v2/service/polly v1.39.1/go.mod h1:aoUvJrNGsAxJ4Yb5X7z7unp1MKZZuKcmokXwTWnnp3I= +github.com/aws/aws-sdk-go-v2/service/polly v1.39.3 h1:BlTOO9BcFmz5tz4edh7DvGuqQ7vH/7EFhC3JAXkAHMo= +github.com/aws/aws-sdk-go-v2/service/polly v1.39.3/go.mod h1:FxI08D7GT4RdciJDt4lgHONQybSGQHQvyGatbyszSWE= github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1 h1:EjEPWNlxiv1tZcAoXdNrYRSMH2Yr7S2bXtmah4VAtJA= github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1/go.mod h1:lgOeacBY+VEy+JpZu+GXawMFtmsHWircfZsNP3H5lEM= github.com/aws/aws-sdk-go-v2/service/qbusiness v1.4.1 h1:1kPxANy45Wk4mlfKTAqZHBFFKwPfTAFnIOHZDoWnluE= @@ -1058,10 +1062,10 @@ github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1 h1:8OWFwEjuA+HoNE5dMOT9XasQXAs github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1/go.mod h1:A58iKuKoJOym8KOUcCLx2koMxqUtVZ1Vm+kPu3daUPM= github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1 h1:VzDztKtis2k5aTmRMHTWQRZXepEMsQyzfnohlo6ANgU= github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1/go.mod h1:suUdD910DMRQAMY7+qhk5RUp+SIT7VYrzHIo1tX8D6Y= -github.com/aws/aws-sdk-go-v2/service/rds v1.74.0 h1:gkhHVZ7DUu6I6tIezOMqcBHCq9iiYqNXL5avh0qmxP0= -github.com/aws/aws-sdk-go-v2/service/rds v1.74.0/go.mod h1:VwhpZOXYa/PPsZgcGpXFNe5bdL4Rlcv+1Z7nGKX8MVI= -github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1 h1:y5IwD4qVQCveSEcWqMCc8F6ZNb3NxZ/O3IsfZyeaWSQ= -github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1/go.mod h1:lX3VXhDDYQEydE6EYdxV7eQx1NX9wOWVrj580fxu35s= +github.com/aws/aws-sdk-go-v2/service/rds v1.75.0 h1:n5dDaoGrLHet6nWPbOw5F/GaEqN8cbqziPU6Y7anXGQ= +github.com/aws/aws-sdk-go-v2/service/rds v1.75.0/go.mod h1:82d6qbGqHtICl0Nvf+CNuR/m5OaIJOdpql7nrEzUDCc= +github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2 h1:BasWKoz55zGKKxOLQ8l26zglOE358X6WrCAhud/oe0s= +github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2/go.mod h1:lX3VXhDDYQEydE6EYdxV7eQx1NX9wOWVrj580fxu35s= github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1 h1:cPo8YHy+37gfUHKUuBjJ6BMXTAsEtqZaBwoN4XkzrVQ= github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1/go.mod h1:sSak28TnnJT89dmJ8PbSIAPlG4bxbpQncRrFI9sz/7A= github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.17.1 h1:5auYwAoZUWs+In7zgYTwPNDz43zHg4kBhJvvguxHdpU= @@ -1079,8 +1083,8 @@ github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.8.1/go.mod h1:FPHSZRQS74V9 github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1 h1:XdHygs2iC+GYyM1ItNUzyLSzHH/ixL3xhG+6heaz58o= github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1/go.mod h1:/5s6ahOjV5dZcCofvphLSvbMSvv2vBXHB99G6IDPY9Q= github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2/go.mod h1:u+566cosFI+d+motIz3USXEh6sN8Nq4GrNXSg2RXVMo= -github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1 h1:juZ+uGargZOrQGNxkVHr9HHR/0N+Yu8uekQnV7EAVRs= -github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1/go.mod h1:SoR0c7Jnq8Tpmt0KSLXIavhjmaagRqQpe9r70W3POJg= +github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3 h1:7cR4xxS480TI0R6Bd75g9Npdw89VriquvQPlMNmuds4= +github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3/go.mod h1:zb72GZ2MvfCX5ynVJ+Mc/NCx7hncbsko4NZm5E+p6J4= github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1 h1:14WSz02RHen4ZxXb5wVBxXq2aebksyD11bouawDMJC0= github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1/go.mod h1:lOAC7JeNYzOdlzXxON9z0oypVj85+Vw6+cfzkPUDQkA= github.com/aws/aws-sdk-go-v2/service/scheduler v1.8.1 h1:w2V9dh+FaymvyLMKfAs9AU/ZP3GJgOj2RrMWXTlLQ+k= @@ -1096,8 +1100,8 @@ github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1 h1:4YbfYP github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1/go.mod h1:PkxHhIOe6pN44wsGNLg7ILyNZ7n6NepiJXFCbOt3ecc= github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1 h1:CCd+AWX79LVGzTXkgW9fBaPRFiC+J67zGuMcsER8Q1g= github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1/go.mod h1:+M0h5pY1hwymLXfxTAiAB0D87KxkvGrqmDz0gQbrm4A= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1 h1:HqTkdYSy9loPqoZnoKb7apEgpCsTYETsTOlkSCtK3a8= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1/go.mod h1:gT09471Sxu2GX7nmEbGvuNmPsmElmWtF7BM19XO557o= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0 h1:/LWLtSAa1ujnhrRuvnXqPWVbXEpWecht8PZRY719VwM= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0/go.mod h1:gT09471Sxu2GX7nmEbGvuNmPsmElmWtF7BM19XO557o= github.com/aws/aws-sdk-go-v2/service/shield v1.25.1 h1:kT4QJtz5K8UtyMVXTqUyLC+oENjfsq0cuigNS5RsyKA= github.com/aws/aws-sdk-go-v2/service/shield v1.25.1/go.mod h1:8KVRLqnFvvlELa+CeiopYTs1ps5+s50T3qO/a3FTUmc= github.com/aws/aws-sdk-go-v2/service/signer v1.22.1 h1:6hmhhq1ARl7JXWnqgF/MtjJwlk+Fl9cy/Av2TJxLpuU= @@ -1125,20 +1129,20 @@ github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.25.1/go.mod h1:dc10tHFG63JGJ2DK github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1 h1:9/GylMS45hGGFCcMrUZDVayQE1jYSIN6da9jo7RAYIw= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1/go.mod h1:YjAPFn4kGFqKC54VsHs5fn5B6d+PCY2tziEa3U/GB5Y= github.com/aws/aws-sdk-go-v2/service/sts v1.16.10/go.mod h1:cftkHYN6tCDNfkSasAmclSfl4l7cySoay8vz7p/ce0E= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.1 h1:3I2cBEYgKhrWlwyZgfpSO2BpaMY1LHPqXYk/QGlu2ew= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.1/go.mod h1:uQ7YYKZt3adCRrdCBREm1CD3efFLOUNH77MrUCvx5oA= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.3 h1:TkiFkSVX990ryWIMBCT4kPqZEgThQe1xPU/AQXavtvU= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.3/go.mod h1:xYNauIUqSuvzlPVb3VB5no/n48YGhmlInD3Uh0Co8Zc= github.com/aws/aws-sdk-go-v2/service/swf v1.22.1 h1:PMaGDrs/gVHlVoFUAvWAZumKOy5zUVTVoqcfVReNrVU= github.com/aws/aws-sdk-go-v2/service/swf v1.22.1/go.mod h1:JzR/gwJ74OgJapcD+ZM1DpFCPLx5ME8YVAXey67MCB4= github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1 h1:jX5K+YiMaDZ3H+71VGDHMxTYJXWL4v6m+fbGVyKRxYM= github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1/go.mod h1:TTYl41CBtWEp3yeh4yQ+BbsIdTY/5779hJQW2oRzeXc= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1 h1:RCf8ImcmMwVsONYwDu84iBsEcQ+Vchn3QOVvNYr6y3g= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1/go.mod h1:kt5Z8zxXpDfPkFWxoTFnm4udoD2UDgCC87OOaIVJt4M= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2 h1:Xql+xXJrd+paS/uLYJrTYLBsv/F+bQfIZPqAQKFTMDw= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2/go.mod h1:oPx/H/vQjcZRewmATXiHLodl2ACxqV533CcyWlrgzRE= github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1 h1:DrzQj+RbkIWKSYn8UmkdGmBDun5/nKUKbgAhXgqGHJ0= github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1/go.mod h1:jBPm1p5px7QTJb4RWz557BEYmxCdzWj+A/hgVqMd25I= github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1 h1:q7UL5wMP8ncaX6DR+CHN9ijAtfvTnObOtJvNTKvFrFw= github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1/go.mod h1:eeMjuC3vhTuoZ//rlnoHu7gVsga2aDdXdOPtdw5+Fic= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1 h1:SxsDVKIdshYXqRsvveOcHcZKe9VS4mpi/YrLrly7/Vw= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1/go.mod h1:dO+sceTVqqhoF52LQDjt8Lm417lFZh77r8Ak4Y8Y2b4= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0 h1:wZjdfBr5UuyaaSG79mkEsHCc2sU0ScUJ6WZsTQfM78M= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0/go.mod h1:dO+sceTVqqhoF52LQDjt8Lm417lFZh77r8Ak4Y8Y2b4= github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1 h1:004A7QJBNhZjD9M3YZ9td+xSCvReg1C3eYT06hZNKvw= github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1/go.mod h1:Hk6AN73+u06HX+Ggnv/dO5clORF+vggub+955WHOGzQ= github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.29.1 h1:AIp/FayvxgKsWELKWr2iK8W2tNVl2paRgiRQacyJpmM= @@ -1886,8 +1890,9 @@ github.com/hashicorp/go-hclog v0.12.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39 github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v0.16.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v1.2.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= -github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c= github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= +github.com/hashicorp/go-hclog v1.6.2 h1:NOtoftovWkDheyUM/8JW3QMiXyxJK3uHRK7wV04nD2I= +github.com/hashicorp/go-hclog v1.6.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-immutable-radix v1.2.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc= @@ -1952,8 +1957,8 @@ github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90= github.com/hashicorp/hcl/v2 v2.18.0/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= -github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI= -github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= +github.com/hashicorp/hcl/v2 v2.20.0 h1:l++cRs/5jQOiKVvqXZm/P1ZEfVXJmvLS9WSVxkaeTb4= +github.com/hashicorp/hcl/v2 v2.20.0/go.mod h1:WmcD/Ym72MDOOx5F62Ly+leloeu6H7m0pG7VBiU6pQk= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= @@ -1978,6 +1983,8 @@ github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0 h1:b8vZYB/SkXJT github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0/go.mod h1:tP9BC3icoXBz72evMS5UTFvi98CiKhPdXF6yLs1wS8A= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= +github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0 h1:egR4InfakWkgepZNUATWGwkrPhaAYOTEybPfEol+G/I= +github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0/go.mod h1:9vjvl36aY1p6KltaA5QCvGC5hdE/9t4YuhGftw6WOgE= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 h1:HOjBuMbOEzl7snOdOoUfE2Jgeto6JOjLVQ39Ls2nksc= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0/go.mod h1:jfHGE/gzjxYz6XoUwi/aYiiKrJDeutQNUtGQXkaHklg= github.com/hashicorp/terraform-plugin-go v0.19.0/go.mod h1:EhRSkEPNoylLQntYsk5KrDHTZJh9HQoumZXbOGOXmec= @@ -1988,8 +1995,8 @@ github.com/hashicorp/terraform-plugin-mux v0.15.0/go.mod h1:9ezplb1Dyq394zQ+ldB0 github.com/hashicorp/terraform-plugin-sdk v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0= github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY= github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs= -github.com/hashicorp/terraform-plugin-testing v1.6.0 h1:Wsnfh+7XSVRfwcr2jZYHsnLOnZl7UeaOBvsx6dl/608= -github.com/hashicorp/terraform-plugin-testing v1.6.0/go.mod h1:cJGG0/8j9XhHaJZRC+0sXFI4uzqQZ9Az4vh6C4GJpFE= +github.com/hashicorp/terraform-plugin-testing v1.7.0 h1:I6aeCyZ30z4NiI3tzyDoO6fS7YxP5xSL1ceOon3gTe8= +github.com/hashicorp/terraform-plugin-testing v1.7.0/go.mod h1:sbAreCleJNOCz+y5vVHV8EJkIWZKi/t4ndKiUjM9vao= github.com/hashicorp/terraform-registry-address v0.2.2/go.mod h1:LtwNbCihUoUZ3RYriyS2wF/lGPB6gF9ICLRtuDk7hSo= github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= @@ -2753,8 +2760,8 @@ github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4 github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.14.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -github.com/zclconf/go-cty v1.14.2 h1:kTG7lqmBou0Zkx35r6HJHUQTvaRPr5bIAf3AoHS0izI= -github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty v1.14.3 h1:1JXy1XroaGrzZuG6X9dt7HL6s9AwbY+l4UNL8o5B6ho= +github.com/zclconf/go-cty v1.14.3/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b h1:FosyBZYxY34Wul7O/MSKey3txpPYyCqVO5ZyceuQJEI= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= github.com/zclconf/go-cty-yaml v1.0.1 h1:up11wlgAaDvlAGENcFDnZgkn0qUJurso7k6EpURKNF8= @@ -2924,8 +2931,8 @@ golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= -golang.org/x/crypto v0.20.0 h1:jmAMJJZXr5KiCw05dfYK9QnqaqKLYXijU23lsEdcQqg= -golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= +golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= +golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= 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= @@ -3303,8 +3310,8 @@ golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y= -golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= +golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -3321,8 +3328,8 @@ golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= -golang.org/x/term v0.17.0 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U= -golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= +golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= 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= diff --git a/provider/go.mod b/provider/go.mod index 1dd20f82975..46101ce229a 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -25,10 +25,10 @@ require ( replace github.com/hashicorp/terraform-plugin-log => github.com/gdavison/terraform-plugin-log v0.0.0-20230928191232-6c653d8ef8fb replace ( - // NOTE: this is currently tracking upstream-v1.4.0 branch in the Pulumi fork. Upgrading + // NOTE: this is currently tracking upstream-v1.6.1 branch in the Pulumi fork. Upgrading // this dependency is sensitive and is worth doing carefully (such as reading release notes) // and not simply rely on passing tests for the upgrade. - github.com/hashicorp/terraform-plugin-framework => github.com/pulumi/terraform-plugin-framework v0.0.0-20230922145027-1535d08c1d47 + github.com/hashicorp/terraform-plugin-framework => github.com/pulumi/terraform-plugin-framework v0.0.0-20240312214231-4d4aedf99afb github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240229143312-4f60ee4e2975 github.com/hashicorp/terraform-provider-aws => ../upstream github.com/hashicorp/vault => github.com/hashicorp/vault v1.2.0 @@ -66,17 +66,17 @@ require ( github.com/armon/go-metrics v0.4.0 // indirect github.com/armon/go-radix v1.0.0 // indirect github.com/atotto/clipboard v0.1.4 // indirect - github.com/aws/aws-sdk-go v1.50.29 // indirect + github.com/aws/aws-sdk-go v1.50.33 // indirect github.com/aws/aws-sdk-go-v2 v1.25.2 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 // indirect - github.com/aws/aws-sdk-go-v2/config v1.27.4 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.4 // indirect - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6 // indirect + github.com/aws/aws-sdk-go-v2/config v1.27.6 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.6 // indirect + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8 // indirect github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2 // indirect github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.2 // indirect github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 // indirect github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2 // indirect - github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2 // indirect github.com/aws/aws-sdk-go-v2/service/account v1.16.1 // indirect github.com/aws/aws-sdk-go-v2/service/acm v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/amp v1.25.1 // indirect @@ -119,14 +119,16 @@ require ( github.com/aws/aws-sdk-go-v2/service/controltower v1.13.1 // indirect github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1 // indirect github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1 // indirect + github.com/aws/aws-sdk-go-v2/service/dax v1.19.1 // indirect github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1 // indirect github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0 // indirect - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1 // indirect + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3 // indirect + github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4 // indirect github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1 // indirect github.com/aws/aws-sdk-go-v2/service/ecs v1.41.1 // indirect github.com/aws/aws-sdk-go-v2/service/eks v1.41.0 // indirect github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1 // indirect + github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1 // indirect github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1 // indirect github.com/aws/aws-sdk-go-v2/service/emr v1.39.1 // indirect github.com/aws/aws-sdk-go-v2/service/emrserverless v1.17.2 // indirect @@ -141,9 +143,9 @@ require ( github.com/aws/aws-sdk-go-v2/service/identitystore v1.23.1 // indirect github.com/aws/aws-sdk-go-v2/service/inspector2 v1.24.1 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4 // indirect github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2 // indirect github.com/aws/aws-sdk-go-v2/service/internetmonitor v1.12.1 // indirect github.com/aws/aws-sdk-go-v2/service/ivschat v1.12.1 // indirect @@ -165,19 +167,19 @@ require ( github.com/aws/aws-sdk-go-v2/service/mediapackagev2 v1.9.1 // indirect github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1 // indirect github.com/aws/aws-sdk-go-v2/service/mq v1.22.1 // indirect - github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1 // indirect + github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2 // indirect github.com/aws/aws-sdk-go-v2/service/oam v1.9.1 // indirect github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.11.1 // indirect github.com/aws/aws-sdk-go-v2/service/osis v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1 // indirect github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1 // indirect - github.com/aws/aws-sdk-go-v2/service/polly v1.39.1 // indirect + github.com/aws/aws-sdk-go-v2/service/polly v1.39.3 // indirect github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1 // indirect github.com/aws/aws-sdk-go-v2/service/qbusiness v1.4.1 // indirect github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1 // indirect github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1 // indirect - github.com/aws/aws-sdk-go-v2/service/rds v1.74.0 // indirect - github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1 // indirect + github.com/aws/aws-sdk-go-v2/service/rds v1.75.0 // indirect + github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2 // indirect github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.17.1 // indirect github.com/aws/aws-sdk-go-v2/service/rekognition v1.39.1 // indirect @@ -186,7 +188,7 @@ require ( github.com/aws/aws-sdk-go-v2/service/resourcegroupstaggingapi v1.21.1 // indirect github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1 // indirect - github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1 // indirect + github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3 // indirect github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1 // indirect github.com/aws/aws-sdk-go-v2/service/scheduler v1.8.1 // indirect github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.28.1 // indirect @@ -194,7 +196,7 @@ require ( github.com/aws/aws-sdk-go-v2/service/securitylake v1.13.0 // indirect github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1 // indirect github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0 // indirect github.com/aws/aws-sdk-go-v2/service/shield v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/signer v1.22.1 // indirect github.com/aws/aws-sdk-go-v2/service/sns v1.29.1 // indirect @@ -206,13 +208,13 @@ require ( github.com/aws/aws-sdk-go-v2/service/sso v1.20.1 // indirect github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.25.1 // indirect github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.28.1 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.28.3 // indirect github.com/aws/aws-sdk-go-v2/service/swf v1.22.1 // indirect github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1 // indirect - github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1 // indirect + github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2 // indirect github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1 // indirect github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1 // indirect - github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1 // indirect + github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0 // indirect github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1 // indirect github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.29.1 // indirect github.com/aws/aws-sdk-go-v2/service/workspaces v1.38.1 // indirect @@ -273,7 +275,7 @@ require ( github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637 // indirect github.com/hashicorp/go-getter v1.7.1 // indirect - github.com/hashicorp/go-hclog v1.5.0 // indirect + github.com/hashicorp/go-hclog v1.6.2 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/hashicorp/go-plugin v1.6.0 // indirect @@ -289,7 +291,7 @@ require ( github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hc-install v0.6.3 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/hcl/v2 v2.19.1 // indirect + github.com/hashicorp/hcl/v2 v2.20.0 // indirect github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-exec v0.20.0 // indirect @@ -297,11 +299,12 @@ require ( github.com/hashicorp/terraform-plugin-framework v1.6.1 // indirect github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect + github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0 // indirect github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 // indirect github.com/hashicorp/terraform-plugin-go v0.22.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-plugin-mux v0.15.0 // indirect - github.com/hashicorp/terraform-plugin-testing v1.6.0 // indirect + github.com/hashicorp/terraform-plugin-testing v1.7.0 // indirect github.com/hashicorp/terraform-registry-address v0.2.3 // indirect github.com/hashicorp/terraform-svchost v0.1.1 // indirect github.com/hashicorp/vault/api v1.8.2 // indirect @@ -385,7 +388,7 @@ require ( github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect - github.com/zclconf/go-cty v1.14.2 // indirect + github.com/zclconf/go-cty v1.14.3 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws v0.48.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect @@ -396,14 +399,14 @@ require ( go.uber.org/atomic v1.9.0 // indirect gocloud.dev v0.36.0 // indirect gocloud.dev/secrets/hashivault v0.27.0 // indirect - golang.org/x/crypto v0.20.0 // indirect + golang.org/x/crypto v0.21.0 // indirect golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect golang.org/x/mod v0.15.0 // indirect golang.org/x/net v0.21.0 // indirect golang.org/x/oauth2 v0.16.0 // indirect golang.org/x/sync v0.6.0 // indirect - golang.org/x/sys v0.17.0 // indirect - golang.org/x/term v0.17.0 // indirect + golang.org/x/sys v0.18.0 // indirect + golang.org/x/term v0.18.0 // indirect golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.5.0 // indirect golang.org/x/tools v0.15.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index fbff5ae0e4c..f4e93be4528 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1360,8 +1360,8 @@ github.com/aws/aws-sdk-go v1.43.31/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4 github.com/aws/aws-sdk-go v1.44.45/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.68/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= -github.com/aws/aws-sdk-go v1.50.29 h1:Ol2FYzesF2tsQrgVSnDWRFI60+FsSqKKdt7MLlZKubc= -github.com/aws/aws-sdk-go v1.50.29/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.50.33 h1:/SKPJ7ZVPCFOYZyTKo5YdjeUEeOn2J2M0qfDTXWAoEU= +github.com/aws/aws-sdk-go v1.50.33/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= github.com/aws/aws-sdk-go-v2 v1.16.8/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw= github.com/aws/aws-sdk-go-v2 v1.25.2 h1:/uiG1avJRgLGiQM9X3qJM8+Qa6KRGK5rRPuXE0HUM+w= @@ -1370,17 +1370,17 @@ github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3/go.mod h1:gNsR5CaXK github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 h1:gTK2uhtAPtFcdRRJilZPx8uJLL2J85xK11nKtWL0wfU= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1/go.mod h1:sxpLb+nZk7tIfCWChfd+h4QwHNUR57d8hA1cleTkjJo= github.com/aws/aws-sdk-go-v2/config v1.15.15/go.mod h1:A1Lzyy/o21I5/s2FbyX5AevQfSVXpvvIDCoVFD0BC4E= -github.com/aws/aws-sdk-go-v2/config v1.27.4 h1:AhfWb5ZwimdsYTgP7Od8E9L1u4sKmDW2ZVeLcf2O42M= -github.com/aws/aws-sdk-go-v2/config v1.27.4/go.mod h1:zq2FFXK3A416kiukwpsd+rD4ny6JC7QSkp4QdN1Mp2g= +github.com/aws/aws-sdk-go-v2/config v1.27.6 h1:WmoH1aPrxwcqAZTTnETjKr+fuvqzKd4hRrKxQUiuKP4= +github.com/aws/aws-sdk-go-v2/config v1.27.6/go.mod h1:W9RZFF2pL+OhnUSZsQS/eDMWD8v+R+yWgjj3nSlrXVU= github.com/aws/aws-sdk-go-v2/credentials v1.12.10/go.mod h1:g5eIM5XRs/OzIIK81QMBl+dAuDyoLN0VYaLP+tBqEOk= -github.com/aws/aws-sdk-go-v2/credentials v1.17.4 h1:h5Vztbd8qLppiPwX+y0Q6WiwMZgpd9keKe2EAENgAuI= -github.com/aws/aws-sdk-go-v2/credentials v1.17.4/go.mod h1:+30tpwrkOgvkJL1rUZuRLoxcJwtI/OkeBLYnHxJtVe0= +github.com/aws/aws-sdk-go-v2/credentials v1.17.6 h1:akhj/nSC6SEx3OmiYGG/7mAyXMem9ZNVVf+DXkikcTk= +github.com/aws/aws-sdk-go-v2/credentials v1.17.6/go.mod h1:chJZuJ7TkW4kiMwmldOJOEueBoSkUb4ynZS1d9dhygo= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9/go.mod h1:KDCCm4ONIdHtUloDcFvK2+vshZvx4Zmj7UMDfusuz5s= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.2 h1:AK0J8iYBFeUk2Ax7O8YpLtFsfhdOByh2QIkHmigpRYk= github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.2/go.mod h1:iRlGzMix0SExQEviAyptRWRGdYNo3+ufW/lCzvKVTUc= github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21/go.mod h1:iIYPrQ2rYfZiB/iADYlhj9HHZ9TTi6PqKQPAqygohbE= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6 h1:prcsGA3onmpc7ea1W/m+SMj4uOn5vZ63uJp805UhJJs= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.6/go.mod h1:7eQrvATnVFDY0WfMYhfKkSQ1YtZlClT71fAAlsA1s34= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8 h1:fjsaZ2EUoOaosuYMLbQAVJsPIAOV4Xn52AQmk5JbhAs= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.8/go.mod h1:WPJcs0Mze3WntafH9Df2NdJ1oSQkEQVL6piZxoS0ecY= github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.15/go.mod h1:pWrr2OoHlT7M/Pd2y4HV3gJyPb3qj5qMmnPkKSNPYK4= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2 h1:bNo4LagzUKbjdxE0tIcR9pMzLR2U/Tgie1Hq1HQ3iH8= github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.2/go.mod h1:wRQv0nN6v9wDXuWThpovGQjqF1HFdcgWjporw14lS8k= @@ -1393,8 +1393,8 @@ github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0/go.mod h1:8tu/lYfQfFe6IGnaOdrpV github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6/go.mod h1:O7Oc4peGZDEKlddivslfYFvAbgzvl/GH3J8j3JIGBXc= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2 h1:en92G0Z7xlksoOylkUhuBSfJgijC7rHVLRdnIlHEs0E= github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.2/go.mod h1:HgtQ/wN5G+8QSlK62lbOtNwQ3wTSByJ4wH2rCkPt+AE= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1 h1:KUfELMh/cv1EbJn9LPugQ4xQpEwtsmjZ3CzFcoZJZ0k= -github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.1/go.mod h1:bObB1vkC3I30/+iJ9yO7P8p6hKYojMexupSgShfSEAY= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2 h1:OXFlvBkTmGvPIUaYgWc48gZsxovlLJapQMGwoQP25r8= +github.com/aws/aws-sdk-go-v2/service/accessanalyzer v1.28.2/go.mod h1:bObB1vkC3I30/+iJ9yO7P8p6hKYojMexupSgShfSEAY= github.com/aws/aws-sdk-go-v2/service/account v1.16.1 h1:30tnG69DcbS28/Ou5Yrl5CX0qf0bvj9rUm60lY/nhWI= github.com/aws/aws-sdk-go-v2/service/account v1.16.1/go.mod h1:UoL7hPHV8/7A9j6+SbRk12Ea8T5MQyEKu5gtdZxFpW8= github.com/aws/aws-sdk-go-v2/service/acm v1.25.1 h1:PwTzrPPB/L3vasKiNwmTpprzWEaHItCCdK7MJZf+jlE= @@ -1479,14 +1479,16 @@ github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1 h1:CBh0CI9D73QnG github.com/aws/aws-sdk-go-v2/service/costoptimizationhub v1.4.1/go.mod h1:zwMr7HbCFo7yMDo3HtrAKj7LLW942cc3/wV559Mhx9M= github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1 h1:fuoX8H3zlFFbXvuDG0/jBoE4HcrbBTANgYzmpNLEs6s= github.com/aws/aws-sdk-go-v2/service/customerprofiles v1.36.1/go.mod h1:4NqexR3UzSSCVJYyxqkEeWvGuHcSudqwdnzJCCC+NvQ= +github.com/aws/aws-sdk-go-v2/service/dax v1.19.1 h1:m3o6QYXv4zFXTTbSPlMGhGyrJySmGg5ejbrAA9NRrcI= +github.com/aws/aws-sdk-go-v2/service/dax v1.19.1/go.mod h1:QJzqcWGkvfcpDWQI7S0MkQuESisgPaoVRaONToDvwyo= github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1 h1:4zKDWmYwlhvwY0r0n++ZJkyHjW4y+ESPSjnJ0iuDGSU= github.com/aws/aws-sdk-go-v2/service/directoryservice v1.24.1/go.mod h1:q89pJPdvEFMk5PbnXO4wA/grZlmtYhHNwXnIbH0zQLA= github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0 h1:m0cG+eVPpCD9RGkx+K3973fddPNqqeyn/cjHhdF9SJc= github.com/aws/aws-sdk-go-v2/service/docdbelastic v1.9.0/go.mod h1:ss968JYRABS5c+BJOznD+NNLh9e0gSwiZFEtI5AqgXk= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1 h1:haLXE5R07oaq/UnvSyE43V4jp9gA2XRMYcxkFYHEpdU= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.1/go.mod h1:mM51J0CILKQjqIawPDM4g6E1nyxdlvk/qaCDyJkx0II= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1 h1:OGZUMBYZnz+R5nkW6FS1J8UlfLeM/pKojck+74+ZQGY= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.1/go.mod h1:XxJNg7fIkR8cbm89i0zVZSxKpcPYsC8BWRwMIJOWbnk= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3 h1:redziOZeT6YVgJfTS3c/dIG0KDbT+x4eAsAKuCHro+s= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.30.3/go.mod h1:BzzW6QegtSMnC1BhD+lagiUDSRYjRTOhXAb1mLfEaMg= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4 h1:CGKvG+I3Qxly4jkKm3OCEeVNqcH6xUJ0NCGoqjytoGY= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.149.4/go.mod h1:XvYGmTpdybgh+aNRfm+XbnaJdjWXxPXvRPlp7YpTs1A= github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1 h1:GFt/4yMrCuMDi4YzKy0HCW9NhwbxoYZUMqIWqWJFsqE= github.com/aws/aws-sdk-go-v2/service/ecr v1.27.1/go.mod h1:ydHfHlVpaydWdStDKNcV6BnI0fD+ZwlPWvDgVG2fLt0= github.com/aws/aws-sdk-go-v2/service/ecs v1.41.1 h1:h1oi77d7nGeM7DvResjebSnhdBVJZefd/eCT+DGjhY4= @@ -1495,6 +1497,8 @@ github.com/aws/aws-sdk-go-v2/service/eks v1.41.0 h1:/bitqsA6wgIS2vgjtHJi1JG3SOTb github.com/aws/aws-sdk-go-v2/service/eks v1.41.0/go.mod h1:GFqWNwDLyuSevADun69Dg5aurANpv8KNrz2vxYPEqmw= github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1 h1:f1Oc1hr92u+KPw0um3qdZvFOS8rdwUXmvWcOkzzNIbo= github.com/aws/aws-sdk-go-v2/service/elasticache v1.37.1/go.mod h1:M4h0TpSwm0tJ9Pj7+OOn19/9Zy6jwXfr3cXSv6dvIpU= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1 h1:C8WyakcSzm9pfNmv/nbBZmkKEyRwQKMZft2jVmkGTGY= +github.com/aws/aws-sdk-go-v2/service/elasticbeanstalk v1.23.1/go.mod h1:XGovJTsyRNnDERieCR/odSntl/VTyevWg2+8trOc4gI= github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1 h1:eDD7nyDlMxlkGhWu0n92LYkuSQIIEwN5CffwiMDohh0= github.com/aws/aws-sdk-go-v2/service/elasticloadbalancingv2 v1.30.1/go.mod h1:DGUI2cbxu24m0rNOm7DDmrCtTzR0U0FqE3XpBkR8+r8= github.com/aws/aws-sdk-go-v2/service/emr v1.39.1 h1:6mNb+DpB7tRXRkkyF+uD0Va57nDR1O3UnSa1wHtMg2Q= @@ -1525,13 +1529,13 @@ github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3/go.mod h1:g github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 h1:EyBZibRTVAs6ECHZOw5/wlylS9OcTzwyjeQMudmREjE= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1/go.mod h1:JKpmtYhhPs7D97NL/ltqz7yCkERFW5dOlHyVl66ZYF8= github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10/go.mod h1:Qks+dxK3O+Z2deAhNo6cJ8ls1bam3tUGUAcgxQP1c70= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2 h1:zSdTXYLwuXDNPUS+V41i1SFDXG7V0ITp0D9UT9Cvl18= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.2/go.mod h1:v8m8k+qVy95nYi7d56uP1QImleIIY25BPiNJYzPBdFE= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2 h1:3tS2g6P3N+Wz64e9aNx7X4BCWN/gT9MUvIuv5l2eoho= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.2/go.mod h1:1Pf5vPqk8t9pdYB3dmUMRE/0m8u0IHHg8ESSiutJd0I= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4 h1:J3Q6N2sTChfYLZSTey3Qeo7n3JSm6RTJDcKev+7Sbus= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.4/go.mod h1:ZopsdDMVg1H03X7BdzpGaufOkuz27RjtKDzioP2U0Hg= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3 h1:/MpYoYvgshlGMFmSyfzGWf6HKoEo/DrKBoHxXR3vh+U= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.9.3/go.mod h1:1Pf5vPqk8t9pdYB3dmUMRE/0m8u0IHHg8ESSiutJd0I= github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9/go.mod h1:yQowTpvdZkFVuHrLBXmczat4W+WJKg/PafBZnGBLga0= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2 h1:5ffmXjPtwRExp1zc7gENLgCPyHFbhEPwVTkTiH9niSk= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.2/go.mod h1:Ru7vg1iQ7cR4i7SZ/JTLYN9kaXtbL69UdgG0OQWQxW0= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4 h1:jRiWxyuVO8PlkN72wDMVn/haVH4SDCBkUt0Lf/dxd7s= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.4/go.mod h1:Ru7vg1iQ7cR4i7SZ/JTLYN9kaXtbL69UdgG0OQWQxW0= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9/go.mod h1:Rc5+wn2k8gFSi3V1Ch4mhxOzjMh+bYSXVFfVaqowQOY= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2 h1:1oY1AVEisRI4HNuFoLdRUB0hC63ylDAN6Me3MrfclEg= github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.2/go.mod h1:KZ03VgvZwSjkT7fOetQ/wF3MZUvYFirlI1H5NklUNsY= @@ -1576,8 +1580,8 @@ github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1 h1:pHi6LikWSuNxlfhiF7w4j github.com/aws/aws-sdk-go-v2/service/mediastore v1.20.1/go.mod h1:1VTLJoiDMhc9gnf8WT1FmFsx1SH1hgQOSxgh+yvHGM0= github.com/aws/aws-sdk-go-v2/service/mq v1.22.1 h1:xEHSeR2ko/pBnXd2h9VfaCbWdR3YGIwoaOQxUqgxytA= github.com/aws/aws-sdk-go-v2/service/mq v1.22.1/go.mod h1:TiZfMUSUUYd+1GyvUNeLfVHCBHe2CmW/F7SeLIBDM2o= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1 h1:VUx+TQGQV5UQ/vbRO34lsmoDaRyRKx+K197RIxemSo4= -github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.1/go.mod h1:xwdLYNtyblfXu5dZEp5m44cHgKPXhDSzTika+nF0M5M= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2 h1:U0qjiY/D7EskLCMFb84wyrInwVqw62at1+YXdS0VWfY= +github.com/aws/aws-sdk-go-v2/service/mwaa v1.26.2/go.mod h1:xwdLYNtyblfXu5dZEp5m44cHgKPXhDSzTika+nF0M5M= github.com/aws/aws-sdk-go-v2/service/oam v1.9.1 h1:uMcyjgz7wN4Z1pMtoRGm/5eiOHVrKWnWDZQ2cH2e7vE= github.com/aws/aws-sdk-go-v2/service/oam v1.9.1/go.mod h1:HQzeDvFZX5kza9wVaVVpyILgf1YE7/V/uyIICDI1p4Y= github.com/aws/aws-sdk-go-v2/service/opensearchserverless v1.11.1 h1:it1xeN5Unxm1yWPWtkFWQmCtDnJNN9LBr9LXI774ZFY= @@ -1588,8 +1592,8 @@ github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1 h1:3xjnMZNuLN6jTf/AOu github.com/aws/aws-sdk-go-v2/service/pcaconnectorad v1.5.1/go.mod h1:hISA8L4B2e1OtS/QhNMJHu79zTZJINYjSMKoVYXeS/g= github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1 h1:olGuN8lvMgPGE00bb/fem6xqjrzQ40dFhtIAF8JkfM4= github.com/aws/aws-sdk-go-v2/service/pipes v1.11.1/go.mod h1:ACXvNNRlZ2Rc3/nqNDIY27rejsTm/9pyzCCe4d3Q44I= -github.com/aws/aws-sdk-go-v2/service/polly v1.39.1 h1:jLtzeXpI1pcSs0pd/N45T/69z2+e63HOZXxb1i4ZSuU= -github.com/aws/aws-sdk-go-v2/service/polly v1.39.1/go.mod h1:aoUvJrNGsAxJ4Yb5X7z7unp1MKZZuKcmokXwTWnnp3I= +github.com/aws/aws-sdk-go-v2/service/polly v1.39.3 h1:BlTOO9BcFmz5tz4edh7DvGuqQ7vH/7EFhC3JAXkAHMo= +github.com/aws/aws-sdk-go-v2/service/polly v1.39.3/go.mod h1:FxI08D7GT4RdciJDt4lgHONQybSGQHQvyGatbyszSWE= github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1 h1:EjEPWNlxiv1tZcAoXdNrYRSMH2Yr7S2bXtmah4VAtJA= github.com/aws/aws-sdk-go-v2/service/pricing v1.27.1/go.mod h1:lgOeacBY+VEy+JpZu+GXawMFtmsHWircfZsNP3H5lEM= github.com/aws/aws-sdk-go-v2/service/qbusiness v1.4.1 h1:1kPxANy45Wk4mlfKTAqZHBFFKwPfTAFnIOHZDoWnluE= @@ -1598,10 +1602,10 @@ github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1 h1:8OWFwEjuA+HoNE5dMOT9XasQXAs github.com/aws/aws-sdk-go-v2/service/qldb v1.21.1/go.mod h1:A58iKuKoJOym8KOUcCLx2koMxqUtVZ1Vm+kPu3daUPM= github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1 h1:VzDztKtis2k5aTmRMHTWQRZXepEMsQyzfnohlo6ANgU= github.com/aws/aws-sdk-go-v2/service/rbin v1.16.1/go.mod h1:suUdD910DMRQAMY7+qhk5RUp+SIT7VYrzHIo1tX8D6Y= -github.com/aws/aws-sdk-go-v2/service/rds v1.74.0 h1:gkhHVZ7DUu6I6tIezOMqcBHCq9iiYqNXL5avh0qmxP0= -github.com/aws/aws-sdk-go-v2/service/rds v1.74.0/go.mod h1:VwhpZOXYa/PPsZgcGpXFNe5bdL4Rlcv+1Z7nGKX8MVI= -github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1 h1:y5IwD4qVQCveSEcWqMCc8F6ZNb3NxZ/O3IsfZyeaWSQ= -github.com/aws/aws-sdk-go-v2/service/redshift v1.43.1/go.mod h1:lX3VXhDDYQEydE6EYdxV7eQx1NX9wOWVrj580fxu35s= +github.com/aws/aws-sdk-go-v2/service/rds v1.75.0 h1:n5dDaoGrLHet6nWPbOw5F/GaEqN8cbqziPU6Y7anXGQ= +github.com/aws/aws-sdk-go-v2/service/rds v1.75.0/go.mod h1:82d6qbGqHtICl0Nvf+CNuR/m5OaIJOdpql7nrEzUDCc= +github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2 h1:BasWKoz55zGKKxOLQ8l26zglOE358X6WrCAhud/oe0s= +github.com/aws/aws-sdk-go-v2/service/redshift v1.43.2/go.mod h1:lX3VXhDDYQEydE6EYdxV7eQx1NX9wOWVrj580fxu35s= github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1 h1:cPo8YHy+37gfUHKUuBjJ6BMXTAsEtqZaBwoN4XkzrVQ= github.com/aws/aws-sdk-go-v2/service/redshiftdata v1.25.1/go.mod h1:sSak28TnnJT89dmJ8PbSIAPlG4bxbpQncRrFI9sz/7A= github.com/aws/aws-sdk-go-v2/service/redshiftserverless v1.17.1 h1:5auYwAoZUWs+In7zgYTwPNDz43zHg4kBhJvvguxHdpU= @@ -1619,8 +1623,8 @@ github.com/aws/aws-sdk-go-v2/service/rolesanywhere v1.8.1/go.mod h1:FPHSZRQS74V9 github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1 h1:XdHygs2iC+GYyM1ItNUzyLSzHH/ixL3xhG+6heaz58o= github.com/aws/aws-sdk-go-v2/service/route53domains v1.23.1/go.mod h1:/5s6ahOjV5dZcCofvphLSvbMSvv2vBXHB99G6IDPY9Q= github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2/go.mod h1:u+566cosFI+d+motIz3USXEh6sN8Nq4GrNXSg2RXVMo= -github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1 h1:juZ+uGargZOrQGNxkVHr9HHR/0N+Yu8uekQnV7EAVRs= -github.com/aws/aws-sdk-go-v2/service/s3 v1.51.1/go.mod h1:SoR0c7Jnq8Tpmt0KSLXIavhjmaagRqQpe9r70W3POJg= +github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3 h1:7cR4xxS480TI0R6Bd75g9Npdw89VriquvQPlMNmuds4= +github.com/aws/aws-sdk-go-v2/service/s3 v1.51.3/go.mod h1:zb72GZ2MvfCX5ynVJ+Mc/NCx7hncbsko4NZm5E+p6J4= github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1 h1:14WSz02RHen4ZxXb5wVBxXq2aebksyD11bouawDMJC0= github.com/aws/aws-sdk-go-v2/service/s3control v1.44.1/go.mod h1:lOAC7JeNYzOdlzXxON9z0oypVj85+Vw6+cfzkPUDQkA= github.com/aws/aws-sdk-go-v2/service/scheduler v1.8.1 h1:w2V9dh+FaymvyLMKfAs9AU/ZP3GJgOj2RrMWXTlLQ+k= @@ -1636,8 +1640,8 @@ github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1 h1:4YbfYP github.com/aws/aws-sdk-go-v2/service/servicecatalogappregistry v1.26.1/go.mod h1:PkxHhIOe6pN44wsGNLg7ILyNZ7n6NepiJXFCbOt3ecc= github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1 h1:CCd+AWX79LVGzTXkgW9fBaPRFiC+J67zGuMcsER8Q1g= github.com/aws/aws-sdk-go-v2/service/servicequotas v1.21.1/go.mod h1:+M0h5pY1hwymLXfxTAiAB0D87KxkvGrqmDz0gQbrm4A= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1 h1:HqTkdYSy9loPqoZnoKb7apEgpCsTYETsTOlkSCtK3a8= -github.com/aws/aws-sdk-go-v2/service/sesv2 v1.26.1/go.mod h1:gT09471Sxu2GX7nmEbGvuNmPsmElmWtF7BM19XO557o= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0 h1:/LWLtSAa1ujnhrRuvnXqPWVbXEpWecht8PZRY719VwM= +github.com/aws/aws-sdk-go-v2/service/sesv2 v1.27.0/go.mod h1:gT09471Sxu2GX7nmEbGvuNmPsmElmWtF7BM19XO557o= github.com/aws/aws-sdk-go-v2/service/shield v1.25.1 h1:kT4QJtz5K8UtyMVXTqUyLC+oENjfsq0cuigNS5RsyKA= github.com/aws/aws-sdk-go-v2/service/shield v1.25.1/go.mod h1:8KVRLqnFvvlELa+CeiopYTs1ps5+s50T3qO/a3FTUmc= github.com/aws/aws-sdk-go-v2/service/signer v1.22.1 h1:6hmhhq1ARl7JXWnqgF/MtjJwlk+Fl9cy/Av2TJxLpuU= @@ -1665,20 +1669,20 @@ github.com/aws/aws-sdk-go-v2/service/ssoadmin v1.25.1/go.mod h1:dc10tHFG63JGJ2DK github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1 h1:9/GylMS45hGGFCcMrUZDVayQE1jYSIN6da9jo7RAYIw= github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.1/go.mod h1:YjAPFn4kGFqKC54VsHs5fn5B6d+PCY2tziEa3U/GB5Y= github.com/aws/aws-sdk-go-v2/service/sts v1.16.10/go.mod h1:cftkHYN6tCDNfkSasAmclSfl4l7cySoay8vz7p/ce0E= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.1 h1:3I2cBEYgKhrWlwyZgfpSO2BpaMY1LHPqXYk/QGlu2ew= -github.com/aws/aws-sdk-go-v2/service/sts v1.28.1/go.mod h1:uQ7YYKZt3adCRrdCBREm1CD3efFLOUNH77MrUCvx5oA= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.3 h1:TkiFkSVX990ryWIMBCT4kPqZEgThQe1xPU/AQXavtvU= +github.com/aws/aws-sdk-go-v2/service/sts v1.28.3/go.mod h1:xYNauIUqSuvzlPVb3VB5no/n48YGhmlInD3Uh0Co8Zc= github.com/aws/aws-sdk-go-v2/service/swf v1.22.1 h1:PMaGDrs/gVHlVoFUAvWAZumKOy5zUVTVoqcfVReNrVU= github.com/aws/aws-sdk-go-v2/service/swf v1.22.1/go.mod h1:JzR/gwJ74OgJapcD+ZM1DpFCPLx5ME8YVAXey67MCB4= github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1 h1:jX5K+YiMaDZ3H+71VGDHMxTYJXWL4v6m+fbGVyKRxYM= github.com/aws/aws-sdk-go-v2/service/synthetics v1.24.1/go.mod h1:TTYl41CBtWEp3yeh4yQ+BbsIdTY/5779hJQW2oRzeXc= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1 h1:RCf8ImcmMwVsONYwDu84iBsEcQ+Vchn3QOVvNYr6y3g= -github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.1/go.mod h1:kt5Z8zxXpDfPkFWxoTFnm4udoD2UDgCC87OOaIVJt4M= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2 h1:Xql+xXJrd+paS/uLYJrTYLBsv/F+bQfIZPqAQKFTMDw= +github.com/aws/aws-sdk-go-v2/service/timestreamwrite v1.25.2/go.mod h1:oPx/H/vQjcZRewmATXiHLodl2ACxqV533CcyWlrgzRE= github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1 h1:DrzQj+RbkIWKSYn8UmkdGmBDun5/nKUKbgAhXgqGHJ0= github.com/aws/aws-sdk-go-v2/service/transcribe v1.36.1/go.mod h1:jBPm1p5px7QTJb4RWz557BEYmxCdzWj+A/hgVqMd25I= github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1 h1:q7UL5wMP8ncaX6DR+CHN9ijAtfvTnObOtJvNTKvFrFw= github.com/aws/aws-sdk-go-v2/service/transfer v1.43.1/go.mod h1:eeMjuC3vhTuoZ//rlnoHu7gVsga2aDdXdOPtdw5+Fic= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1 h1:SxsDVKIdshYXqRsvveOcHcZKe9VS4mpi/YrLrly7/Vw= -github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.10.1/go.mod h1:dO+sceTVqqhoF52LQDjt8Lm417lFZh77r8Ak4Y8Y2b4= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0 h1:wZjdfBr5UuyaaSG79mkEsHCc2sU0ScUJ6WZsTQfM78M= +github.com/aws/aws-sdk-go-v2/service/verifiedpermissions v1.11.0/go.mod h1:dO+sceTVqqhoF52LQDjt8Lm417lFZh77r8Ak4Y8Y2b4= github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1 h1:004A7QJBNhZjD9M3YZ9td+xSCvReg1C3eYT06hZNKvw= github.com/aws/aws-sdk-go-v2/service/vpclattice v1.7.1/go.mod h1:Hk6AN73+u06HX+Ggnv/dO5clORF+vggub+955WHOGzQ= github.com/aws/aws-sdk-go-v2/service/wellarchitected v1.29.1 h1:AIp/FayvxgKsWELKWr2iK8W2tNVl2paRgiRQacyJpmM= @@ -2453,8 +2457,9 @@ github.com/hashicorp/go-hclog v0.12.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39 github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v0.16.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v1.2.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= -github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c= github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= +github.com/hashicorp/go-hclog v1.6.2 h1:NOtoftovWkDheyUM/8JW3QMiXyxJK3uHRK7wV04nD2I= +github.com/hashicorp/go-hclog v1.6.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-immutable-radix v1.2.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc= @@ -2517,8 +2522,9 @@ github.com/hashicorp/hcl v0.0.0-20170504190234-a4b07c25de5f/go.mod h1:oZtUIOe8dh github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90= -github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI= github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= +github.com/hashicorp/hcl/v2 v2.20.0 h1:l++cRs/5jQOiKVvqXZm/P1ZEfVXJmvLS9WSVxkaeTb4= +github.com/hashicorp/hcl/v2 v2.20.0/go.mod h1:WmcD/Ym72MDOOx5F62Ly+leloeu6H7m0pG7VBiU6pQk= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 h1:T1Q6ag9tCwun16AW+XK3tAql24P4uTGUMIn1/92WsQQ= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93/go.mod h1:n2TSygSNwsLJ76m8qFXTSc7beTb+auJxYdqrnoqwZWE= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= @@ -2542,6 +2548,8 @@ github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0 h1:b8vZYB/SkXJT github.com/hashicorp/terraform-plugin-framework-jsontypes v0.1.0/go.mod h1:tP9BC3icoXBz72evMS5UTFvi98CiKhPdXF6yLs1wS8A= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= +github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0 h1:egR4InfakWkgepZNUATWGwkrPhaAYOTEybPfEol+G/I= +github.com/hashicorp/terraform-plugin-framework-timetypes v0.3.0/go.mod h1:9vjvl36aY1p6KltaA5QCvGC5hdE/9t4YuhGftw6WOgE= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0 h1:HOjBuMbOEzl7snOdOoUfE2Jgeto6JOjLVQ39Ls2nksc= github.com/hashicorp/terraform-plugin-framework-validators v0.12.0/go.mod h1:jfHGE/gzjxYz6XoUwi/aYiiKrJDeutQNUtGQXkaHklg= github.com/hashicorp/terraform-plugin-go v0.22.0 h1:1OS1Jk5mO0f5hrziWJGXXIxBrMe2j/B8E+DVGw43Xmc= @@ -2551,8 +2559,8 @@ github.com/hashicorp/terraform-plugin-mux v0.15.0/go.mod h1:9ezplb1Dyq394zQ+ldB0 github.com/hashicorp/terraform-plugin-sdk v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0= github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY= github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs= -github.com/hashicorp/terraform-plugin-testing v1.6.0 h1:Wsnfh+7XSVRfwcr2jZYHsnLOnZl7UeaOBvsx6dl/608= -github.com/hashicorp/terraform-plugin-testing v1.6.0/go.mod h1:cJGG0/8j9XhHaJZRC+0sXFI4uzqQZ9Az4vh6C4GJpFE= +github.com/hashicorp/terraform-plugin-testing v1.7.0 h1:I6aeCyZ30z4NiI3tzyDoO6fS7YxP5xSL1ceOon3gTe8= +github.com/hashicorp/terraform-plugin-testing v1.7.0/go.mod h1:sbAreCleJNOCz+y5vVHV8EJkIWZKi/t4ndKiUjM9vao= github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.0.0-20191011084731-65d371908596/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg= @@ -3127,8 +3135,8 @@ github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQK github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= github.com/pulumi/terraform-diff-reader v0.0.2/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ= -github.com/pulumi/terraform-plugin-framework v0.0.0-20230922145027-1535d08c1d47 h1:sH7ivH4DHxjXkFqdNArt/Qo9JIOUdYc5qpoX8psLz/I= -github.com/pulumi/terraform-plugin-framework v0.0.0-20230922145027-1535d08c1d47/go.mod h1:XC0hPcQbBvlbxwmjxuV/8sn8SbZRg4XwGMs22f+kqV0= +github.com/pulumi/terraform-plugin-framework v0.0.0-20240312214231-4d4aedf99afb h1:cH4RXGrDRYb6+DZMBrUOlN4eDeQd7/d5G1RPtBnPkn0= +github.com/pulumi/terraform-plugin-framework v0.0.0-20240312214231-4d4aedf99afb/go.mod h1:aJI+n/hBPhz1J+77GdgNfk5svW12y7fmtxe/5L5IuwI= github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240229143312-4f60ee4e2975 h1:1WBy43K/lHEdS5Hliwf3ylVSfAu5s0KhhEs6wNeP11Y= github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240229143312-4f60ee4e2975/go.mod h1:H+8tjs9TjV2w57QFVSMBQacf8k/E1XwLXGCARgViC6A= github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4= @@ -3359,8 +3367,9 @@ github.com/zclconf/go-cty v1.2.1/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= github.com/zclconf/go-cty v1.14.1/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= -github.com/zclconf/go-cty v1.14.2 h1:kTG7lqmBou0Zkx35r6HJHUQTvaRPr5bIAf3AoHS0izI= github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty v1.14.3 h1:1JXy1XroaGrzZuG6X9dt7HL6s9AwbY+l4UNL8o5B6ho= +github.com/zclconf/go-cty v1.14.3/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b h1:FosyBZYxY34Wul7O/MSKey3txpPYyCqVO5ZyceuQJEI= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= github.com/zclconf/go-cty-yaml v1.0.1 h1:up11wlgAaDvlAGENcFDnZgkn0qUJurso7k6EpURKNF8= @@ -3539,8 +3548,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.20.0 h1:jmAMJJZXr5KiCw05dfYK9QnqaqKLYXijU23lsEdcQqg= -golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= +golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= +golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= 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= @@ -3946,8 +3955,9 @@ golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= 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 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= +golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -3969,8 +3979,9 @@ golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= 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 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= +golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= 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= From 406f0f723910e6aa9b3fb2a31a2eb2f8d85788dc Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 18:06:03 -0400 Subject: [PATCH 4/6] securitylake_subscriber tags_all patch --- ...d-TagsSchemaTrulyComputed-definition.patch | 2 +- patches/0002-Conns-user-agent.patch | 2 +- ...03-Add-S3-legacy-bucket-to-resources.patch | 2 +- ...uration-as-Computed-for-Legacy-S3-Bu.patch | 2 +- patches/0005-De-deprecate-bucket_object.patch | 2 +- ...keformation-catalog_resource-default.patch | 2 +- ...07-Workaround-SSM-Parameter-tier-bug.patch | 2 +- ...uster-certificate_authorities-plural.patch | 2 +- ...caling-launch_configuration-associat.patch | 2 +- ...0010-Add-ECR-credentials_data_source.patch | 2 +- ...1-Add-custom-appautoscaling-examples.patch | 2 +- patches/0012-Add-dedicated_host-docs.patch | 2 +- patches/0013-Revert-WAF-schema-changes.patch | 2 +- ...in-new-resourceTopicSubscriptionCust.patch | 2 +- ...015-add-matchmaking-configuration-72.patch | 2 +- ...tches-to-S3BucketLegacy-and-GameLift.patch | 2 +- ...-Revert-Update-endpointHashIPAddress.patch | 2 +- patches/0018-Fixup-gamelift-context.patch | 2 +- ...lt-descriptions-to-Managed-by-Pulumi.patch | 2 +- ...elements-from-schema-and-fix-tests-7.patch | 2 +- ...ito_identity_pool_roles_attachment-e.patch | 2 +- ...target-group-read-to-workaround-2517.patch | 2 +- ...urrious-json-diff-for-redrive_policy.patch | 2 +- patches/0024-Provide-context-to-conns.patch | 2 +- ...the-tags-behavior-of-other-resources.patch | 2 +- ...ve-shim-logic-to-upstream-as-a-patch.patch | 2 +- ...27-Restore-S3ConnURICleaningDisabled.patch | 2 +- ...-Do-not-compute-tags_all-at-TF-level.patch | 2 +- ...r-implement-default_addons_to_remove.patch | 2 +- ...otComputedForResources-to-recognize-.patch | 2 +- .../0031-Optimize-startup-performance.patch | 2 +- .../0032-Fix-job-queue-sdkv2-migration.patch | 2 +- ...isableTagSchemaCheck-for-PF-provider.patch | 2 +- ...h_computed_only.sh-to-patch-eks-pod_.patch | 2 +- ...l-fast-when-PF-resources-are-dropped.patch | 2 +- ...x-tags_all-Computed-for-PF-resources.patch | 2 +- ...etry-for-KMS-access-denied-in-lambda.patch | 2 +- ...to-not-retry-after-LimitExceededExce.patch | 2 +- patches/0039-Restore-legacy-bucket.patch | 2 +- .../0040-Patch-osis_pipeline-tags-flags.patch | 2 +- ...ch-Logging-section-in-Lambda-Example.patch | 2 +- ...l-request-35678-from-hashicorp-b-elb.patch | 2 +- ...l-request-35671-from-hashicorp-b-lb-.patch | 2 +- ...ambdas-without-code-related-properti.patch | 2 +- ...ags_all-of-aws_bedrock_provisioned_m.patch | 2 +- patches/0046-fix-legacy-bucket-context.patch | 2 +- ...curitylake_subscriber-tags_all-patch.patch | 19 +++++++++++++++++++ 47 files changed, 65 insertions(+), 46 deletions(-) create mode 100644 patches/0047-securitylake_subscriber-tags_all-patch.patch diff --git a/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch b/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch index c174922fe0f..36a51446251 100644 --- a/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch +++ b/patches/0001-Add-TagsSchemaTrulyComputed-definition.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 16:49:08 +0000 -Subject: [PATCH 01/46] Add TagsSchemaTrulyComputed definition +Subject: [PATCH 01/47] Add TagsSchemaTrulyComputed definition diff --git a/internal/tags/tags.go b/internal/tags/tags.go diff --git a/patches/0002-Conns-user-agent.patch b/patches/0002-Conns-user-agent.patch index 59a98a41d3e..19a9b464d0b 100644 --- a/patches/0002-Conns-user-agent.patch +++ b/patches/0002-Conns-user-agent.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:03:31 +0000 -Subject: [PATCH 02/46] Conns user agent +Subject: [PATCH 02/47] Conns user agent Replace the useragent used for AWS client connections with a Pulumi-flavoured one. diff --git a/patches/0003-Add-S3-legacy-bucket-to-resources.patch b/patches/0003-Add-S3-legacy-bucket-to-resources.patch index f53da1d8d3d..ccd13afc583 100644 --- a/patches/0003-Add-S3-legacy-bucket-to-resources.patch +++ b/patches/0003-Add-S3-legacy-bucket-to-resources.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:05:11 +0000 -Subject: [PATCH 03/46] Add S3 legacy bucket to resources +Subject: [PATCH 03/47] Add S3 legacy bucket to resources This preserves the old S3 Resource in the SDK, by duplicating the code as a new service (in internal/service/s3legacy), and making an explicit diff --git a/patches/0004-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch b/patches/0004-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch index 8a90744bb07..4dd34f12281 100644 --- a/patches/0004-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch +++ b/patches/0004-Marks-SSE-Configuration-as-Computed-for-Legacy-S3-Bu.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Kyle Pitzen Date: Thu, 9 Mar 2023 09:47:49 -0600 -Subject: [PATCH 04/46] Marks SSE Configuration as Computed for Legacy S3 +Subject: [PATCH 04/47] Marks SSE Configuration as Computed for Legacy S3 Bucket In January, AWS enabled SSE by default for all new S3 buckets. diff --git a/patches/0005-De-deprecate-bucket_object.patch b/patches/0005-De-deprecate-bucket_object.patch index 008a4a9b913..473ab943ba2 100644 --- a/patches/0005-De-deprecate-bucket_object.patch +++ b/patches/0005-De-deprecate-bucket_object.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:06:11 +0000 -Subject: [PATCH 05/46] De-deprecate bucket_object +Subject: [PATCH 05/47] De-deprecate bucket_object diff --git a/internal/service/s3/bucket_object.go b/internal/service/s3/bucket_object.go diff --git a/patches/0006-Remove-lakeformation-catalog_resource-default.patch b/patches/0006-Remove-lakeformation-catalog_resource-default.patch index c758b3bf675..98f14de25ec 100644 --- a/patches/0006-Remove-lakeformation-catalog_resource-default.patch +++ b/patches/0006-Remove-lakeformation-catalog_resource-default.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:08:23 +0000 -Subject: [PATCH 06/46] Remove lakeformation catalog_resource default +Subject: [PATCH 06/47] Remove lakeformation catalog_resource default diff --git a/internal/service/lakeformation/permissions.go b/internal/service/lakeformation/permissions.go diff --git a/patches/0007-Workaround-SSM-Parameter-tier-bug.patch b/patches/0007-Workaround-SSM-Parameter-tier-bug.patch index 7e9e8c330c9..be8df36c881 100644 --- a/patches/0007-Workaround-SSM-Parameter-tier-bug.patch +++ b/patches/0007-Workaround-SSM-Parameter-tier-bug.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:24:42 +0000 -Subject: [PATCH 07/46] Workaround SSM Parameter tier bug +Subject: [PATCH 07/47] Workaround SSM Parameter tier bug - Disable "computed". - Disable diff suppression & counteractions diff --git a/patches/0008-Add-EKS-cluster-certificate_authorities-plural.patch b/patches/0008-Add-EKS-cluster-certificate_authorities-plural.patch index db9c73528fb..99cdf451882 100644 --- a/patches/0008-Add-EKS-cluster-certificate_authorities-plural.patch +++ b/patches/0008-Add-EKS-cluster-certificate_authorities-plural.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:32:49 +0000 -Subject: [PATCH 08/46] Add EKS cluster certificate_authorities (plural) +Subject: [PATCH 08/47] Add EKS cluster certificate_authorities (plural) diff --git a/internal/service/eks/cluster.go b/internal/service/eks/cluster.go diff --git a/patches/0009-Workaround-Autoscaling-launch_configuration-associat.patch b/patches/0009-Workaround-Autoscaling-launch_configuration-associat.patch index 9fca6ab425f..0986672063a 100644 --- a/patches/0009-Workaround-Autoscaling-launch_configuration-associat.patch +++ b/patches/0009-Workaround-Autoscaling-launch_configuration-associat.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:34:56 +0000 -Subject: [PATCH 09/46] Workaround Autoscaling launch_configuration +Subject: [PATCH 09/47] Workaround Autoscaling launch_configuration associate_public_ip_address - Disable computation of property until fixed. diff --git a/patches/0010-Add-ECR-credentials_data_source.patch b/patches/0010-Add-ECR-credentials_data_source.patch index 52a801d18f6..4ff4e42e1a4 100644 --- a/patches/0010-Add-ECR-credentials_data_source.patch +++ b/patches/0010-Add-ECR-credentials_data_source.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Fri, 4 Nov 2022 17:36:34 +0000 -Subject: [PATCH 10/46] Add ECR credentials_data_source +Subject: [PATCH 10/47] Add ECR credentials_data_source diff --git a/internal/provider/provider.go b/internal/provider/provider.go diff --git a/patches/0011-Add-custom-appautoscaling-examples.patch b/patches/0011-Add-custom-appautoscaling-examples.patch index 7bab5c903b0..4b40a3cd828 100644 --- a/patches/0011-Add-custom-appautoscaling-examples.patch +++ b/patches/0011-Add-custom-appautoscaling-examples.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Wed, 9 Nov 2022 17:37:35 +0000 -Subject: [PATCH 11/46] Add custom appautoscaling examples +Subject: [PATCH 11/47] Add custom appautoscaling examples diff --git a/website/docs/r/appautoscaling_policy.html.markdown b/website/docs/r/appautoscaling_policy.html.markdown diff --git a/patches/0012-Add-dedicated_host-docs.patch b/patches/0012-Add-dedicated_host-docs.patch index 99abe6161cc..1ec2d763ea2 100644 --- a/patches/0012-Add-dedicated_host-docs.patch +++ b/patches/0012-Add-dedicated_host-docs.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Tue, 15 Nov 2022 10:08:05 +0000 -Subject: [PATCH 12/46] Add dedicated_host docs +Subject: [PATCH 12/47] Add dedicated_host docs diff --git a/website/docs/d/dedicated_host.html.markdown b/website/docs/d/dedicated_host.html.markdown diff --git a/patches/0013-Revert-WAF-schema-changes.patch b/patches/0013-Revert-WAF-schema-changes.patch index 5d550eaead9..600c6fb2c2c 100644 --- a/patches/0013-Revert-WAF-schema-changes.patch +++ b/patches/0013-Revert-WAF-schema-changes.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Tue, 15 Nov 2022 13:59:57 +0000 -Subject: [PATCH 13/46] Revert WAF schema changes +Subject: [PATCH 13/47] Revert WAF schema changes - This causes far too many types to be generated downstream. diff --git a/patches/0014-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch b/patches/0014-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch index 143601ac07a..4936b376620 100644 --- a/patches/0014-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch +++ b/patches/0014-Catch-cty-panic-in-new-resourceTopicSubscriptionCust.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Thomas Kappler Date: Thu, 1 Dec 2022 10:56:32 -0800 -Subject: [PATCH 14/46] Catch cty panic in new +Subject: [PATCH 14/47] Catch cty panic in new resourceTopicSubscriptionCustomizeDiff. The root cause is not fully understood yet but this might unblock us. diff --git a/patches/0015-add-matchmaking-configuration-72.patch b/patches/0015-add-matchmaking-configuration-72.patch index 70b885edec9..e50ea603752 100644 --- a/patches/0015-add-matchmaking-configuration-72.patch +++ b/patches/0015-add-matchmaking-configuration-72.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Lee Briggs Date: Wed, 21 Dec 2022 12:23:59 -0800 -Subject: [PATCH 15/46] add matchmaking configuration (#72) +Subject: [PATCH 15/47] add matchmaking configuration (#72) * add matchmaking configuration * add matchmaking rule set diff --git a/patches/0016-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch b/patches/0016-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch index c3a2c388724..c32e4822cb2 100644 --- a/patches/0016-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch +++ b/patches/0016-Reverts-patches-to-S3BucketLegacy-and-GameLift.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Kyle Pitzen Date: Fri, 27 Jan 2023 09:37:43 -0600 -Subject: [PATCH 16/46] Reverts patches to S3BucketLegacy and GameLift +Subject: [PATCH 16/47] Reverts patches to S3BucketLegacy and GameLift Previously, we were pulling along patches which removed a few simplifications to waiters in AWS GameLift, and a newer patch which plumbed through context.Context diff --git a/patches/0017-Revert-Update-endpointHashIPAddress.patch b/patches/0017-Revert-Update-endpointHashIPAddress.patch index f1246096a63..2d0f47282c5 100644 --- a/patches/0017-Revert-Update-endpointHashIPAddress.patch +++ b/patches/0017-Revert-Update-endpointHashIPAddress.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Thomas Kappler Date: Fri, 3 Feb 2023 17:31:18 -0800 -Subject: [PATCH 17/46] Revert "Update endpointHashIPAddress" +Subject: [PATCH 17/47] Revert "Update endpointHashIPAddress" This reverts commit 2197a6c2c7a0ff306cec3432acb9f5680866f034. diff --git a/patches/0018-Fixup-gamelift-context.patch b/patches/0018-Fixup-gamelift-context.patch index 48f5a6d9e5d..1723808654b 100644 --- a/patches/0018-Fixup-gamelift-context.patch +++ b/patches/0018-Fixup-gamelift-context.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Thu, 9 Mar 2023 14:50:51 +0000 -Subject: [PATCH 18/46] Fixup gamelift context +Subject: [PATCH 18/47] Fixup gamelift context diff --git a/internal/service/gamelift/matchmaking_configuration.go b/internal/service/gamelift/matchmaking_configuration.go diff --git a/patches/0019-Change-default-descriptions-to-Managed-by-Pulumi.patch b/patches/0019-Change-default-descriptions-to-Managed-by-Pulumi.patch index f41a0280637..3ca65d434c6 100644 --- a/patches/0019-Change-default-descriptions-to-Managed-by-Pulumi.patch +++ b/patches/0019-Change-default-descriptions-to-Managed-by-Pulumi.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Tue, 28 Feb 2023 15:19:24 +0000 -Subject: [PATCH 19/46] Change default descriptions to "Managed by Pulumi" +Subject: [PATCH 19/47] Change default descriptions to "Managed by Pulumi" diff --git a/internal/service/apigateway/api_key.go b/internal/service/apigateway/api_key.go diff --git a/patches/0020-remove-required-elements-from-schema-and-fix-tests-7.patch b/patches/0020-remove-required-elements-from-schema-and-fix-tests-7.patch index 14596f5dd27..0f68dccb642 100644 --- a/patches/0020-remove-required-elements-from-schema-and-fix-tests-7.patch +++ b/patches/0020-remove-required-elements-from-schema-and-fix-tests-7.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Daniel Bradley Date: Tue, 28 Mar 2023 19:54:00 +0100 -Subject: [PATCH 20/46] remove required elements from schema and fix tests +Subject: [PATCH 20/47] remove required elements from schema and fix tests (#77) Co-authored-by: Lee Briggs diff --git a/patches/0021-Temp-remove-cognito_identity_pool_roles_attachment-e.patch b/patches/0021-Temp-remove-cognito_identity_pool_roles_attachment-e.patch index f8c5397927a..83e913b0337 100644 --- a/patches/0021-Temp-remove-cognito_identity_pool_roles_attachment-e.patch +++ b/patches/0021-Temp-remove-cognito_identity_pool_roles_attachment-e.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Mon, 24 Apr 2023 10:36:36 -0400 -Subject: [PATCH 21/46] Temp remove cognito_identity_pool_roles_attachment +Subject: [PATCH 21/47] Temp remove cognito_identity_pool_roles_attachment example beacuse of flaky translation diff --git a/patches/0022-Fix-elbv2-target-group-read-to-workaround-2517.patch b/patches/0022-Fix-elbv2-target-group-read-to-workaround-2517.patch index 5f49631e8ae..787f3791814 100644 --- a/patches/0022-Fix-elbv2-target-group-read-to-workaround-2517.patch +++ b/patches/0022-Fix-elbv2-target-group-read-to-workaround-2517.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Fri, 19 Jan 2024 17:36:47 -0500 -Subject: [PATCH 22/46] Fix elbv2 target group read to workaround #2517 +Subject: [PATCH 22/47] Fix elbv2 target group read to workaround #2517 diff --git a/internal/service/elbv2/target_group.go b/internal/service/elbv2/target_group.go diff --git a/patches/0023-Fix-spurrious-json-diff-for-redrive_policy.patch b/patches/0023-Fix-spurrious-json-diff-for-redrive_policy.patch index a9475a5e7ce..f4340917b8a 100644 --- a/patches/0023-Fix-spurrious-json-diff-for-redrive_policy.patch +++ b/patches/0023-Fix-spurrious-json-diff-for-redrive_policy.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Ramon Quitales Date: Thu, 18 May 2023 15:21:33 -0700 -Subject: [PATCH 23/46] Fix spurrious json diff for redrive_policy +Subject: [PATCH 23/47] Fix spurrious json diff for redrive_policy We need to normalize the json input to compare agasint the one stored in state. diff --git a/patches/0024-Provide-context-to-conns.patch b/patches/0024-Provide-context-to-conns.patch index f8bd04d0257..23410423d69 100644 --- a/patches/0024-Provide-context-to-conns.patch +++ b/patches/0024-Provide-context-to-conns.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Ian Wahbe Date: Mon, 10 Jul 2023 11:51:24 +0200 -Subject: [PATCH 24/46] Provide context to conns +Subject: [PATCH 24/47] Provide context to conns diff --git a/internal/service/ecr/credentials_data_source.go b/internal/service/ecr/credentials_data_source.go diff --git a/patches/0025-Match-the-tags-behavior-of-other-resources.patch b/patches/0025-Match-the-tags-behavior-of-other-resources.patch index d5997516071..cb53c214773 100644 --- a/patches/0025-Match-the-tags-behavior-of-other-resources.patch +++ b/patches/0025-Match-the-tags-behavior-of-other-resources.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Ian Wahbe Date: Wed, 2 Aug 2023 14:12:03 +0200 -Subject: [PATCH 25/46] Match the "tags" behavior of other resources +Subject: [PATCH 25/47] Match the "tags" behavior of other resources diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go diff --git a/patches/0026-move-shim-logic-to-upstream-as-a-patch.patch b/patches/0026-move-shim-logic-to-upstream-as-a-patch.patch index 6a355e69ac0..b753e663ce0 100644 --- a/patches/0026-move-shim-logic-to-upstream-as-a-patch.patch +++ b/patches/0026-move-shim-logic-to-upstream-as-a-patch.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Guinevere Saenger Date: Wed, 6 Sep 2023 10:43:30 -0700 -Subject: [PATCH 26/46] move shim logic to upstream as a patch +Subject: [PATCH 26/47] move shim logic to upstream as a patch diff --git a/shim/shim.go b/shim/shim.go diff --git a/patches/0027-Restore-S3ConnURICleaningDisabled.patch b/patches/0027-Restore-S3ConnURICleaningDisabled.patch index 5cd876336de..27334fcbbc3 100644 --- a/patches/0027-Restore-S3ConnURICleaningDisabled.patch +++ b/patches/0027-Restore-S3ConnURICleaningDisabled.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Mon, 25 Sep 2023 15:22:30 -0400 -Subject: [PATCH 27/46] Restore S3ConnURICleaningDisabled +Subject: [PATCH 27/47] Restore S3ConnURICleaningDisabled diff --git a/internal/conns/awsclient.go b/internal/conns/awsclient.go diff --git a/patches/0028-Do-not-compute-tags_all-at-TF-level.patch b/patches/0028-Do-not-compute-tags_all-at-TF-level.patch index c143427ab87..fdefe267590 100644 --- a/patches/0028-Do-not-compute-tags_all-at-TF-level.patch +++ b/patches/0028-Do-not-compute-tags_all-at-TF-level.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Mon, 6 Nov 2023 11:17:16 -0500 -Subject: [PATCH 28/46] Do not compute tags_all at TF level +Subject: [PATCH 28/47] Do not compute tags_all at TF level diff --git a/internal/framework/base.go b/internal/framework/base.go diff --git a/patches/0029-aws_eks_cluster-implement-default_addons_to_remove.patch b/patches/0029-aws_eks_cluster-implement-default_addons_to_remove.patch index 58b457cbec2..70c0cf2a414 100644 --- a/patches/0029-aws_eks_cluster-implement-default_addons_to_remove.patch +++ b/patches/0029-aws_eks_cluster-implement-default_addons_to_remove.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Wed, 15 Nov 2023 11:53:09 -0500 -Subject: [PATCH 29/46] aws_eks_cluster: implement default_addons_to_remove +Subject: [PATCH 29/47] aws_eks_cluster: implement default_addons_to_remove diff --git a/internal/service/eks/cluster.go b/internal/service/eks/cluster.go diff --git a/patches/0030-Fix-markTagsAllNotComputedForResources-to-recognize-.patch b/patches/0030-Fix-markTagsAllNotComputedForResources-to-recognize-.patch index 926181efce6..05a1ec88b1c 100644 --- a/patches/0030-Fix-markTagsAllNotComputedForResources-to-recognize-.patch +++ b/patches/0030-Fix-markTagsAllNotComputedForResources-to-recognize-.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Wed, 29 Nov 2023 17:23:09 -0500 -Subject: [PATCH 30/46] Fix markTagsAllNotComputedForResources to recognize +Subject: [PATCH 30/47] Fix markTagsAllNotComputedForResources to recognize SchemaFunc diff --git a/patches/0031-Optimize-startup-performance.patch b/patches/0031-Optimize-startup-performance.patch index 10af671bf24..88ec8afa7b8 100644 --- a/patches/0031-Optimize-startup-performance.patch +++ b/patches/0031-Optimize-startup-performance.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Thu, 30 Nov 2023 14:28:37 -0500 -Subject: [PATCH 31/46] Optimize startup performance +Subject: [PATCH 31/47] Optimize startup performance diff --git a/internal/provider/provider.go b/internal/provider/provider.go diff --git a/patches/0032-Fix-job-queue-sdkv2-migration.patch b/patches/0032-Fix-job-queue-sdkv2-migration.patch index 348e7a8a229..96b31d7cda1 100644 --- a/patches/0032-Fix-job-queue-sdkv2-migration.patch +++ b/patches/0032-Fix-job-queue-sdkv2-migration.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Wed, 6 Dec 2023 23:41:21 -0500 -Subject: [PATCH 32/46] Fix job queue sdkv2 migration +Subject: [PATCH 32/47] Fix job queue sdkv2 migration diff --git a/internal/service/batch/job_queue_schema.go b/internal/service/batch/job_queue_schema.go diff --git a/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch b/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch index e4df3ef4beb..3197a207a22 100644 --- a/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch +++ b/patches/0033-DisableTagSchemaCheck-for-PF-provider.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Wed, 6 Dec 2023 23:44:25 -0500 -Subject: [PATCH 33/46] DisableTagSchemaCheck for PF provider +Subject: [PATCH 33/47] DisableTagSchemaCheck for PF provider diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go diff --git a/patches/0034-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch b/patches/0034-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch index c1773ce4e69..b849667e7de 100644 --- a/patches/0034-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch +++ b/patches/0034-Run-scripts-patch_computed_only.sh-to-patch-eks-pod_.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Thu, 7 Dec 2023 00:05:40 -0500 -Subject: [PATCH 34/46] Run scripts/patch_computed_only.sh to patch +Subject: [PATCH 34/47] Run scripts/patch_computed_only.sh to patch eks/pod_identity_association and more diff --git a/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch b/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch index 136cc737b1a..6f160eb4c7c 100644 --- a/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch +++ b/patches/0035-Fail-fast-when-PF-resources-are-dropped.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Thu, 7 Dec 2023 00:18:14 -0500 -Subject: [PATCH 35/46] Fail fast when PF resources are dropped +Subject: [PATCH 35/47] Fail fast when PF resources are dropped diff --git a/internal/provider/fwprovider/provider.go b/internal/provider/fwprovider/provider.go diff --git a/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch b/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch index a8add7ad1ee..2e9a74db4e5 100644 --- a/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch +++ b/patches/0036-Fix-tags_all-Computed-for-PF-resources.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Wed, 7 Feb 2024 12:24:44 -0500 -Subject: [PATCH 36/46] Fix tags_all Computed for PF resources +Subject: [PATCH 36/47] Fix tags_all Computed for PF resources diff --git a/internal/service/amp/scraper.go b/internal/service/amp/scraper.go diff --git a/patches/0037-Disable-retry-for-KMS-access-denied-in-lambda.patch b/patches/0037-Disable-retry-for-KMS-access-denied-in-lambda.patch index d051c94c1b7..5805c4e0a7d 100644 --- a/patches/0037-Disable-retry-for-KMS-access-denied-in-lambda.patch +++ b/patches/0037-Disable-retry-for-KMS-access-denied-in-lambda.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Mon, 8 Jan 2024 16:58:44 -0500 -Subject: [PATCH 37/46] Disable retry for KMS access denied in lambda +Subject: [PATCH 37/47] 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 diff --git a/patches/0038-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch b/patches/0038-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch index 1d48eb30e6b..04d54aa9b67 100644 --- a/patches/0038-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch +++ b/patches/0038-Patch-ACM-retry-to-not-retry-after-LimitExceededExce.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Fri, 19 Jan 2024 18:08:51 -0500 -Subject: [PATCH 38/46] Patch ACM retry to not retry after +Subject: [PATCH 38/47] Patch ACM retry to not retry after LimitExceededException (#3290) diff --git a/patches/0039-Restore-legacy-bucket.patch b/patches/0039-Restore-legacy-bucket.patch index ed14f85e54f..fce3b8e42d6 100644 --- a/patches/0039-Restore-legacy-bucket.patch +++ b/patches/0039-Restore-legacy-bucket.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Venelin Date: Wed, 28 Feb 2024 16:01:28 +0000 -Subject: [PATCH 39/46] Restore legacy bucket +Subject: [PATCH 39/47] Restore legacy bucket diff --git a/go.mod b/go.mod diff --git a/patches/0040-Patch-osis_pipeline-tags-flags.patch b/patches/0040-Patch-osis_pipeline-tags-flags.patch index 60bfb2f3b52..3590c51ce23 100644 --- a/patches/0040-Patch-osis_pipeline-tags-flags.patch +++ b/patches/0040-Patch-osis_pipeline-tags-flags.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Fri, 9 Feb 2024 14:39:32 -0500 -Subject: [PATCH 40/46] Patch osis_pipeline tags flags +Subject: [PATCH 40/47] Patch osis_pipeline tags flags diff --git a/internal/service/osis/pipeline.go b/internal/service/osis/pipeline.go diff --git a/patches/0041-Include-CloudWatch-Logging-section-in-Lambda-Example.patch b/patches/0041-Include-CloudWatch-Logging-section-in-Lambda-Example.patch index 227b7b74b8f..f853a39efbf 100644 --- a/patches/0041-Include-CloudWatch-Logging-section-in-Lambda-Example.patch +++ b/patches/0041-Include-CloudWatch-Logging-section-in-Lambda-Example.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: guineveresaenger Date: Fri, 9 Feb 2024 15:25:41 -0800 -Subject: [PATCH 41/46] Include CloudWatch Logging section in Lambda Example +Subject: [PATCH 41/47] Include CloudWatch Logging section in Lambda Example diff --git a/website/docs/r/lambda_function.html.markdown b/website/docs/r/lambda_function.html.markdown diff --git a/patches/0042-Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch b/patches/0042-Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch index 86416bece6d..b2c23f9e9e1 100644 --- a/patches/0042-Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch +++ b/patches/0042-Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Venelin Date: Wed, 14 Feb 2024 14:49:33 +0000 -Subject: [PATCH 42/46] Revert "Merge pull request #35678 from +Subject: [PATCH 42/47] Revert "Merge pull request #35678 from hashicorp/b-elbv2-unexpected-diff" This reverts commit bfcae6ad3e8a226083f803b40e772e045ec78baa, reversing diff --git a/patches/0043-Revert-Merge-pull-request-35671-from-hashicorp-b-lb-.patch b/patches/0043-Revert-Merge-pull-request-35671-from-hashicorp-b-lb-.patch index e0df2e353e3..00c877ed8d8 100644 --- a/patches/0043-Revert-Merge-pull-request-35671-from-hashicorp-b-lb-.patch +++ b/patches/0043-Revert-Merge-pull-request-35671-from-hashicorp-b-lb-.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Venelin Date: Wed, 14 Feb 2024 14:49:38 +0000 -Subject: [PATCH 43/46] Revert "Merge pull request #35671 from +Subject: [PATCH 43/47] Revert "Merge pull request #35671 from hashicorp/b-lb-listener-stickiness-3" This reverts commit 32a681fcfcd8d78c5ac9e199384a980bb71c82ed, reversing diff --git a/patches/0044-Allow-creating-lambdas-without-code-related-properti.patch b/patches/0044-Allow-creating-lambdas-without-code-related-properti.patch index ab65db48f43..12caaa3c439 100644 --- a/patches/0044-Allow-creating-lambdas-without-code-related-properti.patch +++ b/patches/0044-Allow-creating-lambdas-without-code-related-properti.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Venelin Date: Tue, 13 Feb 2024 11:36:02 +0000 -Subject: [PATCH 44/46] Allow creating lambdas without code related properties +Subject: [PATCH 44/47] Allow creating lambdas without code related properties diff --git a/internal/service/lambda/function.go b/internal/service/lambda/function.go diff --git a/patches/0045-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch b/patches/0045-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch index 73b46fd6c8e..127b3b38a17 100644 --- a/patches/0045-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch +++ b/patches/0045-Do-not-Compute-tags_all-of-aws_bedrock_provisioned_m.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: guineveresaenger Date: Wed, 21 Feb 2024 14:46:27 -0800 -Subject: [PATCH 45/46] Do not Compute tags_all of +Subject: [PATCH 45/47] Do not Compute tags_all of aws_bedrock_provisioned_model_throughput diff --git a/patches/0046-fix-legacy-bucket-context.patch b/patches/0046-fix-legacy-bucket-context.patch index 4c254711062..8be2ea1549f 100644 --- a/patches/0046-fix-legacy-bucket-context.patch +++ b/patches/0046-fix-legacy-bucket-context.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Venelin Date: Wed, 28 Feb 2024 16:06:02 +0000 -Subject: [PATCH 46/46] fix legacy bucket context +Subject: [PATCH 46/47] fix legacy bucket context diff --git a/internal/service/s3legacy/bucket_legacy.go b/internal/service/s3legacy/bucket_legacy.go diff --git a/patches/0047-securitylake_subscriber-tags_all-patch.patch b/patches/0047-securitylake_subscriber-tags_all-patch.patch new file mode 100644 index 00000000000..23810f9a855 --- /dev/null +++ b/patches/0047-securitylake_subscriber-tags_all-patch.patch @@ -0,0 +1,19 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Anton Tayanovskyy +Date: Tue, 12 Mar 2024 18:05:28 -0400 +Subject: [PATCH 47/47] securitylake_subscriber tags_all patch + + +diff --git a/internal/service/securitylake/subscriber.go b/internal/service/securitylake/subscriber.go +index 39cd7b84ed..5dc325333a 100644 +--- a/internal/service/securitylake/subscriber.go ++++ b/internal/service/securitylake/subscriber.go +@@ -96,7 +96,7 @@ func (r *subscriberResource) Schema(ctx context.Context, request resource.Schema + }, + names.AttrID: framework.IDAttribute(), + names.AttrTags: tftags.TagsAttribute(), +- names.AttrTagsAll: tftags.TagsAttributeComputedOnly(), ++ names.AttrTagsAll: tftags.TagsAttribute(), + }, + Blocks: map[string]schema.Block{ + "source": schema.ListNestedBlock{ From 0b578c243c58e22166043336b92dd44f552d4ae1 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 18:16:19 -0400 Subject: [PATCH 5/6] make tfgen --- .../pulumi-resource-aws/bridge-metadata.json | 47 ++ .../runtime-bridge-metadata.json | 2 +- provider/cmd/pulumi-resource-aws/schema.json | 662 ++++++++++++++++-- 3 files changed, 668 insertions(+), 43 deletions(-) diff --git a/provider/cmd/pulumi-resource-aws/bridge-metadata.json b/provider/cmd/pulumi-resource-aws/bridge-metadata.json index cdb39d099bd..6dae7662476 100644 --- a/provider/cmd/pulumi-resource-aws/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-aws/bridge-metadata.json @@ -47,6 +47,10 @@ "current": "aws:account/primaryContact:PrimaryContact", "majorVersion": 6 }, + "aws_account_region": { + "current": "aws:account/region:Region", + "majorVersion": 6 + }, "aws_acm_certificate": { "current": "aws:acm/certificate:Certificate", "majorVersion": 6, @@ -3786,6 +3790,9 @@ "current": "aws:batch/jobQueue:JobQueue", "majorVersion": 6, "fields": { + "compute_environment_order": { + "maxItemsOne": false + }, "compute_environments": { "maxItemsOne": false } @@ -156237,6 +156244,38 @@ } } }, + "aws_securitylake_subscriber": { + "current": "aws:securitylake/subscriber:Subscriber", + "majorVersion": 6, + "fields": { + "source": { + "maxItemsOne": true, + "elem": { + "fields": { + "aws_log_source_resource": { + "maxItemsOne": true + }, + "custom_log_source_resource": { + "maxItemsOne": true, + "elem": { + "fields": { + "attributes": { + "maxItemsOne": false + }, + "provider": { + "maxItemsOne": false + } + } + } + } + } + } + }, + "subscriber_identity": { + "maxItemsOne": true + } + } + }, "aws_serverlessapplicationrepository_cloudformation_stack": { "current": "aws:serverlessrepository/cloudFormationStack:CloudFormationStack", "majorVersion": 6, @@ -226949,6 +226988,12 @@ "supported_timezones": { "maxItemsOne": false }, + "valid_major_targets": { + "maxItemsOne": false + }, + "valid_minor_targets": { + "maxItemsOne": false + }, "valid_upgrade_targets": { "maxItemsOne": false } @@ -228650,6 +228695,7 @@ "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, @@ -229793,6 +229839,7 @@ "aws:securitylake/awsLogSource:AwsLogSource": 1, "aws:securitylake/customLogSource:CustomLogSource": 1, "aws:securitylake/dataLake:DataLake": 1, + "aws:securitylake/subscriber:Subscriber": 1, "aws:serverlessrepository/cloudFormationStack:CloudFormationStack": 0, "aws:servicecatalog/budgetResourceAssociation:BudgetResourceAssociation": 0, "aws:servicecatalog/constraint:Constraint": 0, diff --git a/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json b/provider/cmd/pulumi-resource-aws/runtime-bridge-metadata.json index 6cb931e3686..a433fec108e 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_eks_cluster":{"maxItemsOneOverrides":{"certificate_authority":true}},"aws_fsx_openzfs_file_system":{"maxItemsOneOverrides":{"subnet_ids":true}}},"datasources":{"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: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":0,"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/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: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/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/plan:Plan":0,"aws:backup/regionSettings:RegionSettings":0,"aws:backup/reportPlan:ReportPlan":0,"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:bedrock/customModel:CustomModel":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: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/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/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: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/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/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/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: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: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: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: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: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:dynamodb/contributorInsights:ContributorInsights":0,"aws:dynamodb/globalTable:GlobalTable":0,"aws:dynamodb/kinesisStreamingDestination:KinesisStreamingDestination":0,"aws:dynamodb/table:Table":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/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/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/fleet:Fleet":0,"aws:ec2/flowLog:FlowLog":0,"aws:ec2/imageBlockPublicAccess:ImageBlockPublicAccess":0,"aws:ec2/instance:Instance":0,"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/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/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/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/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/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: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/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/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: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/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/groupPolicy:GroupPolicy":0,"aws:iam/groupPolicyAttachment:GroupPolicyAttachment":0,"aws:iam/instanceProfile:InstanceProfile":0,"aws:iam/openIdConnectProvider:OpenIdConnectProvider":0,"aws:iam/policy:Policy":0,"aws:iam/policyAttachment:PolicyAttachment":0,"aws:iam/role:Role":0,"aws:iam/rolePolicy:RolePolicy":0,"aws:iam/rolePolicyAttachment:RolePolicyAttachment":0,"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/userPolicy:UserPolicy":0,"aws:iam/userPolicyAttachment:UserPolicyAttachment":0,"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/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":0,"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/dataLakeSettings:DataLakeSettings":0,"aws:lakeformation/lfTag:LfTag":0,"aws:lakeformation/permissions:Permissions":0,"aws:lakeformation/resource:Resource":0,"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/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: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: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/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/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: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/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:oam/link:Link":0,"aws:oam/sink:Sink":0,"aws:oam/sinkPolicy:SinkPolicy":0,"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: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/eventStream:EventStream":0,"aws:pinpoint/gcmChannel:GcmChannel":0,"aws:pinpoint/smsChannel:SmsChannel":0,"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/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/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/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/parameterGroup:ParameterGroup":0,"aws:redshift/partner:Partner":0,"aws:redshift/resourcePolicy:ResourcePolicy":0,"aws:redshift/scheduledAction:ScheduledAction":0,"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/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: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/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: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/humanTaskUI:HumanTaskUI":0,"aws:sagemaker/image:Image":0,"aws:sagemaker/imageVersion:ImageVersion":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/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/standardsSubscription:StandardsSubscription":0,"aws:securitylake/awsLogSource:AwsLogSource":1,"aws:securitylake/customLogSource:CustomLogSource":1,"aws:securitylake/dataLake:DataLake":1,"aws:serverlessrepository/cloudFormationStack:CloudFormationStack":0,"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/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: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/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: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/policyStore:PolicyStore":1,"aws:verifiedpermissions/policyTemplate:PolicyTemplate":1,"aws:verifiedpermissions/schema:Schema":1,"aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule":1,"aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule":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/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: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/getCustomModel:getCustomModel":1,"aws:bedrock/getCustomModels:getCustomModels":1,"aws:bedrockfoundation/getModel:getModel":1,"aws:bedrockfoundation/getModels:getModels":1,"aws:budgets/getBudget:getBudget":0,"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/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: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/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: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/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/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/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/getPullThroughCacheRule:getPullThroughCacheRule":0,"aws:ecr/getRepositories:getRepositories":1,"aws:ecr/getRepository:getRepository":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/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/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/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: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/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: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/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/getDataSet:getDataSet":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/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/getServiceAccount:getServiceAccount":0,"aws:redshift/getSubnetGroup:getSubnetGroup":0,"aws:redshiftserverless/getCredentials:getCredentials":0,"aws:redshiftserverless/getNamespace:getNamespace":0,"aws:redshiftserverless/getWorkgroup:getWorkgroup":0,"aws:resourcegroupstaggingapi/getResources:getResources":0,"aws:route53/getDelegationSet:getDelegationSet":0,"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: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/getSecrets:getSecrets":0,"aws:serverlessrepository/getApplication:getApplication":0,"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: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: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/getPrincipalApplicationAssignments:getPrincipalApplicationAssignments":1,"aws:storagegateway/getLocalDisk:getLocalDisk":0,"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_eks_cluster":{"maxItemsOneOverrides":{"certificate_authority":true}},"aws_fsx_openzfs_file_system":{"maxItemsOneOverrides":{"subnet_ids":true}}},"datasources":{"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":0,"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/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: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/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/plan:Plan":0,"aws:backup/regionSettings:RegionSettings":0,"aws:backup/reportPlan:ReportPlan":0,"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:bedrock/customModel:CustomModel":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: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/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/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: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/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/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/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: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: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: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: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: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:dynamodb/contributorInsights:ContributorInsights":0,"aws:dynamodb/globalTable:GlobalTable":0,"aws:dynamodb/kinesisStreamingDestination:KinesisStreamingDestination":0,"aws:dynamodb/table:Table":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/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/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/fleet:Fleet":0,"aws:ec2/flowLog:FlowLog":0,"aws:ec2/imageBlockPublicAccess:ImageBlockPublicAccess":0,"aws:ec2/instance:Instance":0,"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/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/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/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/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/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: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/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/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: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/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/groupPolicy:GroupPolicy":0,"aws:iam/groupPolicyAttachment:GroupPolicyAttachment":0,"aws:iam/instanceProfile:InstanceProfile":0,"aws:iam/openIdConnectProvider:OpenIdConnectProvider":0,"aws:iam/policy:Policy":0,"aws:iam/policyAttachment:PolicyAttachment":0,"aws:iam/role:Role":0,"aws:iam/rolePolicy:RolePolicy":0,"aws:iam/rolePolicyAttachment:RolePolicyAttachment":0,"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/userPolicy:UserPolicy":0,"aws:iam/userPolicyAttachment:UserPolicyAttachment":0,"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/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":0,"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/dataLakeSettings:DataLakeSettings":0,"aws:lakeformation/lfTag:LfTag":0,"aws:lakeformation/permissions:Permissions":0,"aws:lakeformation/resource:Resource":0,"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/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: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: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/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/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: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/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:oam/link:Link":0,"aws:oam/sink:Sink":0,"aws:oam/sinkPolicy:SinkPolicy":0,"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: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/eventStream:EventStream":0,"aws:pinpoint/gcmChannel:GcmChannel":0,"aws:pinpoint/smsChannel:SmsChannel":0,"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/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/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/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/parameterGroup:ParameterGroup":0,"aws:redshift/partner:Partner":0,"aws:redshift/resourcePolicy:ResourcePolicy":0,"aws:redshift/scheduledAction:ScheduledAction":0,"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/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: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/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: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/humanTaskUI:HumanTaskUI":0,"aws:sagemaker/image:Image":0,"aws:sagemaker/imageVersion:ImageVersion":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/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/standardsSubscription:StandardsSubscription":0,"aws:securitylake/awsLogSource:AwsLogSource":1,"aws:securitylake/customLogSource:CustomLogSource":1,"aws:securitylake/dataLake:DataLake":1,"aws:securitylake/subscriber:Subscriber":1,"aws:serverlessrepository/cloudFormationStack:CloudFormationStack":0,"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/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: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/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: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/policyStore:PolicyStore":1,"aws:verifiedpermissions/policyTemplate:PolicyTemplate":1,"aws:verifiedpermissions/schema:Schema":1,"aws:vpc/securityGroupEgressRule:SecurityGroupEgressRule":1,"aws:vpc/securityGroupIngressRule:SecurityGroupIngressRule":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/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: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/getCustomModel:getCustomModel":1,"aws:bedrock/getCustomModels:getCustomModels":1,"aws:bedrockfoundation/getModel:getModel":1,"aws:bedrockfoundation/getModels:getModels":1,"aws:budgets/getBudget:getBudget":0,"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/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: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/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: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/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/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/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/getPullThroughCacheRule:getPullThroughCacheRule":0,"aws:ecr/getRepositories:getRepositories":1,"aws:ecr/getRepository:getRepository":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/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/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/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: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/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: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/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/getDataSet:getDataSet":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/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/getServiceAccount:getServiceAccount":0,"aws:redshift/getSubnetGroup:getSubnetGroup":0,"aws:redshiftserverless/getCredentials:getCredentials":0,"aws:redshiftserverless/getNamespace:getNamespace":0,"aws:redshiftserverless/getWorkgroup:getWorkgroup":0,"aws:resourcegroupstaggingapi/getResources:getResources":0,"aws:route53/getDelegationSet:getDelegationSet":0,"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: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/getSecrets:getSecrets":0,"aws:serverlessrepository/getApplication:getApplication":0,"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: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: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/getPrincipalApplicationAssignments:getPrincipalApplicationAssignments":1,"aws:storagegateway/getLocalDisk:getLocalDisk":0,"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 ea0e8195776..75a0c4b271f 100644 --- a/provider/cmd/pulumi-resource-aws/schema.json +++ b/provider/cmd/pulumi-resource-aws/schema.json @@ -19166,6 +19166,23 @@ }, "type": "object" }, + "aws:batch/JobQueueComputeEnvironmentOrder:JobQueueComputeEnvironmentOrder": { + "properties": { + "computeEnvironment": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the compute environment.\n" + }, + "order": { + "type": "integer", + "description": "The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first.\n" + } + }, + "type": "object", + "required": [ + "computeEnvironment", + "order" + ] + }, "aws:batch/JobQueueTimeouts:JobQueueTimeouts": { "properties": { "create": { @@ -63094,7 +63111,7 @@ "properties": { "name": { "type": "string", - "description": "The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`.\n", + "description": "The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`.\n", "willReplaceOnChanges": true }, "status": { @@ -109758,11 +109775,15 @@ "items": { "$ref": "#/types/aws:opensearch/DomainAutoTuneOptionsMaintenanceSchedule:DomainAutoTuneOptionsMaintenanceSchedule" }, - "description": "Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below.\n" + "description": "Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below.\n\n**NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`.\n" }, "rollbackOnDisable": { "type": "string", "description": "Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`.\n" + }, + "useOffPeakWindow": { + "type": "boolean", + "description": "Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`.\n" } }, "type": "object", @@ -109773,7 +109794,6 @@ "nodejs": { "requiredOutputs": [ "desiredState", - "maintenanceSchedules", "rollbackOnDisable" ] } @@ -132664,6 +132684,139 @@ }, "type": "object" }, + "aws:securitylake/SubscriberSource:SubscriberSource": { + "properties": { + "awsLogSourceResource": { + "$ref": "#/types/aws:securitylake/SubscriberSourceAwsLogSourceResource:SubscriberSourceAwsLogSourceResource", + "description": "Amazon Security Lake supports log and event collection for natively supported AWS services.\n" + }, + "customLogSourceResource": { + "$ref": "#/types/aws:securitylake/SubscriberSourceCustomLogSourceResource:SubscriberSourceCustomLogSourceResource", + "description": "Amazon Security Lake supports custom source types.\n" + } + }, + "type": "object" + }, + "aws:securitylake/SubscriberSourceAwsLogSourceResource:SubscriberSourceAwsLogSourceResource": { + "properties": { + "sourceName": { + "type": "string", + "description": "The name for a third-party custom source. This must be a Regionally unique value.\n" + }, + "sourceVersion": { + "type": "string", + "description": "The version for a third-party custom source. This must be a Regionally unique value.\n" + } + }, + "type": "object" + }, + "aws:securitylake/SubscriberSourceCustomLogSourceResource:SubscriberSourceCustomLogSourceResource": { + "properties": { + "attributes": { + "type": "array", + "items": { + "$ref": "#/types/aws:securitylake/SubscriberSourceCustomLogSourceResourceAttribute:SubscriberSourceCustomLogSourceResourceAttribute" + }, + "description": "The attributes of a third-party custom source.\n" + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/types/aws:securitylake/SubscriberSourceCustomLogSourceResourceProvider:SubscriberSourceCustomLogSourceResourceProvider" + } + }, + "sourceName": { + "type": "string", + "description": "The name for a third-party custom source. This must be a Regionally unique value.\n" + }, + "sourceVersion": { + "type": "string", + "description": "The version for a third-party custom source. This must be a Regionally unique value.\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "attributes", + "providers" + ] + } + } + }, + "aws:securitylake/SubscriberSourceCustomLogSourceResourceAttribute:SubscriberSourceCustomLogSourceResourceAttribute": { + "properties": { + "crawlerArn": { + "type": "string", + "description": "The ARN of the AWS Glue crawler.\n" + }, + "databaseArn": { + "type": "string", + "description": "The ARN of the AWS Glue database where results are written.\n" + }, + "tableArn": { + "type": "string", + "description": "The ARN of the AWS Glue table.\n" + } + }, + "type": "object", + "required": [ + "crawlerArn", + "databaseArn", + "tableArn" + ] + }, + "aws:securitylake/SubscriberSourceCustomLogSourceResourceProvider:SubscriberSourceCustomLogSourceResourceProvider": { + "properties": { + "location": { + "type": "string", + "description": "The location of the partition in the Amazon S3 bucket for Security Lake.\n" + }, + "roleArn": { + "type": "string", + "description": "The ARN of the IAM role to be used by the entity putting logs into your custom source partition.\n" + } + }, + "type": "object", + "required": [ + "location", + "roleArn" + ] + }, + "aws:securitylake/SubscriberSubscriberIdentity:SubscriberSubscriberIdentity": { + "properties": { + "externalId": { + "type": "string", + "description": "The AWS Regions where Security Lake is automatically enabled.\n" + }, + "principal": { + "type": "string", + "description": "Provides encryption details of Amazon Security Lake object.\n" + } + }, + "type": "object", + "required": [ + "externalId", + "principal" + ] + }, + "aws:securitylake/SubscriberTimeouts:SubscriberTimeouts": { + "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:servicecatalog/ProductProvisioningArtifactParameters:ProductProvisioningArtifactParameters": { "properties": { "description": { @@ -140045,6 +140198,10 @@ }, "description": "Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details.\n" }, + "evaluationWindowSec": { + "type": "integer", + "description": "The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes).\n\n**NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.\n" + }, "forwardedIpConfig": { "$ref": "#/types/aws:wafv2/RuleGroupRuleStatementRateBasedStatementForwardedIpConfig:RuleGroupRuleStatementRateBasedStatementForwardedIpConfig", "description": "The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details.\n" @@ -147926,6 +148083,10 @@ }, "description": "Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details.\n" }, + "evaluationWindowSec": { + "type": "integer", + "description": "The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes).\n\n**NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.\n" + }, "forwardedIpConfig": { "$ref": "#/types/aws:wafv2/WebAclRuleStatementRateBasedStatementForwardedIpConfig:WebAclRuleStatementRateBasedStatementForwardedIpConfig", "description": "Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details.\n" @@ -153324,6 +153485,76 @@ "type": "object" } }, + "aws:account/region:Region": { + "description": "Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account.\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.account.Region(\"example\", {\n regionName: \"ap-southeast-3\",\n enabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.account.Region(\"example\",\n region_name=\"ap-southeast-3\",\n enabled=True)\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.Account.Region(\"example\", new()\n {\n RegionName = \"ap-southeast-3\",\n Enabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/account\"\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 := account.NewRegion(ctx, \"example\", \u0026account.RegionArgs{\n\t\t\tRegionName: pulumi.String(\"ap-southeast-3\"),\n\t\t\tEnabled: pulumi.Bool(true),\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.account.Region;\nimport com.pulumi.aws.account.RegionArgs;\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 Region(\"example\", RegionArgs.builder() \n .regionName(\"ap-southeast-3\")\n .enabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:account:Region\n properties:\n regionName: ap-southeast-3\n enabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`. For example:\n\n```sh\n$ pulumi import aws:account/region:Region example ap-southeast-3\n```\n", + "properties": { + "accountId": { + "type": "string", + "description": "The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned.\n" + }, + "enabled": { + "type": "boolean", + "description": "Whether the region is enabled.\n" + }, + "optStatus": { + "type": "string", + "description": "The region opt status.\n" + }, + "regionName": { + "type": "string", + "description": "The region name to manage.\n" + } + }, + "required": [ + "enabled", + "optStatus", + "regionName" + ], + "inputProperties": { + "accountId": { + "type": "string", + "description": "The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned.\n", + "willReplaceOnChanges": true + }, + "enabled": { + "type": "boolean", + "description": "Whether the region is enabled.\n" + }, + "regionName": { + "type": "string", + "description": "The region name to manage.\n", + "willReplaceOnChanges": true + } + }, + "requiredInputs": [ + "enabled", + "regionName" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering Region resources.\n", + "properties": { + "accountId": { + "type": "string", + "description": "The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned.\n", + "willReplaceOnChanges": true + }, + "enabled": { + "type": "boolean", + "description": "Whether the region is enabled.\n" + }, + "optStatus": { + "type": "string", + "description": "The region opt status.\n" + }, + "regionName": { + "type": "string", + "description": "The region name to manage.\n", + "willReplaceOnChanges": true + } + }, + "type": "object" + } + }, "aws:acm/certificate:Certificate": { "description": "The ACM certificate resource allows requesting and management of certificates\nfrom the Amazon Certificate Manager.\n\nACM certificates can be created in three ways:\nAmazon-issued, where AWS provides the certificate authority and automatically manages renewal;\nimported certificates, issued by another certificate authority;\nand private certificates, issued using an ACM Private Certificate Authority.\n\n## Amazon-Issued Certificates\n\nFor Amazon-issued certificates, this resource deals with requesting certificates and managing their attributes and life-cycle.\nThis resource does not deal with validation of a certificate but can provide inputs\nfor other resources implementing the validation.\nIt does not wait for a certificate to be issued.\nUse a `aws.acm.CertificateValidation` resource for this.\n\nMost commonly, this resource is used together with `aws.route53.Record` and\n`aws.acm.CertificateValidation` to request a DNS validated certificate,\ndeploy the required validation records and wait for validation to complete.\n\nDomain validation through email is also supported but should be avoided as it requires a manual step outside of this provider.\n\n\n## Certificates Imported from Other Certificate Authority\n\nImported certificates can be used to make certificates created with an external certificate authority available for AWS services.\n\nAs they are not managed by AWS, imported certificates are not eligible for automatic renewal.\nNew certificate materials can be supplied to an existing imported certificate to update it in place.\n\n## Private Certificates\n\nPrivate certificates are issued by an ACM Private Cerificate Authority, which can be created using the resource type `aws.acmpca.CertificateAuthority`.\n\nPrivate certificates created using this resource are eligible for managed renewal if they have been exported or associated with another AWS service.\nSee [managed renewal documentation](https://docs.aws.amazon.com/acm/latest/userguide/managed-renewal.html) for more information.\nBy default, a certificate is valid for 395 days and the managed renewal process will start 60 days before expiration.\nTo renew the certificate earlier than 60 days before expiration, configure `early_renewal_duration`.\n\n## Example Usage\n\n### Create Certificate\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst cert = new aws.acm.Certificate(\"cert\", {\n domainName: \"example.com\",\n validationMethod: \"DNS\",\n tags: {\n Environment: \"test\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ncert = aws.acm.Certificate(\"cert\",\n domain_name=\"example.com\",\n validation_method=\"DNS\",\n tags={\n \"Environment\": \"test\",\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 cert = new Aws.Acm.Certificate(\"cert\", new()\n {\n DomainName = \"example.com\",\n ValidationMethod = \"DNS\",\n Tags = \n {\n { \"Environment\", \"test\" },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/acm\"\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 := acm.NewCertificate(ctx, \"cert\", \u0026acm.CertificateArgs{\n\t\t\tDomainName: pulumi.String(\"example.com\"),\n\t\t\tValidationMethod: pulumi.String(\"DNS\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"Environment\": pulumi.String(\"test\"),\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.acm.Certificate;\nimport com.pulumi.aws.acm.CertificateArgs;\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 cert = new Certificate(\"cert\", CertificateArgs.builder() \n .domainName(\"example.com\")\n .validationMethod(\"DNS\")\n .tags(Map.of(\"Environment\", \"test\"))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cert:\n type: aws:acm:Certificate\n properties:\n domainName: example.com\n validationMethod: DNS\n tags:\n Environment: test\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Custom Domain Validation Options\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst cert = new aws.acm.Certificate(\"cert\", {\n domainName: \"testing.example.com\",\n validationMethod: \"EMAIL\",\n validationOptions: [{\n domainName: \"testing.example.com\",\n validationDomain: \"example.com\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ncert = aws.acm.Certificate(\"cert\",\n domain_name=\"testing.example.com\",\n validation_method=\"EMAIL\",\n validation_options=[aws.acm.CertificateValidationOptionArgs(\n domain_name=\"testing.example.com\",\n validation_domain=\"example.com\",\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 cert = new Aws.Acm.Certificate(\"cert\", new()\n {\n DomainName = \"testing.example.com\",\n ValidationMethod = \"EMAIL\",\n ValidationOptions = new[]\n {\n new Aws.Acm.Inputs.CertificateValidationOptionArgs\n {\n DomainName = \"testing.example.com\",\n ValidationDomain = \"example.com\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/acm\"\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 := acm.NewCertificate(ctx, \"cert\", \u0026acm.CertificateArgs{\n\t\t\tDomainName: pulumi.String(\"testing.example.com\"),\n\t\t\tValidationMethod: pulumi.String(\"EMAIL\"),\n\t\t\tValidationOptions: acm.CertificateValidationOptionArray{\n\t\t\t\t\u0026acm.CertificateValidationOptionArgs{\n\t\t\t\t\tDomainName: pulumi.String(\"testing.example.com\"),\n\t\t\t\t\tValidationDomain: pulumi.String(\"example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.aws.acm.Certificate;\nimport com.pulumi.aws.acm.CertificateArgs;\nimport com.pulumi.aws.acm.inputs.CertificateValidationOptionArgs;\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 cert = new Certificate(\"cert\", CertificateArgs.builder() \n .domainName(\"testing.example.com\")\n .validationMethod(\"EMAIL\")\n .validationOptions(CertificateValidationOptionArgs.builder()\n .domainName(\"testing.example.com\")\n .validationDomain(\"example.com\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cert:\n type: aws:acm:Certificate\n properties:\n domainName: testing.example.com\n validationMethod: EMAIL\n validationOptions:\n - domainName: testing.example.com\n validationDomain: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Existing Certificate Body Import\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport * as tls from \"@pulumi/tls\";\n\nconst example = new tls.PrivateKey(\"example\", {algorithm: \"RSA\"});\nconst exampleSelfSignedCert = new tls.SelfSignedCert(\"example\", {\n keyAlgorithm: \"RSA\",\n privateKeyPem: example.privateKeyPem,\n subject: {\n commonName: \"example.com\",\n organization: \"ACME Examples, Inc\",\n },\n validityPeriodHours: 12,\n allowedUses: [\n \"key_encipherment\",\n \"digital_signature\",\n \"server_auth\",\n ],\n});\nconst cert = new aws.acm.Certificate(\"cert\", {\n privateKey: example.privateKeyPem,\n certificateBody: exampleSelfSignedCert.certPem,\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\nimport pulumi_tls as tls\n\nexample = tls.PrivateKey(\"example\", algorithm=\"RSA\")\nexample_self_signed_cert = tls.SelfSignedCert(\"example\",\n key_algorithm=\"RSA\",\n private_key_pem=example.private_key_pem,\n subject=tls.SelfSignedCertSubjectArgs(\n common_name=\"example.com\",\n organization=\"ACME Examples, Inc\",\n ),\n validity_period_hours=12,\n allowed_uses=[\n \"key_encipherment\",\n \"digital_signature\",\n \"server_auth\",\n ])\ncert = aws.acm.Certificate(\"cert\",\n private_key=example.private_key_pem,\n certificate_body=example_self_signed_cert.cert_pem)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Aws = Pulumi.Aws;\nusing Tls = Pulumi.Tls;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var example = new Tls.PrivateKey(\"example\", new()\n {\n Algorithm = \"RSA\",\n });\n\n var exampleSelfSignedCert = new Tls.SelfSignedCert(\"example\", new()\n {\n KeyAlgorithm = \"RSA\",\n PrivateKeyPem = example.PrivateKeyPem,\n Subject = new Tls.Inputs.SelfSignedCertSubjectArgs\n {\n CommonName = \"example.com\",\n Organization = \"ACME Examples, Inc\",\n },\n ValidityPeriodHours = 12,\n AllowedUses = new[]\n {\n \"key_encipherment\",\n \"digital_signature\",\n \"server_auth\",\n },\n });\n\n var cert = new Aws.Acm.Certificate(\"cert\", new()\n {\n PrivateKey = example.PrivateKeyPem,\n CertificateBody = exampleSelfSignedCert.CertPem,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/acm\"\n\t\"github.com/pulumi/pulumi-tls/sdk/v4/go/tls\"\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 := tls.NewPrivateKey(ctx, \"example\", \u0026tls.PrivateKeyArgs{\n\t\t\tAlgorithm: pulumi.String(\"RSA\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSelfSignedCert, err := tls.NewSelfSignedCert(ctx, \"example\", \u0026tls.SelfSignedCertArgs{\n\t\t\tKeyAlgorithm: pulumi.String(\"RSA\"),\n\t\t\tPrivateKeyPem: example.PrivateKeyPem,\n\t\t\tSubject: \u0026tls.SelfSignedCertSubjectArgs{\n\t\t\t\tCommonName: pulumi.String(\"example.com\"),\n\t\t\t\tOrganization: pulumi.String(\"ACME Examples, Inc\"),\n\t\t\t},\n\t\t\tValidityPeriodHours: pulumi.Int(12),\n\t\t\tAllowedUses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"key_encipherment\"),\n\t\t\t\tpulumi.String(\"digital_signature\"),\n\t\t\t\tpulumi.String(\"server_auth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = acm.NewCertificate(ctx, \"cert\", \u0026acm.CertificateArgs{\n\t\t\tPrivateKey: example.PrivateKeyPem,\n\t\t\tCertificateBody: exampleSelfSignedCert.CertPem,\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.tls.PrivateKey;\nimport com.pulumi.tls.PrivateKeyArgs;\nimport com.pulumi.tls.SelfSignedCert;\nimport com.pulumi.tls.SelfSignedCertArgs;\nimport com.pulumi.tls.inputs.SelfSignedCertSubjectArgs;\nimport com.pulumi.aws.acm.Certificate;\nimport com.pulumi.aws.acm.CertificateArgs;\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 PrivateKey(\"example\", PrivateKeyArgs.builder() \n .algorithm(\"RSA\")\n .build());\n\n var exampleSelfSignedCert = new SelfSignedCert(\"exampleSelfSignedCert\", SelfSignedCertArgs.builder() \n .keyAlgorithm(\"RSA\")\n .privateKeyPem(example.privateKeyPem())\n .subject(SelfSignedCertSubjectArgs.builder()\n .commonName(\"example.com\")\n .organization(\"ACME Examples, Inc\")\n .build())\n .validityPeriodHours(12)\n .allowedUses( \n \"key_encipherment\",\n \"digital_signature\",\n \"server_auth\")\n .build());\n\n var cert = new Certificate(\"cert\", CertificateArgs.builder() \n .privateKey(example.privateKeyPem())\n .certificateBody(exampleSelfSignedCert.certPem())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: tls:PrivateKey\n properties:\n algorithm: RSA\n exampleSelfSignedCert:\n type: tls:SelfSignedCert\n name: example\n properties:\n keyAlgorithm: RSA\n privateKeyPem: ${example.privateKeyPem}\n subject:\n commonName: example.com\n organization: ACME Examples, Inc\n validityPeriodHours: 12\n allowedUses:\n - key_encipherment\n - digital_signature\n - server_auth\n cert:\n type: aws:acm:Certificate\n properties:\n privateKey: ${example.privateKeyPem}\n certificateBody: ${exampleSelfSignedCert.certPem}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Referencing domain_validation_options With for_each Based Resources\n\nSee the `aws.acm.CertificateValidation` resource for a full example of performing DNS validation.\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.Record[] = [];\nfor (const range of Object.entries(.reduce((__obj, dvo) =\u003e ({ ...__obj, [dvo.domainName]: {\n name: dvo.resourceRecordName,\n record: dvo.resourceRecordValue,\n type: dvo.resourceRecordType,\n} }))).map(([k, v]) =\u003e ({key: k, value: v}))) {\n example.push(new aws.route53.Record(`example-${range.key}`, {\n allowOverwrite: true,\n name: range.value.name,\n records: [range.value.record],\n ttl: 60,\n type: aws.route53.recordtype.RecordType[range.value.type],\n zoneId: exampleAwsRoute53Zone.zoneId,\n }));\n}\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = []\nfor range in [{\"key\": k, \"value\": v} for [k, v] in enumerate({dvo.domain_name: {\n name: dvo.resource_record_name,\n record: dvo.resource_record_value,\n type: dvo.resource_record_type,\n} for dvo in example_aws_acm_certificate.domain_validation_options})]:\n example.append(aws.route53.Record(f\"example-{range['key']}\",\n allow_overwrite=True,\n name=range[\"value\"][\"name\"],\n records=[range[\"value\"][\"record\"]],\n ttl=60,\n type=aws.route53/recordtype.RecordType(range[\"value\"][\"type\"]),\n zone_id=example_aws_route53_zone[\"zoneId\"]))\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 List\u003cAws.Route53.Record\u003e();\n foreach (var range in .ToDictionary(item =\u003e {\n var dvo = item.Value;\n return dvo.DomainName;\n }, item =\u003e {\n var dvo = item.Value;\n return \n {\n { \"name\", dvo.ResourceRecordName },\n { \"record\", dvo.ResourceRecordValue },\n { \"type\", dvo.ResourceRecordType },\n };\n }).Select(pair =\u003e new { pair.Key, pair.Value }))\n {\n example.Add(new Aws.Route53.Record($\"example-{range.Key}\", new()\n {\n AllowOverwrite = true,\n Name = range.Value.Name,\n Records = new[]\n {\n range.Value.Record,\n },\n Ttl = 60,\n Type = System.Enum.Parse\u003cAws.Route53.RecordType.RecordType\u003e(range.Value.Type),\n ZoneId = exampleAwsRoute53Zone.ZoneId,\n }));\n }\n});\n```\n```yaml\nresources:\n example:\n type: aws:route53:Record\n properties:\n allowOverwrite: true\n name: ${range.value.name}\n records:\n - ${range.value.record}\n ttl: 60\n type: ${range.value.type}\n zoneId: ${exampleAwsRoute53Zone.zoneId}\n options: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import certificates using their ARN. For example:\n\n```sh\n$ pulumi import aws:acm/certificate:Certificate cert arn:aws:acm:eu-central-1:123456789012:certificate/7e7a28d2-163f-4b8f-b9cd-822f96c08d6a\n```\n", "properties": { @@ -173079,18 +173310,26 @@ } }, "aws:batch/jobQueue:JobQueue": { - "description": "Provides a Batch Job Queue resource.\n\n## Example Usage\n\n### Basic Job Queue\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst testQueue = new aws.batch.JobQueue(\"test_queue\", {\n name: \"tf-test-batch-job-queue\",\n state: \"ENABLED\",\n priority: 1,\n computeEnvironments: [\n testEnvironment1.arn,\n testEnvironment2.arn,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest_queue = aws.batch.JobQueue(\"test_queue\",\n name=\"tf-test-batch-job-queue\",\n state=\"ENABLED\",\n priority=1,\n compute_environments=[\n test_environment1[\"arn\"],\n test_environment2[\"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 testQueue = new Aws.Batch.JobQueue(\"test_queue\", new()\n {\n Name = \"tf-test-batch-job-queue\",\n State = \"ENABLED\",\n Priority = 1,\n ComputeEnvironments = new[]\n {\n testEnvironment1.Arn,\n testEnvironment2.Arn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch\"\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 := batch.NewJobQueue(ctx, \"test_queue\", \u0026batch.JobQueueArgs{\n\t\t\tName: pulumi.String(\"tf-test-batch-job-queue\"),\n\t\t\tState: pulumi.String(\"ENABLED\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tComputeEnvironments: pulumi.StringArray{\n\t\t\t\ttestEnvironment1.Arn,\n\t\t\t\ttestEnvironment2.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.batch.JobQueue;\nimport com.pulumi.aws.batch.JobQueueArgs;\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 testQueue = new JobQueue(\"testQueue\", JobQueueArgs.builder() \n .name(\"tf-test-batch-job-queue\")\n .state(\"ENABLED\")\n .priority(1)\n .computeEnvironments( \n testEnvironment1.arn(),\n testEnvironment2.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testQueue:\n type: aws:batch:JobQueue\n name: test_queue\n properties:\n name: tf-test-batch-job-queue\n state: ENABLED\n priority: 1\n computeEnvironments:\n - ${testEnvironment1.arn}\n - ${testEnvironment2.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Job Queue with a fair share scheduling policy\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.batch.SchedulingPolicy(\"example\", {\n name: \"example\",\n fairSharePolicy: {\n computeReservation: 1,\n shareDecaySeconds: 3600,\n shareDistributions: [{\n shareIdentifier: \"A1*\",\n weightFactor: 0.1,\n }],\n },\n});\nconst exampleJobQueue = new aws.batch.JobQueue(\"example\", {\n name: \"tf-test-batch-job-queue\",\n schedulingPolicyArn: example.arn,\n state: \"ENABLED\",\n priority: 1,\n computeEnvironments: [\n testEnvironment1.arn,\n testEnvironment2.arn,\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.batch.SchedulingPolicy(\"example\",\n name=\"example\",\n fair_share_policy=aws.batch.SchedulingPolicyFairSharePolicyArgs(\n compute_reservation=1,\n share_decay_seconds=3600,\n share_distributions=[aws.batch.SchedulingPolicyFairSharePolicyShareDistributionArgs(\n share_identifier=\"A1*\",\n weight_factor=0.1,\n )],\n ))\nexample_job_queue = aws.batch.JobQueue(\"example\",\n name=\"tf-test-batch-job-queue\",\n scheduling_policy_arn=example.arn,\n state=\"ENABLED\",\n priority=1,\n compute_environments=[\n test_environment1[\"arn\"],\n test_environment2[\"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.Batch.SchedulingPolicy(\"example\", new()\n {\n Name = \"example\",\n FairSharePolicy = new Aws.Batch.Inputs.SchedulingPolicyFairSharePolicyArgs\n {\n ComputeReservation = 1,\n ShareDecaySeconds = 3600,\n ShareDistributions = new[]\n {\n new Aws.Batch.Inputs.SchedulingPolicyFairSharePolicyShareDistributionArgs\n {\n ShareIdentifier = \"A1*\",\n WeightFactor = 0.1,\n },\n },\n },\n });\n\n var exampleJobQueue = new Aws.Batch.JobQueue(\"example\", new()\n {\n Name = \"tf-test-batch-job-queue\",\n SchedulingPolicyArn = example.Arn,\n State = \"ENABLED\",\n Priority = 1,\n ComputeEnvironments = new[]\n {\n testEnvironment1.Arn,\n testEnvironment2.Arn,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch\"\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 := batch.NewSchedulingPolicy(ctx, \"example\", \u0026batch.SchedulingPolicyArgs{\n\t\t\tName: pulumi.String(\"example\"),\n\t\t\tFairSharePolicy: \u0026batch.SchedulingPolicyFairSharePolicyArgs{\n\t\t\t\tComputeReservation: pulumi.Int(1),\n\t\t\t\tShareDecaySeconds: pulumi.Int(3600),\n\t\t\t\tShareDistributions: batch.SchedulingPolicyFairSharePolicyShareDistributionArray{\n\t\t\t\t\t\u0026batch.SchedulingPolicyFairSharePolicyShareDistributionArgs{\n\t\t\t\t\t\tShareIdentifier: pulumi.String(\"A1*\"),\n\t\t\t\t\t\tWeightFactor: pulumi.Float64(0.1),\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\t_, err = batch.NewJobQueue(ctx, \"example\", \u0026batch.JobQueueArgs{\n\t\t\tName: pulumi.String(\"tf-test-batch-job-queue\"),\n\t\t\tSchedulingPolicyArn: example.Arn,\n\t\t\tState: pulumi.String(\"ENABLED\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tComputeEnvironments: pulumi.StringArray{\n\t\t\t\ttestEnvironment1.Arn,\n\t\t\t\ttestEnvironment2.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.batch.SchedulingPolicy;\nimport com.pulumi.aws.batch.SchedulingPolicyArgs;\nimport com.pulumi.aws.batch.inputs.SchedulingPolicyFairSharePolicyArgs;\nimport com.pulumi.aws.batch.JobQueue;\nimport com.pulumi.aws.batch.JobQueueArgs;\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 SchedulingPolicy(\"example\", SchedulingPolicyArgs.builder() \n .name(\"example\")\n .fairSharePolicy(SchedulingPolicyFairSharePolicyArgs.builder()\n .computeReservation(1)\n .shareDecaySeconds(3600)\n .shareDistributions(SchedulingPolicyFairSharePolicyShareDistributionArgs.builder()\n .shareIdentifier(\"A1*\")\n .weightFactor(0.1)\n .build())\n .build())\n .build());\n\n var exampleJobQueue = new JobQueue(\"exampleJobQueue\", JobQueueArgs.builder() \n .name(\"tf-test-batch-job-queue\")\n .schedulingPolicyArn(example.arn())\n .state(\"ENABLED\")\n .priority(1)\n .computeEnvironments( \n testEnvironment1.arn(),\n testEnvironment2.arn())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:batch:SchedulingPolicy\n properties:\n name: example\n fairSharePolicy:\n computeReservation: 1\n shareDecaySeconds: 3600\n shareDistributions:\n - shareIdentifier: A1*\n weightFactor: 0.1\n exampleJobQueue:\n type: aws:batch:JobQueue\n name: example\n properties:\n name: tf-test-batch-job-queue\n schedulingPolicyArn: ${example.arn}\n state: ENABLED\n priority: 1\n computeEnvironments:\n - ${testEnvironment1.arn}\n - ${testEnvironment2.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Batch Job Queue using the `arn`. For example:\n\n```sh\n$ pulumi import aws:batch/jobQueue:JobQueue test_queue arn:aws:batch:us-east-1:123456789012:job-queue/sample\n```\n", + "description": "Provides a Batch Job Queue resource.\n\n## Example Usage\n\n### Basic Job Queue\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\n\nconst testQueue = new aws.batch.JobQueue(\"test_queue\", {\n name: \"tf-test-batch-job-queue\",\n state: \"ENABLED\",\n priority: 1,\n computeEnvironmentOrders: [\n {\n order: 1,\n computeEnvironment: testEnvironment1.arn,\n },\n {\n order: 2,\n computeEnvironment: testEnvironment2.arn,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ntest_queue = aws.batch.JobQueue(\"test_queue\",\n name=\"tf-test-batch-job-queue\",\n state=\"ENABLED\",\n priority=1,\n compute_environment_orders=[\n aws.batch.JobQueueComputeEnvironmentOrderArgs(\n order=1,\n compute_environment=test_environment1[\"arn\"],\n ),\n aws.batch.JobQueueComputeEnvironmentOrderArgs(\n order=2,\n compute_environment=test_environment2[\"arn\"],\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 testQueue = new Aws.Batch.JobQueue(\"test_queue\", new()\n {\n Name = \"tf-test-batch-job-queue\",\n State = \"ENABLED\",\n Priority = 1,\n ComputeEnvironmentOrders = new[]\n {\n new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs\n {\n Order = 1,\n ComputeEnvironment = testEnvironment1.Arn,\n },\n new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs\n {\n Order = 2,\n ComputeEnvironment = testEnvironment2.Arn,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch\"\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 := batch.NewJobQueue(ctx, \"test_queue\", \u0026batch.JobQueueArgs{\n\t\t\tName: pulumi.String(\"tf-test-batch-job-queue\"),\n\t\t\tState: pulumi.String(\"ENABLED\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{\n\t\t\t\t\u0026batch.JobQueueComputeEnvironmentOrderArgs{\n\t\t\t\t\tOrder: pulumi.Int(1),\n\t\t\t\t\tComputeEnvironment: pulumi.Any(testEnvironment1.Arn),\n\t\t\t\t},\n\t\t\t\t\u0026batch.JobQueueComputeEnvironmentOrderArgs{\n\t\t\t\t\tOrder: pulumi.Int(2),\n\t\t\t\t\tComputeEnvironment: pulumi.Any(testEnvironment2.Arn),\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.batch.JobQueue;\nimport com.pulumi.aws.batch.JobQueueArgs;\nimport com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs;\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 testQueue = new JobQueue(\"testQueue\", JobQueueArgs.builder() \n .name(\"tf-test-batch-job-queue\")\n .state(\"ENABLED\")\n .priority(1)\n .computeEnvironmentOrders( \n JobQueueComputeEnvironmentOrderArgs.builder()\n .order(1)\n .computeEnvironment(testEnvironment1.arn())\n .build(),\n JobQueueComputeEnvironmentOrderArgs.builder()\n .order(2)\n .computeEnvironment(testEnvironment2.arn())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testQueue:\n type: aws:batch:JobQueue\n name: test_queue\n properties:\n name: tf-test-batch-job-queue\n state: ENABLED\n priority: 1\n computeEnvironmentOrders:\n - order: 1\n computeEnvironment: ${testEnvironment1.arn}\n - order: 2\n computeEnvironment: ${testEnvironment2.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Job Queue with a fair share scheduling policy\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.batch.SchedulingPolicy(\"example\", {\n name: \"example\",\n fairSharePolicy: {\n computeReservation: 1,\n shareDecaySeconds: 3600,\n shareDistributions: [{\n shareIdentifier: \"A1*\",\n weightFactor: 0.1,\n }],\n },\n});\nconst exampleJobQueue = new aws.batch.JobQueue(\"example\", {\n name: \"tf-test-batch-job-queue\",\n schedulingPolicyArn: example.arn,\n state: \"ENABLED\",\n priority: 1,\n computeEnvironmentOrders: [\n {\n order: 1,\n computeEnvironment: testEnvironment1.arn,\n },\n {\n order: 2,\n computeEnvironment: testEnvironment2.arn,\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\nexample = aws.batch.SchedulingPolicy(\"example\",\n name=\"example\",\n fair_share_policy=aws.batch.SchedulingPolicyFairSharePolicyArgs(\n compute_reservation=1,\n share_decay_seconds=3600,\n share_distributions=[aws.batch.SchedulingPolicyFairSharePolicyShareDistributionArgs(\n share_identifier=\"A1*\",\n weight_factor=0.1,\n )],\n ))\nexample_job_queue = aws.batch.JobQueue(\"example\",\n name=\"tf-test-batch-job-queue\",\n scheduling_policy_arn=example.arn,\n state=\"ENABLED\",\n priority=1,\n compute_environment_orders=[\n aws.batch.JobQueueComputeEnvironmentOrderArgs(\n order=1,\n compute_environment=test_environment1[\"arn\"],\n ),\n aws.batch.JobQueueComputeEnvironmentOrderArgs(\n order=2,\n compute_environment=test_environment2[\"arn\"],\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 example = new Aws.Batch.SchedulingPolicy(\"example\", new()\n {\n Name = \"example\",\n FairSharePolicy = new Aws.Batch.Inputs.SchedulingPolicyFairSharePolicyArgs\n {\n ComputeReservation = 1,\n ShareDecaySeconds = 3600,\n ShareDistributions = new[]\n {\n new Aws.Batch.Inputs.SchedulingPolicyFairSharePolicyShareDistributionArgs\n {\n ShareIdentifier = \"A1*\",\n WeightFactor = 0.1,\n },\n },\n },\n });\n\n var exampleJobQueue = new Aws.Batch.JobQueue(\"example\", new()\n {\n Name = \"tf-test-batch-job-queue\",\n SchedulingPolicyArn = example.Arn,\n State = \"ENABLED\",\n Priority = 1,\n ComputeEnvironmentOrders = new[]\n {\n new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs\n {\n Order = 1,\n ComputeEnvironment = testEnvironment1.Arn,\n },\n new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs\n {\n Order = 2,\n ComputeEnvironment = testEnvironment2.Arn,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/batch\"\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 := batch.NewSchedulingPolicy(ctx, \"example\", \u0026batch.SchedulingPolicyArgs{\n\t\t\tName: pulumi.String(\"example\"),\n\t\t\tFairSharePolicy: \u0026batch.SchedulingPolicyFairSharePolicyArgs{\n\t\t\t\tComputeReservation: pulumi.Int(1),\n\t\t\t\tShareDecaySeconds: pulumi.Int(3600),\n\t\t\t\tShareDistributions: batch.SchedulingPolicyFairSharePolicyShareDistributionArray{\n\t\t\t\t\t\u0026batch.SchedulingPolicyFairSharePolicyShareDistributionArgs{\n\t\t\t\t\t\tShareIdentifier: pulumi.String(\"A1*\"),\n\t\t\t\t\t\tWeightFactor: pulumi.Float64(0.1),\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\t_, err = batch.NewJobQueue(ctx, \"example\", \u0026batch.JobQueueArgs{\n\t\t\tName: pulumi.String(\"tf-test-batch-job-queue\"),\n\t\t\tSchedulingPolicyArn: example.Arn,\n\t\t\tState: pulumi.String(\"ENABLED\"),\n\t\t\tPriority: pulumi.Int(1),\n\t\t\tComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{\n\t\t\t\t\u0026batch.JobQueueComputeEnvironmentOrderArgs{\n\t\t\t\t\tOrder: pulumi.Int(1),\n\t\t\t\t\tComputeEnvironment: pulumi.Any(testEnvironment1.Arn),\n\t\t\t\t},\n\t\t\t\t\u0026batch.JobQueueComputeEnvironmentOrderArgs{\n\t\t\t\t\tOrder: pulumi.Int(2),\n\t\t\t\t\tComputeEnvironment: pulumi.Any(testEnvironment2.Arn),\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.batch.SchedulingPolicy;\nimport com.pulumi.aws.batch.SchedulingPolicyArgs;\nimport com.pulumi.aws.batch.inputs.SchedulingPolicyFairSharePolicyArgs;\nimport com.pulumi.aws.batch.JobQueue;\nimport com.pulumi.aws.batch.JobQueueArgs;\nimport com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs;\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 SchedulingPolicy(\"example\", SchedulingPolicyArgs.builder() \n .name(\"example\")\n .fairSharePolicy(SchedulingPolicyFairSharePolicyArgs.builder()\n .computeReservation(1)\n .shareDecaySeconds(3600)\n .shareDistributions(SchedulingPolicyFairSharePolicyShareDistributionArgs.builder()\n .shareIdentifier(\"A1*\")\n .weightFactor(0.1)\n .build())\n .build())\n .build());\n\n var exampleJobQueue = new JobQueue(\"exampleJobQueue\", JobQueueArgs.builder() \n .name(\"tf-test-batch-job-queue\")\n .schedulingPolicyArn(example.arn())\n .state(\"ENABLED\")\n .priority(1)\n .computeEnvironmentOrders( \n JobQueueComputeEnvironmentOrderArgs.builder()\n .order(1)\n .computeEnvironment(testEnvironment1.arn())\n .build(),\n JobQueueComputeEnvironmentOrderArgs.builder()\n .order(2)\n .computeEnvironment(testEnvironment2.arn())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:batch:SchedulingPolicy\n properties:\n name: example\n fairSharePolicy:\n computeReservation: 1\n shareDecaySeconds: 3600\n shareDistributions:\n - shareIdentifier: A1*\n weightFactor: 0.1\n exampleJobQueue:\n type: aws:batch:JobQueue\n name: example\n properties:\n name: tf-test-batch-job-queue\n schedulingPolicyArn: ${example.arn}\n state: ENABLED\n priority: 1\n computeEnvironmentOrders:\n - order: 1\n computeEnvironment: ${testEnvironment1.arn}\n - order: 2\n computeEnvironment: ${testEnvironment2.arn}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Batch Job Queue using the `arn`. For example:\n\n```sh\n$ pulumi import aws:batch/jobQueue:JobQueue test_queue arn:aws:batch:us-east-1:123456789012:job-queue/sample\n```\n", "properties": { "arn": { "type": "string", "description": "The Amazon Resource Name of the job queue.\n" }, + "computeEnvironmentOrders": { + "type": "array", + "items": { + "$ref": "#/types/aws:batch/JobQueueComputeEnvironmentOrder:JobQueueComputeEnvironmentOrder" + }, + "description": "The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.\n" + }, "computeEnvironments": { "type": "array", "items": { "type": "string" }, - "description": "List of compute environment ARNs mapped to a job queue.\nThe position of the compute environments in the list will dictate the order.\n" + "description": "(Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly.\n", + "deprecationMessage": "This parameter will be replaced by `compute_environments_order`." }, "name": { "type": "string", @@ -173129,19 +173368,26 @@ }, "required": [ "arn", - "computeEnvironments", "name", "priority", "state", "tagsAll" ], "inputProperties": { + "computeEnvironmentOrders": { + "type": "array", + "items": { + "$ref": "#/types/aws:batch/JobQueueComputeEnvironmentOrder:JobQueueComputeEnvironmentOrder" + }, + "description": "The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.\n" + }, "computeEnvironments": { "type": "array", "items": { "type": "string" }, - "description": "List of compute environment ARNs mapped to a job queue.\nThe position of the compute environments in the list will dictate the order.\n" + "description": "(Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly.\n", + "deprecationMessage": "This parameter will be replaced by `compute_environments_order`." }, "name": { "type": "string", @@ -173171,7 +173417,6 @@ } }, "requiredInputs": [ - "computeEnvironments", "priority", "state" ], @@ -173182,12 +173427,20 @@ "type": "string", "description": "The Amazon Resource Name of the job queue.\n" }, + "computeEnvironmentOrders": { + "type": "array", + "items": { + "$ref": "#/types/aws:batch/JobQueueComputeEnvironmentOrder:JobQueueComputeEnvironmentOrder" + }, + "description": "The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.\n" + }, "computeEnvironments": { "type": "array", "items": { "type": "string" }, - "description": "List of compute environment ARNs mapped to a job queue.\nThe position of the compute environments in the list will dictate the order.\n" + "description": "(Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly.\n", + "deprecationMessage": "This parameter will be replaced by `compute_environments_order`." }, "name": { "type": "string", @@ -250089,7 +250342,7 @@ }, "name": { "type": "string", - "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`.\n" + "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`.\n" }, "status": { "type": "string", @@ -250117,7 +250370,7 @@ }, "name": { "type": "string", - "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`.\n", + "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`.\n", "willReplaceOnChanges": true }, "status": { @@ -250147,7 +250400,7 @@ }, "name": { "type": "string", - "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`.\n", + "description": "The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`.\n", "willReplaceOnChanges": true }, "status": { @@ -257558,13 +257811,29 @@ "name": "PolicyDocument" } } + }, + "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." } }, "required": [ "arn", "defaultVersionId", "name", - "policy" + "policy", + "tagsAll" ], "inputProperties": { "name": { @@ -257580,6 +257849,13 @@ "name": "PolicyDocument" } } + }, + "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" } }, "requiredInputs": [ @@ -257609,6 +257885,21 @@ "name": "PolicyDocument" } } + }, + "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." } }, "type": "object" @@ -257869,12 +258160,28 @@ "roleArn": { "type": "string", "description": "The identity of the role to which the alias refers.\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." } }, "required": [ "alias", "arn", - "roleArn" + "roleArn", + "tagsAll" ], "inputProperties": { "alias": { @@ -257889,6 +258196,13 @@ "roleArn": { "type": "string", "description": "The identity of the role to which the alias refers.\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" } }, "requiredInputs": [ @@ -257914,6 +258228,21 @@ "roleArn": { "type": "string", "description": "The identity of the role to which the alias refers.\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." } }, "type": "object" @@ -297996,7 +298325,7 @@ }, "storageType": { "type": "string", - "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" + "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" }, "tags": { "type": "object", @@ -298298,7 +298627,7 @@ }, "storageType": { "type": "string", - "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" + "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" }, "tags": { "type": "object", @@ -298594,7 +298923,7 @@ }, "storageType": { "type": "string", - "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" + "description": "(Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `\"\"`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `\"\"` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters).\n" }, "tags": { "type": "object", @@ -298925,7 +299254,7 @@ "engine": { "type": "string", "$ref": "#/types/aws:rds/engineType:EngineType", - "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`.\n" + "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters).\n" }, "engineVersion": { "type": "string", @@ -299093,7 +299422,7 @@ "engine": { "type": "string", "$ref": "#/types/aws:rds/engineType:EngineType", - "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`.\n", + "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters).\n", "willReplaceOnChanges": true }, "engineVersion": { @@ -299230,7 +299559,7 @@ "engine": { "type": "string", "$ref": "#/types/aws:rds/engineType:EngineType", - "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`.\n", + "description": "Name of the database engine to be used for the RDS cluster instance.\nValid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters).\n", "willReplaceOnChanges": true }, "engineVersion": { @@ -313796,6 +314125,10 @@ "type": "string", "description": "[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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "description": "Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified.\n" @@ -313908,6 +314241,7 @@ } }, "required": [ + "arn", "bucket", "bucketKeyEnabled", "contentType", @@ -314044,6 +314378,10 @@ "type": "string", "description": "[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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "oneOf": [ @@ -314264,6 +314602,10 @@ "type": "string", "description": "[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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "description": "Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified.\n" @@ -314401,6 +314743,7 @@ }, "required": [ "acl", + "arn", "bucket", "bucketKeyEnabled", "checksumCrc32", @@ -314549,6 +314892,10 @@ "type": "string", "description": "[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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "oneOf": [ @@ -316016,6 +316363,10 @@ "type": "string", "description": "[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`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "description": "Name of the bucket to put the file in.\n" @@ -316231,6 +316582,7 @@ }, "required": [ "acl", + "arn", "bucket", "bucketKeyEnabled", "cacheControl", @@ -316448,6 +316800,10 @@ "type": "string", "description": "[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`.\n" }, + "arn": { + "type": "string", + "description": "ARN of the object.\n" + }, "bucket": { "type": "string", "description": "Name of the bucket to put the file in.\n", @@ -323816,6 +324172,189 @@ "type": "object" } }, + "aws:securitylake/subscriber:Subscriber": { + "description": "Resource for managing an AWS Security Lake Subscriber.\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.securitylake.Subscriber;\nimport com.pulumi.aws.securitylake.SubscriberArgs;\nimport com.pulumi.aws.securitylake.inputs.SubscriberSourceArgs;\nimport com.pulumi.aws.securitylake.inputs.SubscriberSourceAwsLogSourceResourceArgs;\nimport com.pulumi.aws.securitylake.inputs.SubscriberSubscriberIdentityArgs;\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 Subscriber(\"example\", SubscriberArgs.builder() \n .subscriberName(\"example-name\")\n .sourceVersion(\"1.0\")\n .accessType(\"S3\")\n .source(SubscriberSourceArgs.builder()\n .awsLogSourceResource(SubscriberSourceAwsLogSourceResourceArgs.builder()\n .sourceName(\"ROUTE53\")\n .sourceVersion(\"1.0\")\n .build())\n .build())\n .subscriberIdentity(SubscriberSubscriberIdentityArgs.builder()\n .externalId(\"example\")\n .principal(\"1234567890\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n example:\n type: aws:securitylake:Subscriber\n properties:\n subscriberName: example-name\n sourceVersion: '1.0'\n accessType: S3\n source:\n awsLogSourceResource:\n sourceName: ROUTE53\n sourceVersion: '1.0'\n subscriberIdentity:\n externalId: example\n principal: '1234567890'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example:\n\n```sh\n$ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208\n```\n", + "properties": { + "accessType": { + "type": "string" + }, + "arn": { + "type": "string", + "description": "ARN of the Data Lake.\n" + }, + "resourceShareArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.\n" + }, + "resourceShareName": { + "type": "string", + "description": "The name of the resource share.\n" + }, + "roleArn": { + "type": "string", + "description": "The ARN of the IAM role to be used by the entity putting logs into your custom source partition.\n" + }, + "s3BucketArn": { + "type": "string", + "description": "The ARN for the Amazon Security Lake Amazon S3 bucket.\n" + }, + "source": { + "$ref": "#/types/aws:securitylake/SubscriberSource:SubscriberSource", + "description": "The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services.\n" + }, + "subscriberDescription": { + "type": "string", + "description": "The description for your subscriber account in Security Lake.\n" + }, + "subscriberEndpoint": { + "type": "string", + "description": "The subscriber endpoint to which exception messages are posted.\n" + }, + "subscriberIdentity": { + "$ref": "#/types/aws:securitylake/SubscriberSubscriberIdentity:SubscriberSubscriberIdentity", + "description": "The AWS identity used to access your data.\n" + }, + "subscriberName": { + "type": "string", + "description": "The name of your Security Lake subscriber account.\n" + }, + "subscriberStatus": { + "type": "string", + "description": "The subscriber status of the Amazon Security Lake subscriber account.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "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.\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." + }, + "timeouts": { + "$ref": "#/types/aws:securitylake/SubscriberTimeouts:SubscriberTimeouts" + } + }, + "required": [ + "accessType", + "arn", + "resourceShareArn", + "resourceShareName", + "roleArn", + "s3BucketArn", + "subscriberEndpoint", + "subscriberStatus", + "tagsAll" + ], + "inputProperties": { + "accessType": { + "type": "string" + }, + "source": { + "$ref": "#/types/aws:securitylake/SubscriberSource:SubscriberSource", + "description": "The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services.\n" + }, + "subscriberDescription": { + "type": "string", + "description": "The description for your subscriber account in Security Lake.\n" + }, + "subscriberIdentity": { + "$ref": "#/types/aws:securitylake/SubscriberSubscriberIdentity:SubscriberSubscriberIdentity", + "description": "The AWS identity used to access your data.\n" + }, + "subscriberName": { + "type": "string", + "description": "The name of your Security Lake subscriber account.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "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.\n" + }, + "timeouts": { + "$ref": "#/types/aws:securitylake/SubscriberTimeouts:SubscriberTimeouts" + } + }, + "stateInputs": { + "description": "Input properties used for looking up and filtering Subscriber resources.\n", + "properties": { + "accessType": { + "type": "string" + }, + "arn": { + "type": "string", + "description": "ARN of the Data Lake.\n" + }, + "resourceShareArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.\n" + }, + "resourceShareName": { + "type": "string", + "description": "The name of the resource share.\n" + }, + "roleArn": { + "type": "string", + "description": "The ARN of the IAM role to be used by the entity putting logs into your custom source partition.\n" + }, + "s3BucketArn": { + "type": "string", + "description": "The ARN for the Amazon Security Lake Amazon S3 bucket.\n" + }, + "source": { + "$ref": "#/types/aws:securitylake/SubscriberSource:SubscriberSource", + "description": "The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services.\n" + }, + "subscriberDescription": { + "type": "string", + "description": "The description for your subscriber account in Security Lake.\n" + }, + "subscriberEndpoint": { + "type": "string", + "description": "The subscriber endpoint to which exception messages are posted.\n" + }, + "subscriberIdentity": { + "$ref": "#/types/aws:securitylake/SubscriberSubscriberIdentity:SubscriberSubscriberIdentity", + "description": "The AWS identity used to access your data.\n" + }, + "subscriberName": { + "type": "string", + "description": "The name of your Security Lake subscriber account.\n" + }, + "subscriberStatus": { + "type": "string", + "description": "The subscriber status of the Amazon Security Lake subscriber account.\n" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "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.\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." + }, + "timeouts": { + "$ref": "#/types/aws:securitylake/SubscriberTimeouts:SubscriberTimeouts" + } + }, + "type": "object" + } + }, "aws:serverlessrepository/cloudFormationStack:CloudFormationStack": { "description": "Deploys an Application CloudFormation Stack from the Serverless Application Repository.\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 current = aws.getPartition({});\nconst currentGetRegion = aws.getRegion({});\nconst postgres_rotator = new aws.serverlessrepository.CloudFormationStack(\"postgres-rotator\", {\n name: \"postgres-rotator\",\n applicationId: \"arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\",\n capabilities: [\n \"CAPABILITY_IAM\",\n \"CAPABILITY_RESOURCE_POLICY\",\n ],\n parameters: {\n functionName: \"func-postgres-rotator\",\n endpoint: Promise.all([currentGetRegion, current]).then(([currentGetRegion, current]) =\u003e `secretsmanager.${currentGetRegion.name}.${current.dnsSuffix}`),\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_aws as aws\n\ncurrent = aws.get_partition()\ncurrent_get_region = aws.get_region()\npostgres_rotator = aws.serverlessrepository.CloudFormationStack(\"postgres-rotator\",\n name=\"postgres-rotator\",\n application_id=\"arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\",\n capabilities=[\n \"CAPABILITY_IAM\",\n \"CAPABILITY_RESOURCE_POLICY\",\n ],\n parameters={\n \"functionName\": \"func-postgres-rotator\",\n \"endpoint\": f\"secretsmanager.{current_get_region.name}.{current.dns_suffix}\",\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.GetPartition.Invoke();\n\n var currentGetRegion = Aws.GetRegion.Invoke();\n\n var postgres_rotator = new Aws.ServerlessRepository.CloudFormationStack(\"postgres-rotator\", new()\n {\n Name = \"postgres-rotator\",\n ApplicationId = \"arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\",\n Capabilities = new[]\n {\n \"CAPABILITY_IAM\",\n \"CAPABILITY_RESOURCE_POLICY\",\n },\n Parameters = \n {\n { \"functionName\", \"func-postgres-rotator\" },\n { \"endpoint\", Output.Tuple(currentGetRegion, current).Apply(values =\u003e\n {\n var currentGetRegion = values.Item1;\n var current = values.Item2;\n return $\"secretsmanager.{currentGetRegion.Apply(getRegionResult =\u003e getRegionResult.Name)}.{current.Apply(getPartitionResult =\u003e getPartitionResult.DnsSuffix)}\";\n }) },\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/serverlessrepository\"\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.GetPartition(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrentGetRegion, err := aws.GetRegion(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = serverlessrepository.NewCloudFormationStack(ctx, \"postgres-rotator\", \u0026serverlessrepository.CloudFormationStackArgs{\n\t\t\tName: pulumi.String(\"postgres-rotator\"),\n\t\t\tApplicationId: pulumi.String(\"arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\"),\n\t\t\tCapabilities: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"CAPABILITY_IAM\"),\n\t\t\t\tpulumi.String(\"CAPABILITY_RESOURCE_POLICY\"),\n\t\t\t},\n\t\t\tParameters: pulumi.StringMap{\n\t\t\t\t\"functionName\": pulumi.String(\"func-postgres-rotator\"),\n\t\t\t\t\"endpoint\": pulumi.String(fmt.Sprintf(\"secretsmanager.%v.%v\", currentGetRegion.Name, current.DnsSuffix)),\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.AwsFunctions;\nimport com.pulumi.aws.inputs.GetPartitionArgs;\nimport com.pulumi.aws.inputs.GetRegionArgs;\nimport com.pulumi.aws.serverlessrepository.CloudFormationStack;\nimport com.pulumi.aws.serverlessrepository.CloudFormationStackArgs;\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.getPartition();\n\n final var currentGetRegion = AwsFunctions.getRegion();\n\n var postgres_rotator = new CloudFormationStack(\"postgres-rotator\", CloudFormationStackArgs.builder() \n .name(\"postgres-rotator\")\n .applicationId(\"arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\")\n .capabilities( \n \"CAPABILITY_IAM\",\n \"CAPABILITY_RESOURCE_POLICY\")\n .parameters(Map.ofEntries(\n Map.entry(\"functionName\", \"func-postgres-rotator\"),\n Map.entry(\"endpoint\", String.format(\"secretsmanager.%s.%s\", currentGetRegion.applyValue(getRegionResult -\u003e getRegionResult.name()),current.applyValue(getPartitionResult -\u003e getPartitionResult.dnsSuffix())))\n ))\n .build());\n\n }\n}\n```\n```yaml\nresources:\n postgres-rotator:\n type: aws:serverlessrepository:CloudFormationStack\n properties:\n name: postgres-rotator\n applicationId: arn:aws:serverlessrepo:us-east-1:297356227824:applications/SecretsManagerRDSPostgreSQLRotationSingleUser\n capabilities:\n - CAPABILITY_IAM\n - CAPABILITY_RESOURCE_POLICY\n parameters:\n functionName: func-postgres-rotator\n endpoint: secretsmanager.${currentGetRegion.name}.${current.dnsSuffix}\nvariables:\n current:\n fn::invoke:\n Function: aws:getPartition\n Arguments: {}\n currentGetRegion:\n fn::invoke:\n Function: aws:getRegion\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nUsing `pulumi import`, import Serverless Application Repository Stack using the CloudFormation Stack name (with or without the `serverlessrepo-` prefix) or the CloudFormation Stack ID. For example:\n\n```sh\n$ pulumi import aws:serverlessrepository/cloudFormationStack:CloudFormationStack example serverlessrepo-postgres-rotator\n```\n", "properties": { @@ -380991,7 +381530,7 @@ "properties": { "defaultOnly": { "type": "boolean", - "description": "When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions.\n" + "description": "Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`.\n" }, "engine": { "type": "string", @@ -381002,15 +381541,23 @@ "items": { "$ref": "#/types/aws:rds/getEngineVersionFilter:getEngineVersionFilter" }, - "description": "One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).\n" + "description": "One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).\n" + }, + "hasMajorTarget": { + "type": "boolean", + "description": "Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version.\n" + }, + "hasMinorTarget": { + "type": "boolean", + "description": "Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version.\n" }, "includeAll": { "type": "boolean", - "description": "When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned.\n" + "description": "Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`.\n" }, "latest": { "type": "boolean", - "description": "When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation.\n" + "description": "Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: \"default\" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version.\n" }, "parameterGroupFamily": { "type": "string", @@ -381021,21 +381568,21 @@ "items": { "type": "string" }, - "description": "Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria.\n" + "description": "Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`.\n" }, "preferredUpgradeTargets": { "type": "array", "items": { "type": "string" }, - "description": "Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria.\n" + "description": "Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`.\n" }, "preferredVersions": { "type": "array", "items": { "type": "string" }, - "description": "Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria.\n" + "description": "Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`.\n" }, "version": { "type": "string" @@ -381050,7 +381597,7 @@ "description": "A collection of values returned by getEngineVersion.\n", "properties": { "defaultCharacterSet": { - "description": "The default character set for new instances of this engine version.\n", + "description": "Default character set for new instances of the engine version.\n", "type": "string" }, "defaultOnly": { @@ -381060,11 +381607,11 @@ "type": "string" }, "engineDescription": { - "description": "Description of the database engine.\n", + "description": "Description of the engine.\n", "type": "string" }, "exportableLogTypes": { - "description": "Set of log types that the database engine has available for export to CloudWatch Logs.\n", + "description": "Set of log types that the engine version has available for export to CloudWatch Logs.\n", "items": { "type": "string" }, @@ -381076,6 +381623,12 @@ }, "type": "array" }, + "hasMajorTarget": { + "type": "boolean" + }, + "hasMinorTarget": { + "type": "boolean" + }, "id": { "description": "The provider-assigned unique ID for this managed resource.\n", "type": "string" @@ -381108,55 +381661,69 @@ "type": "array" }, "status": { - "description": "Status of the database engine version, either available or deprecated.\n", + "description": "Status of the engine version, either `available` or `deprecated`.\n", "type": "string" }, "supportedCharacterSets": { - "description": "Set of the character sets supported by this engine.\n", + "description": "Set of character sets supported by th engine version.\n", "items": { "type": "string" }, "type": "array" }, "supportedFeatureNames": { - "description": "Set of features supported by the database engine.\n", + "description": "Set of features supported by the engine version.\n", "items": { "type": "string" }, "type": "array" }, "supportedModes": { - "description": "Set of the supported database engine modes.\n", + "description": "Set of supported engine version modes.\n", "items": { "type": "string" }, "type": "array" }, "supportedTimezones": { - "description": "Set of the time zones supported by this engine.\n", + "description": "Set of the time zones supported by the engine version.\n", "items": { "type": "string" }, "type": "array" }, "supportsGlobalDatabases": { - "description": "Indicates whether you can use Aurora global databases with a specific database engine version.\n", + "description": "Whether you can use Aurora global databases with the engine version.\n", "type": "boolean" }, "supportsLogExportsToCloudwatch": { - "description": "Indicates whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs.\n", + "description": "Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs.\n", "type": "boolean" }, "supportsParallelQuery": { - "description": "Indicates whether you can use Aurora parallel query with a specific database engine version.\n", + "description": "Whether you can use Aurora parallel query with the engine version.\n", "type": "boolean" }, "supportsReadReplica": { - "description": "Indicates whether the database engine version supports read replicas.\n", + "description": "Whether the engine version supports read replicas.\n", "type": "boolean" }, + "validMajorTargets": { + "description": "Set of versions that are valid major version upgrades for the engine version.\n", + "items": { + "type": "string" + }, + "type": "array" + }, + "validMinorTargets": { + "description": "Set of versions that are valid minor version upgrades for the engine version.\n", + "items": { + "type": "string" + }, + "type": "array" + }, "validUpgradeTargets": { - "description": "Set of engine versions that this database engine version can be upgraded to.\n", + "description": "Set of versions that are valid major or minor upgrades for the engine version.\n", "items": { "type": "string" }, @@ -381166,11 +381733,11 @@ "type": "string" }, "versionActual": { - "description": "Version of the database engine.\n", + "description": "Complete engine version.\n", "type": "string" }, "versionDescription": { - "description": "Description of the database engine version.\n", + "description": "Description of the engine version.\n", "type": "string" } }, @@ -381189,6 +381756,8 @@ "supportsLogExportsToCloudwatch", "supportsParallelQuery", "supportsReadReplica", + "validMajorTargets", + "validMinorTargets", "validUpgradeTargets", "version", "versionActual", @@ -384170,6 +384739,9 @@ "outputs": { "description": "A collection of values returned by getBucketObject.\n", "properties": { + "arn": { + "type": "string" + }, "body": { "description": "Object data (see **limitations above** to understand cases in which this field is actually available)\n", "type": "string" @@ -384280,6 +384852,7 @@ } }, "required": [ + "arn", "body", "bucket", "bucketKeyEnabled", @@ -384541,6 +385114,10 @@ "outputs": { "description": "A collection of values returned by getObject.\n", "properties": { + "arn": { + "description": "ARN of the object.\n", + "type": "string" + }, "body": { "description": "Object data (see **limitations above** to understand cases in which this field is actually available)\n", "type": "string" @@ -384669,6 +385246,7 @@ } }, "required": [ + "arn", "body", "bucket", "bucketKeyEnabled", From 35fb536e5cdd4a8dbc55773eb017068e8fd9aa70 Mon Sep 17 00:00:00 2001 From: Anton Tayanovskyy Date: Tue, 12 Mar 2024 18:35:47 -0400 Subject: [PATCH 6/6] make build_sdks --- sdk/dotnet/Account/Region.cs | 172 +++ .../JobQueueComputeEnvironmentOrderArgs.cs | 32 + .../JobQueueComputeEnvironmentOrderGetArgs.cs | 32 + sdk/dotnet/Batch/JobQueue.cs | 71 +- .../JobQueueComputeEnvironmentOrder.cs | 35 + sdk/dotnet/GuardDuty/DetectorFeature.cs | 6 +- ...ectorFeatureAdditionalConfigurationArgs.cs | 2 +- ...orFeatureAdditionalConfigurationGetArgs.cs | 2 +- .../DetectorFeatureAdditionalConfiguration.cs | 2 +- sdk/dotnet/Iot/Policy.cs | 49 + sdk/dotnet/Iot/RoleAlias.cs | 49 + .../Inputs/DomainAutoTuneOptionsArgs.cs | 8 + .../Inputs/DomainAutoTuneOptionsGetArgs.cs | 8 + .../Outputs/DomainAutoTuneOptions.cs | 11 +- sdk/dotnet/Rds/Cluster.cs | 6 +- sdk/dotnet/Rds/ClusterInstance.cs | 6 +- sdk/dotnet/Rds/GetEngineVersion.cs | 104 +- sdk/dotnet/S3/BucketObject.cs | 12 + sdk/dotnet/S3/BucketObjectv2.cs | 12 + sdk/dotnet/S3/GetBucketObject.cs | 4 + sdk/dotnet/S3/GetObject.cs | 7 + sdk/dotnet/S3/ObjectCopy.cs | 12 + .../Inputs/SubscriberSourceArgs.cs | 32 + ...ubscriberSourceAwsLogSourceResourceArgs.cs | 32 + ...criberSourceAwsLogSourceResourceGetArgs.cs | 32 + ...criberSourceCustomLogSourceResourceArgs.cs | 52 + ...rceCustomLogSourceResourceAttributeArgs.cs | 38 + ...CustomLogSourceResourceAttributeGetArgs.cs | 38 + ...berSourceCustomLogSourceResourceGetArgs.cs | 52 + ...urceCustomLogSourceResourceProviderArgs.cs | 32 + ...eCustomLogSourceResourceProviderGetArgs.cs | 32 + .../Inputs/SubscriberSourceGetArgs.cs | 32 + .../SubscriberSubscriberIdentityArgs.cs | 32 + .../SubscriberSubscriberIdentityGetArgs.cs | 32 + .../Inputs/SubscriberTimeoutsArgs.cs | 38 + .../Inputs/SubscriberTimeoutsGetArgs.cs | 38 + .../SecurityLake/Outputs/SubscriberSource.cs | 35 + .../SubscriberSourceAwsLogSourceResource.cs | 35 + ...SubscriberSourceCustomLogSourceResource.cs | 46 + ...rSourceCustomLogSourceResourceAttribute.cs | 42 + ...erSourceCustomLogSourceResourceProvider.cs | 35 + .../Outputs/SubscriberSubscriberIdentity.cs | 35 + .../Outputs/SubscriberTimeouts.cs | 42 + sdk/dotnet/SecurityLake/Subscriber.cs | 308 +++++ ...roupRuleStatementRateBasedStatementArgs.cs | 8 + ...pRuleStatementRateBasedStatementGetArgs.cs | 8 + ...bAclRuleStatementRateBasedStatementArgs.cs | 8 + ...lRuleStatementRateBasedStatementGetArgs.cs | 8 + ...uleGroupRuleStatementRateBasedStatement.cs | 9 + .../WebAclRuleStatementRateBasedStatement.cs | 9 + sdk/go/aws/account/init.go | 7 + sdk/go/aws/account/region.go | 300 +++++ sdk/go/aws/batch/jobQueue.go | 72 +- sdk/go/aws/batch/pulumiTypes.go | 110 ++ sdk/go/aws/guardduty/detectorFeature.go | 12 +- sdk/go/aws/guardduty/pulumiTypes.go | 6 +- sdk/go/aws/iot/policy.go | 34 + sdk/go/aws/iot/roleAlias.go | 34 + sdk/go/aws/opensearch/pulumiTypes.go | 27 + sdk/go/aws/rds/cluster.go | 12 +- sdk/go/aws/rds/clusterInstance.go | 12 +- sdk/go/aws/rds/getEngineVersion.go | 120 +- sdk/go/aws/s3/bucketObject.go | 11 + sdk/go/aws/s3/bucketObjectv2.go | 11 + sdk/go/aws/s3/getBucketObject.go | 5 + sdk/go/aws/s3/getObject.go | 7 + sdk/go/aws/s3/objectCopy.go | 11 + sdk/go/aws/securitylake/init.go | 7 + sdk/go/aws/securitylake/pulumiTypes.go | 1086 +++++++++++++++++ sdk/go/aws/securitylake/subscriber.go | 397 ++++++ sdk/go/aws/wafv2/pulumiTypes.go | 27 + sdk/go/aws/wafv2/pulumiTypes1.go | 27 + .../java/com/pulumi/aws/account/Region.java | 171 +++ .../com/pulumi/aws/account/RegionArgs.java | 165 +++ .../aws/account/inputs/RegionState.java | 195 +++ .../java/com/pulumi/aws/batch/JobQueue.java | 57 +- .../com/pulumi/aws/batch/JobQueueArgs.java | 96 +- .../JobQueueComputeEnvironmentOrderArgs.java | 126 ++ .../aws/batch/inputs/JobQueueState.java | 83 +- .../JobQueueComputeEnvironmentOrder.java | 82 ++ .../pulumi/aws/guardduty/DetectorFeature.java | 4 +- .../aws/guardduty/DetectorFeatureArgs.java | 8 +- ...torFeatureAdditionalConfigurationArgs.java | 8 +- .../inputs/DetectorFeatureState.java | 8 +- ...etectorFeatureAdditionalConfiguration.java | 4 +- .../main/java/com/pulumi/aws/iot/Policy.java | 34 + .../java/com/pulumi/aws/iot/PolicyArgs.java | 38 + .../java/com/pulumi/aws/iot/RoleAlias.java | 33 + .../com/pulumi/aws/iot/RoleAliasArgs.java | 38 + .../pulumi/aws/iot/inputs/PolicyState.java | 91 ++ .../pulumi/aws/iot/inputs/RoleAliasState.java | 91 ++ .../inputs/DomainAutoTuneOptionsArgs.java | 48 + .../outputs/DomainAutoTuneOptions.java | 26 + .../main/java/com/pulumi/aws/rds/Cluster.java | 4 +- .../java/com/pulumi/aws/rds/ClusterArgs.java | 8 +- .../com/pulumi/aws/rds/ClusterInstance.java | 4 +- .../pulumi/aws/rds/ClusterInstanceArgs.java | 8 +- .../aws/rds/inputs/ClusterInstanceState.java | 8 +- .../pulumi/aws/rds/inputs/ClusterState.java | 8 +- .../aws/rds/inputs/GetEngineVersionArgs.java | 138 ++- .../rds/inputs/GetEngineVersionPlainArgs.java | 104 +- .../rds/outputs/GetEngineVersionResult.java | 138 ++- .../java/com/pulumi/aws/s3/BucketObject.java | 14 + .../com/pulumi/aws/s3/BucketObjectv2.java | 14 + .../java/com/pulumi/aws/s3/ObjectCopy.java | 14 + .../aws/s3/inputs/BucketObjectState.java | 37 + .../aws/s3/inputs/BucketObjectv2State.java | 37 + .../pulumi/aws/s3/inputs/ObjectCopyState.java | 37 + .../aws/s3/outputs/GetBucketObjectResult.java | 15 + .../aws/s3/outputs/GetObjectResult.java | 23 + .../pulumi/aws/securitylake/Subscriber.java | 330 +++++ .../aws/securitylake/SubscriberArgs.java | 269 ++++ .../inputs/SubscriberSourceArgs.java | 121 ++ ...scriberSourceAwsLogSourceResourceArgs.java | 120 ++ ...iberSourceCustomLogSourceResourceArgs.java | 191 +++ ...eCustomLogSourceResourceAttributeArgs.java | 165 +++ ...ceCustomLogSourceResourceProviderArgs.java | 125 ++ .../securitylake/inputs/SubscriberState.java | 581 +++++++++ .../SubscriberSubscriberIdentityArgs.java | 125 ++ .../inputs/SubscriberTimeoutsArgs.java | 157 +++ .../outputs/SubscriberSource.java | 79 ++ .../SubscriberSourceAwsLogSourceResource.java | 78 ++ ...bscriberSourceCustomLogSourceResource.java | 121 ++ ...ourceCustomLogSourceResourceAttribute.java | 104 ++ ...SourceCustomLogSourceResourceProvider.java | 81 ++ .../outputs/SubscriberSubscriberIdentity.java | 81 ++ .../outputs/SubscriberTimeouts.java | 99 ++ ...upRuleStatementRateBasedStatementArgs.java | 45 + ...clRuleStatementRateBasedStatementArgs.java | 45 + ...eGroupRuleStatementRateBasedStatement.java | 25 + ...WebAclRuleStatementRateBasedStatement.java | 25 + sdk/nodejs/account/index.ts | 8 + sdk/nodejs/account/region.ts | 150 +++ sdk/nodejs/batch/jobQueue.ts | 60 +- sdk/nodejs/guardduty/detectorFeature.ts | 6 +- sdk/nodejs/iot/policy.ts | 28 + sdk/nodejs/iot/roleAlias.ts | 28 + sdk/nodejs/rds/cluster.ts | 6 +- sdk/nodejs/rds/clusterInstance.ts | 6 +- sdk/nodejs/rds/getEngineVersion.ts | 86 +- sdk/nodejs/s3/bucketObject.ts | 10 + sdk/nodejs/s3/bucketObjectv2.ts | 10 + sdk/nodejs/s3/getBucketObject.ts | 1 + sdk/nodejs/s3/getObject.ts | 4 + sdk/nodejs/s3/objectCopy.ts | 10 + sdk/nodejs/securitylake/index.ts | 8 + sdk/nodejs/securitylake/subscriber.ts | 245 ++++ sdk/nodejs/tsconfig.json | 2 + sdk/nodejs/types/input.ts | 121 +- sdk/nodejs/types/output.ts | 123 +- sdk/python/pulumi_aws/__init__.py | 16 + sdk/python/pulumi_aws/account/__init__.py | 1 + sdk/python/pulumi_aws/account/region.py | 311 +++++ sdk/python/pulumi_aws/batch/_inputs.py | 38 + sdk/python/pulumi_aws/batch/job_queue.py | 162 ++- sdk/python/pulumi_aws/batch/outputs.py | 47 + sdk/python/pulumi_aws/guardduty/_inputs.py | 4 +- .../pulumi_aws/guardduty/detector_feature.py | 14 +- sdk/python/pulumi_aws/guardduty/outputs.py | 4 +- sdk/python/pulumi_aws/iot/policy.py | 90 +- sdk/python/pulumi_aws/iot/role_alias.py | 90 +- sdk/python/pulumi_aws/opensearch/_inputs.py | 22 +- sdk/python/pulumi_aws/opensearch/outputs.py | 20 +- sdk/python/pulumi_aws/rds/cluster.py | 14 +- sdk/python/pulumi_aws/rds/cluster_instance.py | 14 +- .../pulumi_aws/rds/get_engine_version.py | 116 +- sdk/python/pulumi_aws/s3/bucket_object.py | 28 + sdk/python/pulumi_aws/s3/bucket_objectv2.py | 28 + sdk/python/pulumi_aws/s3/get_bucket_object.py | 12 +- sdk/python/pulumi_aws/s3/get_object.py | 15 +- sdk/python/pulumi_aws/s3/object_copy.py | 28 + .../pulumi_aws/securitylake/__init__.py | 1 + sdk/python/pulumi_aws/securitylake/_inputs.py | 333 +++++ sdk/python/pulumi_aws/securitylake/outputs.py | 373 ++++++ .../pulumi_aws/securitylake/subscriber.py | 652 ++++++++++ sdk/python/pulumi_aws/wafv2/_inputs.py | 40 + sdk/python/pulumi_aws/wafv2/outputs.py | 36 + 177 files changed, 12052 insertions(+), 470 deletions(-) create mode 100644 sdk/dotnet/Account/Region.cs create mode 100644 sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderArgs.cs create mode 100644 sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderGetArgs.cs create mode 100644 sdk/dotnet/Batch/Outputs/JobQueueComputeEnvironmentOrder.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSourceGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsGetArgs.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSource.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSourceAwsLogSourceResource.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResource.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceAttribute.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceProvider.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberSubscriberIdentity.cs create mode 100644 sdk/dotnet/SecurityLake/Outputs/SubscriberTimeouts.cs create mode 100644 sdk/dotnet/SecurityLake/Subscriber.cs create mode 100644 sdk/go/aws/account/region.go create mode 100644 sdk/go/aws/securitylake/subscriber.go create mode 100644 sdk/java/src/main/java/com/pulumi/aws/account/Region.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/account/RegionArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/account/inputs/RegionState.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueComputeEnvironmentOrderArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueComputeEnvironmentOrder.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/Subscriber.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/SubscriberArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceAwsLogSourceResourceArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberState.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSubscriberIdentityArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberTimeoutsArgs.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSource.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceAwsLogSourceResource.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResource.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceAttribute.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceProvider.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSubscriberIdentity.java create mode 100644 sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberTimeouts.java create mode 100644 sdk/nodejs/account/region.ts create mode 100644 sdk/nodejs/securitylake/subscriber.ts create mode 100644 sdk/python/pulumi_aws/account/region.py create mode 100644 sdk/python/pulumi_aws/securitylake/subscriber.py diff --git a/sdk/dotnet/Account/Region.cs b/sdk/dotnet/Account/Region.cs new file mode 100644 index 00000000000..df3b62b843e --- /dev/null +++ b/sdk/dotnet/Account/Region.cs @@ -0,0 +1,172 @@ +// *** 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.Account +{ + /// + /// Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. + /// + /// ## Example Usage + /// + /// <!--Start PulumiCodeChooser --> + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Aws = Pulumi.Aws; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var example = new Aws.Account.Region("example", new() + /// { + /// RegionName = "ap-southeast-3", + /// Enabled = true, + /// }); + /// + /// }); + /// ``` + /// <!--End PulumiCodeChooser --> + /// + /// ## Import + /// + /// Using `pulumi import`. For example: + /// + /// ```sh + /// $ pulumi import aws:account/region:Region example ap-southeast-3 + /// ``` + /// + [AwsResourceType("aws:account/region:Region")] + public partial class Region : global::Pulumi.CustomResource + { + /// + /// The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + /// + [Output("accountId")] + public Output AccountId { get; private set; } = null!; + + /// + /// Whether the region is enabled. + /// + [Output("enabled")] + public Output Enabled { get; private set; } = null!; + + /// + /// The region opt status. + /// + [Output("optStatus")] + public Output OptStatus { get; private set; } = null!; + + /// + /// The region name to manage. + /// + [Output("regionName")] + public Output RegionName { get; private set; } = null!; + + + /// + /// Create a Region 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 Region(string name, RegionArgs args, CustomResourceOptions? options = null) + : base("aws:account/region:Region", name, args ?? new RegionArgs(), MakeResourceOptions(options, "")) + { + } + + private Region(string name, Input id, RegionState? state = null, CustomResourceOptions? options = null) + : base("aws:account/region:Region", 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 Region 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 Region Get(string name, Input id, RegionState? state = null, CustomResourceOptions? options = null) + { + return new Region(name, id, state, options); + } + } + + public sealed class RegionArgs : global::Pulumi.ResourceArgs + { + /// + /// The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + /// + [Input("accountId")] + public Input? AccountId { get; set; } + + /// + /// Whether the region is enabled. + /// + [Input("enabled", required: true)] + public Input Enabled { get; set; } = null!; + + /// + /// The region name to manage. + /// + [Input("regionName", required: true)] + public Input RegionName { get; set; } = null!; + + public RegionArgs() + { + } + public static new RegionArgs Empty => new RegionArgs(); + } + + public sealed class RegionState : global::Pulumi.ResourceArgs + { + /// + /// The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + /// + [Input("accountId")] + public Input? AccountId { get; set; } + + /// + /// Whether the region is enabled. + /// + [Input("enabled")] + public Input? Enabled { get; set; } + + /// + /// The region opt status. + /// + [Input("optStatus")] + public Input? OptStatus { get; set; } + + /// + /// The region name to manage. + /// + [Input("regionName")] + public Input? RegionName { get; set; } + + public RegionState() + { + } + public static new RegionState Empty => new RegionState(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderArgs.cs b/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderArgs.cs new file mode 100644 index 00000000000..d693e21764a --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderArgs.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.Batch.Inputs +{ + + public sealed class JobQueueComputeEnvironmentOrderArgs : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the compute environment. + /// + [Input("computeEnvironment", required: true)] + public Input ComputeEnvironment { get; set; } = null!; + + /// + /// The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + /// + [Input("order", required: true)] + public Input Order { get; set; } = null!; + + public JobQueueComputeEnvironmentOrderArgs() + { + } + public static new JobQueueComputeEnvironmentOrderArgs Empty => new JobQueueComputeEnvironmentOrderArgs(); + } +} diff --git a/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderGetArgs.cs b/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderGetArgs.cs new file mode 100644 index 00000000000..fca7253c2df --- /dev/null +++ b/sdk/dotnet/Batch/Inputs/JobQueueComputeEnvironmentOrderGetArgs.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.Batch.Inputs +{ + + public sealed class JobQueueComputeEnvironmentOrderGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The Amazon Resource Name (ARN) of the compute environment. + /// + [Input("computeEnvironment", required: true)] + public Input ComputeEnvironment { get; set; } = null!; + + /// + /// The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + /// + [Input("order", required: true)] + public Input Order { get; set; } = null!; + + public JobQueueComputeEnvironmentOrderGetArgs() + { + } + public static new JobQueueComputeEnvironmentOrderGetArgs Empty => new JobQueueComputeEnvironmentOrderGetArgs(); + } +} diff --git a/sdk/dotnet/Batch/JobQueue.cs b/sdk/dotnet/Batch/JobQueue.cs index d2f869d919e..9a26841a949 100644 --- a/sdk/dotnet/Batch/JobQueue.cs +++ b/sdk/dotnet/Batch/JobQueue.cs @@ -30,10 +30,18 @@ namespace Pulumi.Aws.Batch /// Name = "tf-test-batch-job-queue", /// State = "ENABLED", /// Priority = 1, - /// ComputeEnvironments = new[] + /// ComputeEnvironmentOrders = new[] /// { - /// testEnvironment1.Arn, - /// testEnvironment2.Arn, + /// new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs + /// { + /// Order = 1, + /// ComputeEnvironment = testEnvironment1.Arn, + /// }, + /// new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs + /// { + /// Order = 2, + /// ComputeEnvironment = testEnvironment2.Arn, + /// }, /// }, /// }); /// @@ -76,10 +84,18 @@ namespace Pulumi.Aws.Batch /// SchedulingPolicyArn = example.Arn, /// State = "ENABLED", /// Priority = 1, - /// ComputeEnvironments = new[] + /// ComputeEnvironmentOrders = new[] /// { - /// testEnvironment1.Arn, - /// testEnvironment2.Arn, + /// new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs + /// { + /// Order = 1, + /// ComputeEnvironment = testEnvironment1.Arn, + /// }, + /// new Aws.Batch.Inputs.JobQueueComputeEnvironmentOrderArgs + /// { + /// Order = 2, + /// ComputeEnvironment = testEnvironment2.Arn, + /// }, /// }, /// }); /// @@ -105,8 +121,13 @@ public partial class JobQueue : global::Pulumi.CustomResource public Output Arn { get; private set; } = null!; /// - /// List of compute environment ARNs mapped to a job queue. - /// The position of the compute environments in the list will dictate the order. + /// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + /// + [Output("computeEnvironmentOrders")] + public Output> ComputeEnvironmentOrders { get; private set; } = null!; + + /// + /// (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. /// [Output("computeEnvironments")] public Output> ComputeEnvironments { get; private set; } = null!; @@ -197,13 +218,25 @@ public static JobQueue Get(string name, Input id, JobQueueState? state = public sealed class JobQueueArgs : global::Pulumi.ResourceArgs { - [Input("computeEnvironments", required: true)] + [Input("computeEnvironmentOrders")] + private InputList? _computeEnvironmentOrders; + + /// + /// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + /// + public InputList ComputeEnvironmentOrders + { + get => _computeEnvironmentOrders ?? (_computeEnvironmentOrders = new InputList()); + set => _computeEnvironmentOrders = value; + } + + [Input("computeEnvironments")] private InputList? _computeEnvironments; /// - /// List of compute environment ARNs mapped to a job queue. - /// The position of the compute environments in the list will dictate the order. + /// (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. /// + [Obsolete(@"This parameter will be replaced by `compute_environments_order`.")] public InputList ComputeEnvironments { get => _computeEnvironments ?? (_computeEnvironments = new InputList()); @@ -264,13 +297,25 @@ public sealed class JobQueueState : global::Pulumi.ResourceArgs [Input("arn")] public Input? Arn { get; set; } + [Input("computeEnvironmentOrders")] + private InputList? _computeEnvironmentOrders; + + /// + /// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + /// + public InputList ComputeEnvironmentOrders + { + get => _computeEnvironmentOrders ?? (_computeEnvironmentOrders = new InputList()); + set => _computeEnvironmentOrders = value; + } + [Input("computeEnvironments")] private InputList? _computeEnvironments; /// - /// List of compute environment ARNs mapped to a job queue. - /// The position of the compute environments in the list will dictate the order. + /// (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. /// + [Obsolete(@"This parameter will be replaced by `compute_environments_order`.")] public InputList ComputeEnvironments { get => _computeEnvironments ?? (_computeEnvironments = new InputList()); diff --git a/sdk/dotnet/Batch/Outputs/JobQueueComputeEnvironmentOrder.cs b/sdk/dotnet/Batch/Outputs/JobQueueComputeEnvironmentOrder.cs new file mode 100644 index 00000000000..d1814de6a3d --- /dev/null +++ b/sdk/dotnet/Batch/Outputs/JobQueueComputeEnvironmentOrder.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.Batch.Outputs +{ + + [OutputType] + public sealed class JobQueueComputeEnvironmentOrder + { + /// + /// The Amazon Resource Name (ARN) of the compute environment. + /// + public readonly string ComputeEnvironment; + /// + /// The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + /// + public readonly int Order; + + [OutputConstructor] + private JobQueueComputeEnvironmentOrder( + string computeEnvironment, + + int order) + { + ComputeEnvironment = computeEnvironment; + Order = order; + } + } +} diff --git a/sdk/dotnet/GuardDuty/DetectorFeature.cs b/sdk/dotnet/GuardDuty/DetectorFeature.cs index f3ad5b3016a..1b4df506554 100644 --- a/sdk/dotnet/GuardDuty/DetectorFeature.cs +++ b/sdk/dotnet/GuardDuty/DetectorFeature.cs @@ -65,7 +65,7 @@ public partial class DetectorFeature : global::Pulumi.CustomResource public Output DetectorId { get; private set; } = null!; /// - /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. /// [Output("name")] public Output Name { get; private set; } = null!; @@ -141,7 +141,7 @@ public InputList AdditionalCo public Input DetectorId { get; set; } = null!; /// - /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. /// [Input("name")] public Input? Name { get; set; } @@ -179,7 +179,7 @@ public InputList Additiona public Input? DetectorId { get; set; } /// - /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + /// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. /// [Input("name")] public Input? Name { get; set; } diff --git a/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationArgs.cs b/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationArgs.cs index 9bdd63ca965..458511beb2f 100644 --- a/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationArgs.cs +++ b/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.GuardDuty.Inputs public sealed class DetectorFeatureAdditionalConfigurationArgs : global::Pulumi.ResourceArgs { /// - /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. /// [Input("name", required: true)] public Input Name { get; set; } = null!; diff --git a/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationGetArgs.cs b/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationGetArgs.cs index 019550f57bb..06f5a241263 100644 --- a/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationGetArgs.cs +++ b/sdk/dotnet/GuardDuty/Inputs/DetectorFeatureAdditionalConfigurationGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Aws.GuardDuty.Inputs public sealed class DetectorFeatureAdditionalConfigurationGetArgs : global::Pulumi.ResourceArgs { /// - /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. /// [Input("name", required: true)] public Input Name { get; set; } = null!; diff --git a/sdk/dotnet/GuardDuty/Outputs/DetectorFeatureAdditionalConfiguration.cs b/sdk/dotnet/GuardDuty/Outputs/DetectorFeatureAdditionalConfiguration.cs index eb631245cdd..45bb233567d 100644 --- a/sdk/dotnet/GuardDuty/Outputs/DetectorFeatureAdditionalConfiguration.cs +++ b/sdk/dotnet/GuardDuty/Outputs/DetectorFeatureAdditionalConfiguration.cs @@ -14,7 +14,7 @@ namespace Pulumi.Aws.GuardDuty.Outputs public sealed class DetectorFeatureAdditionalConfiguration { /// - /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + /// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. /// public readonly string Name; /// diff --git a/sdk/dotnet/Iot/Policy.cs b/sdk/dotnet/Iot/Policy.cs index 6a050028d55..21ea5b04136 100644 --- a/sdk/dotnet/Iot/Policy.cs +++ b/sdk/dotnet/Iot/Policy.cs @@ -86,6 +86,18 @@ public partial class Policy : global::Pulumi.CustomResource [Output("policy")] public Output PolicyDocument { 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!; + /// /// Create a Policy resource with the given unique name, arguments, and options. @@ -144,6 +156,18 @@ public sealed class PolicyArgs : global::Pulumi.ResourceArgs [Input("policy", required: true)] public Input PolicyDocument { get; set; } = null!; + [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; + } + public PolicyArgs() { } @@ -176,6 +200,31 @@ public sealed class PolicyState : global::Pulumi.ResourceArgs [Input("policy")] public Input? PolicyDocument { get; set; } + [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; + } + public PolicyState() { } diff --git a/sdk/dotnet/Iot/RoleAlias.cs b/sdk/dotnet/Iot/RoleAlias.cs index 3881b621638..5000602f922 100644 --- a/sdk/dotnet/Iot/RoleAlias.cs +++ b/sdk/dotnet/Iot/RoleAlias.cs @@ -47,6 +47,18 @@ public partial class RoleAlias : global::Pulumi.CustomResource [Output("roleArn")] public Output RoleArn { 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!; + /// /// Create a RoleAlias resource with the given unique name, arguments, and options. @@ -111,6 +123,18 @@ public sealed class RoleAliasArgs : global::Pulumi.ResourceArgs [Input("roleArn", required: true)] public Input RoleArn { get; set; } = null!; + [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; + } + public RoleAliasArgs() { } @@ -143,6 +167,31 @@ public sealed class RoleAliasState : global::Pulumi.ResourceArgs [Input("roleArn")] public Input? RoleArn { get; set; } + [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; + } + public RoleAliasState() { } diff --git a/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsArgs.cs b/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsArgs.cs index 7339a52b9b6..6713d30e65e 100644 --- a/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsArgs.cs +++ b/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsArgs.cs @@ -23,6 +23,8 @@ public sealed class DomainAutoTuneOptionsArgs : global::Pulumi.ResourceArgs /// /// Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + /// + /// **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. /// public InputList MaintenanceSchedules { @@ -36,6 +38,12 @@ public InputList Maintenanc [Input("rollbackOnDisable")] public Input? RollbackOnDisable { get; set; } + /// + /// Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + /// + [Input("useOffPeakWindow")] + public Input? UseOffPeakWindow { get; set; } + public DomainAutoTuneOptionsArgs() { } diff --git a/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsGetArgs.cs b/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsGetArgs.cs index 206fcbd7608..a503ad4ee89 100644 --- a/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsGetArgs.cs +++ b/sdk/dotnet/OpenSearch/Inputs/DomainAutoTuneOptionsGetArgs.cs @@ -23,6 +23,8 @@ public sealed class DomainAutoTuneOptionsGetArgs : global::Pulumi.ResourceArgs /// /// Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + /// + /// **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. /// public InputList MaintenanceSchedules { @@ -36,6 +38,12 @@ public InputList Mainten [Input("rollbackOnDisable")] public Input? RollbackOnDisable { get; set; } + /// + /// Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + /// + [Input("useOffPeakWindow")] + public Input? UseOffPeakWindow { get; set; } + public DomainAutoTuneOptionsGetArgs() { } diff --git a/sdk/dotnet/OpenSearch/Outputs/DomainAutoTuneOptions.cs b/sdk/dotnet/OpenSearch/Outputs/DomainAutoTuneOptions.cs index f651b3f88fa..d1be47d07af 100644 --- a/sdk/dotnet/OpenSearch/Outputs/DomainAutoTuneOptions.cs +++ b/sdk/dotnet/OpenSearch/Outputs/DomainAutoTuneOptions.cs @@ -19,12 +19,18 @@ public sealed class DomainAutoTuneOptions public readonly string DesiredState; /// /// Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + /// + /// **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. /// public readonly ImmutableArray MaintenanceSchedules; /// /// Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. /// public readonly string? RollbackOnDisable; + /// + /// Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + /// + public readonly bool? UseOffPeakWindow; [OutputConstructor] private DomainAutoTuneOptions( @@ -32,11 +38,14 @@ private DomainAutoTuneOptions( ImmutableArray maintenanceSchedules, - string? rollbackOnDisable) + string? rollbackOnDisable, + + bool? useOffPeakWindow) { DesiredState = desiredState; MaintenanceSchedules = maintenanceSchedules; RollbackOnDisable = rollbackOnDisable; + UseOffPeakWindow = useOffPeakWindow; } } } diff --git a/sdk/dotnet/Rds/Cluster.cs b/sdk/dotnet/Rds/Cluster.cs index e3dd8749ccc..fa5181a5e42 100644 --- a/sdk/dotnet/Rds/Cluster.cs +++ b/sdk/dotnet/Rds/Cluster.cs @@ -657,7 +657,7 @@ public partial class Cluster : global::Pulumi.CustomResource public Output StorageEncrypted { get; private set; } = null!; /// - /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). /// [Output("storageType")] public Output StorageType { get; private set; } = null!; @@ -1062,7 +1062,7 @@ public Input? MasterPassword public Input? StorageEncrypted { get; set; } /// - /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). /// [Input("storageType")] public Input? StorageType { get; set; } @@ -1480,7 +1480,7 @@ public InputList MasterUserSecrets public Input? StorageEncrypted { get; set; } /// - /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + /// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). /// [Input("storageType")] public Input? StorageType { get; set; } diff --git a/sdk/dotnet/Rds/ClusterInstance.cs b/sdk/dotnet/Rds/ClusterInstance.cs index 616a1e40c13..e02e312f9c5 100644 --- a/sdk/dotnet/Rds/ClusterInstance.cs +++ b/sdk/dotnet/Rds/ClusterInstance.cs @@ -154,7 +154,7 @@ public partial class ClusterInstance : global::Pulumi.CustomResource /// /// Name of the database engine to be used for the RDS cluster instance. - /// Valid Values: `aurora-mysql`, `aurora-postgresql`. + /// Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). /// [Output("engine")] public Output Engine { get; private set; } = null!; @@ -387,7 +387,7 @@ public sealed class ClusterInstanceArgs : global::Pulumi.ResourceArgs /// /// Name of the database engine to be used for the RDS cluster instance. - /// Valid Values: `aurora-mysql`, `aurora-postgresql`. + /// Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). /// [Input("engine", required: true)] public Input Engine { get; set; } = null!; @@ -564,7 +564,7 @@ public sealed class ClusterInstanceState : global::Pulumi.ResourceArgs /// /// Name of the database engine to be used for the RDS cluster instance. - /// Valid Values: `aurora-mysql`, `aurora-postgresql`. + /// Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). /// [Input("engine")] public Input? Engine { get; set; } diff --git a/sdk/dotnet/Rds/GetEngineVersion.cs b/sdk/dotnet/Rds/GetEngineVersion.cs index 41853e3aed5..ba3ea8f3364 100644 --- a/sdk/dotnet/Rds/GetEngineVersion.cs +++ b/sdk/dotnet/Rds/GetEngineVersion.cs @@ -148,7 +148,7 @@ public static Output Invoke(GetEngineVersionInvokeArgs a public sealed class GetEngineVersionArgs : global::Pulumi.InvokeArgs { /// - /// When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + /// Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. /// [Input("defaultOnly")] public bool? DefaultOnly { get; set; } @@ -165,7 +165,7 @@ public sealed class GetEngineVersionArgs : global::Pulumi.InvokeArgs private List? _filters; /// - /// One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + /// One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). /// public List Filters { @@ -174,13 +174,25 @@ public List Filters } /// - /// When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + /// Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + /// + [Input("hasMajorTarget")] + public bool? HasMajorTarget { get; set; } + + /// + /// Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + /// + [Input("hasMinorTarget")] + public bool? HasMinorTarget { get; set; } + + /// + /// Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. /// [Input("includeAll")] public bool? IncludeAll { get; set; } /// - /// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + /// Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. /// [Input("latest")] public bool? Latest { get; set; } @@ -195,7 +207,7 @@ public List Filters private List? _preferredMajorTargets; /// - /// Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. /// public List PreferredMajorTargets { @@ -207,7 +219,7 @@ public List PreferredMajorTargets private List? _preferredUpgradeTargets; /// - /// Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. /// public List PreferredUpgradeTargets { @@ -219,7 +231,7 @@ public List PreferredUpgradeTargets private List? _preferredVersions; /// - /// Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. /// public List PreferredVersions { @@ -239,7 +251,7 @@ public GetEngineVersionArgs() public sealed class GetEngineVersionInvokeArgs : global::Pulumi.InvokeArgs { /// - /// When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + /// Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. /// [Input("defaultOnly")] public Input? DefaultOnly { get; set; } @@ -256,7 +268,7 @@ public sealed class GetEngineVersionInvokeArgs : global::Pulumi.InvokeArgs private InputList? _filters; /// - /// One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + /// One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). /// public InputList Filters { @@ -265,13 +277,25 @@ public InputList Filters } /// - /// When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + /// Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + /// + [Input("hasMajorTarget")] + public Input? HasMajorTarget { get; set; } + + /// + /// Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + /// + [Input("hasMinorTarget")] + public Input? HasMinorTarget { get; set; } + + /// + /// Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. /// [Input("includeAll")] public Input? IncludeAll { get; set; } /// - /// When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + /// Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. /// [Input("latest")] public Input? Latest { get; set; } @@ -286,7 +310,7 @@ public InputList Filters private InputList? _preferredMajorTargets; /// - /// Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. /// public InputList PreferredMajorTargets { @@ -298,7 +322,7 @@ public InputList PreferredMajorTargets private InputList? _preferredUpgradeTargets; /// - /// Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. /// public InputList PreferredUpgradeTargets { @@ -310,7 +334,7 @@ public InputList PreferredUpgradeTargets private InputList? _preferredVersions; /// - /// Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + /// Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. /// public InputList PreferredVersions { @@ -332,20 +356,22 @@ public GetEngineVersionInvokeArgs() public sealed class GetEngineVersionResult { /// - /// The default character set for new instances of this engine version. + /// Default character set for new instances of the engine version. /// public readonly string DefaultCharacterSet; public readonly bool? DefaultOnly; public readonly string Engine; /// - /// Description of the database engine. + /// Description of the engine. /// public readonly string EngineDescription; /// - /// Set of log types that the database engine has available for export to CloudWatch Logs. + /// Set of log types that the engine version has available for export to CloudWatch Logs. /// public readonly ImmutableArray ExportableLogTypes; public readonly ImmutableArray Filters; + public readonly bool? HasMajorTarget; + public readonly bool? HasMinorTarget; /// /// The provider-assigned unique ID for this managed resource. /// @@ -357,52 +383,60 @@ public sealed class GetEngineVersionResult public readonly ImmutableArray PreferredUpgradeTargets; public readonly ImmutableArray PreferredVersions; /// - /// Status of the database engine version, either available or deprecated. + /// Status of the engine version, either `available` or `deprecated`. /// public readonly string Status; /// - /// Set of the character sets supported by this engine. + /// Set of character sets supported by th engine version. /// public readonly ImmutableArray SupportedCharacterSets; /// - /// Set of features supported by the database engine. + /// Set of features supported by the engine version. /// public readonly ImmutableArray SupportedFeatureNames; /// - /// Set of the supported database engine modes. + /// Set of supported engine version modes. /// public readonly ImmutableArray SupportedModes; /// - /// Set of the time zones supported by this engine. + /// Set of the time zones supported by the engine version. /// public readonly ImmutableArray SupportedTimezones; /// - /// Indicates whether you can use Aurora global databases with a specific database engine version. + /// Whether you can use Aurora global databases with the engine version. /// public readonly bool SupportsGlobalDatabases; /// - /// Indicates whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. + /// Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. /// public readonly bool SupportsLogExportsToCloudwatch; /// - /// Indicates whether you can use Aurora parallel query with a specific database engine version. + /// Whether you can use Aurora parallel query with the engine version. /// public readonly bool SupportsParallelQuery; /// - /// Indicates whether the database engine version supports read replicas. + /// Whether the engine version supports read replicas. /// public readonly bool SupportsReadReplica; /// - /// Set of engine versions that this database engine version can be upgraded to. + /// Set of versions that are valid major version upgrades for the engine version. + /// + public readonly ImmutableArray ValidMajorTargets; + /// + /// Set of versions that are valid minor version upgrades for the engine version. + /// + public readonly ImmutableArray ValidMinorTargets; + /// + /// Set of versions that are valid major or minor upgrades for the engine version. /// public readonly ImmutableArray ValidUpgradeTargets; public readonly string Version; /// - /// Version of the database engine. + /// Complete engine version. /// public readonly string VersionActual; /// - /// Description of the database engine version. + /// Description of the engine version. /// public readonly string VersionDescription; @@ -420,6 +454,10 @@ private GetEngineVersionResult( ImmutableArray filters, + bool? hasMajorTarget, + + bool? hasMinorTarget, + string id, bool? includeAll, @@ -452,6 +490,10 @@ private GetEngineVersionResult( bool supportsReadReplica, + ImmutableArray validMajorTargets, + + ImmutableArray validMinorTargets, + ImmutableArray validUpgradeTargets, string version, @@ -466,6 +508,8 @@ private GetEngineVersionResult( EngineDescription = engineDescription; ExportableLogTypes = exportableLogTypes; Filters = filters; + HasMajorTarget = hasMajorTarget; + HasMinorTarget = hasMinorTarget; Id = id; IncludeAll = includeAll; Latest = latest; @@ -482,6 +526,8 @@ private GetEngineVersionResult( SupportsLogExportsToCloudwatch = supportsLogExportsToCloudwatch; SupportsParallelQuery = supportsParallelQuery; SupportsReadReplica = supportsReadReplica; + ValidMajorTargets = validMajorTargets; + ValidMinorTargets = validMinorTargets; ValidUpgradeTargets = validUpgradeTargets; Version = version; VersionActual = versionActual; diff --git a/sdk/dotnet/S3/BucketObject.cs b/sdk/dotnet/S3/BucketObject.cs index 1a6ac319ce4..088d5010023 100644 --- a/sdk/dotnet/S3/BucketObject.cs +++ b/sdk/dotnet/S3/BucketObject.cs @@ -222,6 +222,12 @@ public partial class BucketObject : global::Pulumi.CustomResource [Output("acl")] public Output Acl { get; private set; } = null!; + /// + /// ARN of the object. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + /// /// Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. /// @@ -596,6 +602,12 @@ public sealed class BucketObjectState : global::Pulumi.ResourceArgs [Input("acl")] public Input? Acl { get; set; } + /// + /// ARN of the object. + /// + [Input("arn")] + public Input? Arn { get; set; } + /// /// Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. /// diff --git a/sdk/dotnet/S3/BucketObjectv2.cs b/sdk/dotnet/S3/BucketObjectv2.cs index fec2c506a05..8ffc44a79f4 100644 --- a/sdk/dotnet/S3/BucketObjectv2.cs +++ b/sdk/dotnet/S3/BucketObjectv2.cs @@ -265,6 +265,12 @@ public partial class BucketObjectv2 : global::Pulumi.CustomResource [Output("acl")] public Output Acl { get; private set; } = null!; + /// + /// ARN of the object. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + /// /// Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. /// @@ -695,6 +701,12 @@ public sealed class BucketObjectv2State : global::Pulumi.ResourceArgs [Input("acl")] public Input? Acl { get; set; } + /// + /// ARN of the object. + /// + [Input("arn")] + public Input? Arn { get; set; } + /// /// Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. /// diff --git a/sdk/dotnet/S3/GetBucketObject.cs b/sdk/dotnet/S3/GetBucketObject.cs index 7d506e45358..61c3fc97969 100644 --- a/sdk/dotnet/S3/GetBucketObject.cs +++ b/sdk/dotnet/S3/GetBucketObject.cs @@ -253,6 +253,7 @@ public GetBucketObjectInvokeArgs() [OutputType] public sealed class GetBucketObjectResult { + public readonly string Arn; /// /// Object data (see **limitations above** to understand cases in which this field is actually available) /// @@ -351,6 +352,8 @@ public sealed class GetBucketObjectResult [OutputConstructor] private GetBucketObjectResult( + string arn, + string body, string bucket, @@ -403,6 +406,7 @@ private GetBucketObjectResult( string websiteRedirectLocation) { + Arn = arn; Body = body; Bucket = bucket; BucketKeyEnabled = bucketKeyEnabled; diff --git a/sdk/dotnet/S3/GetObject.cs b/sdk/dotnet/S3/GetObject.cs index d04ab04e69b..7c94c09040f 100644 --- a/sdk/dotnet/S3/GetObject.cs +++ b/sdk/dotnet/S3/GetObject.cs @@ -261,6 +261,10 @@ public GetObjectInvokeArgs() [OutputType] public sealed class GetObjectResult { + /// + /// ARN of the object. + /// + public readonly string Arn; /// /// Object data (see **limitations above** to understand cases in which this field is actually available) /// @@ -376,6 +380,8 @@ public sealed class GetObjectResult [OutputConstructor] private GetObjectResult( + string arn, + string body, string bucket, @@ -438,6 +444,7 @@ private GetObjectResult( string websiteRedirectLocation) { + Arn = arn; Body = body; Bucket = bucket; BucketKeyEnabled = bucketKeyEnabled; diff --git a/sdk/dotnet/S3/ObjectCopy.cs b/sdk/dotnet/S3/ObjectCopy.cs index f5c6281054b..185c814b2dd 100644 --- a/sdk/dotnet/S3/ObjectCopy.cs +++ b/sdk/dotnet/S3/ObjectCopy.cs @@ -55,6 +55,12 @@ public partial class ObjectCopy : global::Pulumi.CustomResource [Output("acl")] public Output Acl { get; private set; } = null!; + /// + /// ARN of the object. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + /// /// Name of the bucket to put the file in. /// @@ -706,6 +712,12 @@ public sealed class ObjectCopyState : global::Pulumi.ResourceArgs [Input("acl")] public Input? Acl { get; set; } + /// + /// ARN of the object. + /// + [Input("arn")] + public Input? Arn { get; set; } + /// /// Name of the bucket to put the file in. /// diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceArgs.cs new file mode 100644 index 00000000000..84915bdf88c --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceArgs : global::Pulumi.ResourceArgs + { + /// + /// Amazon Security Lake supports log and event collection for natively supported AWS services. + /// + [Input("awsLogSourceResource")] + public Input? AwsLogSourceResource { get; set; } + + /// + /// Amazon Security Lake supports custom source types. + /// + [Input("customLogSourceResource")] + public Input? CustomLogSourceResource { get; set; } + + public SubscriberSourceArgs() + { + } + public static new SubscriberSourceArgs Empty => new SubscriberSourceArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceArgs.cs new file mode 100644 index 00000000000..27bd47480ed --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceAwsLogSourceResourceArgs : global::Pulumi.ResourceArgs + { + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceName")] + public Input? SourceName { get; set; } + + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceVersion")] + public Input? SourceVersion { get; set; } + + public SubscriberSourceAwsLogSourceResourceArgs() + { + } + public static new SubscriberSourceAwsLogSourceResourceArgs Empty => new SubscriberSourceAwsLogSourceResourceArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceGetArgs.cs new file mode 100644 index 00000000000..6b5f12f12aa --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceAwsLogSourceResourceGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceAwsLogSourceResourceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceName")] + public Input? SourceName { get; set; } + + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceVersion")] + public Input? SourceVersion { get; set; } + + public SubscriberSourceAwsLogSourceResourceGetArgs() + { + } + public static new SubscriberSourceAwsLogSourceResourceGetArgs Empty => new SubscriberSourceAwsLogSourceResourceGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceArgs.cs new file mode 100644 index 00000000000..76a5d1febf2 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceArgs.cs @@ -0,0 +1,52 @@ +// *** 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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceArgs : global::Pulumi.ResourceArgs + { + [Input("attributes")] + private InputList? _attributes; + + /// + /// The attributes of a third-party custom source. + /// + public InputList Attributes + { + get => _attributes ?? (_attributes = new InputList()); + set => _attributes = value; + } + + [Input("providers")] + private InputList? _providers; + public InputList Providers + { + get => _providers ?? (_providers = new InputList()); + set => _providers = value; + } + + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceName")] + public Input? SourceName { get; set; } + + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceVersion")] + public Input? SourceVersion { get; set; } + + public SubscriberSourceCustomLogSourceResourceArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceArgs Empty => new SubscriberSourceCustomLogSourceResourceArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.cs new file mode 100644 index 00000000000..6c0a8dd3d70 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceAttributeArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the AWS Glue crawler. + /// + [Input("crawlerArn", required: true)] + public Input CrawlerArn { get; set; } = null!; + + /// + /// The ARN of the AWS Glue database where results are written. + /// + [Input("databaseArn", required: true)] + public Input DatabaseArn { get; set; } = null!; + + /// + /// The ARN of the AWS Glue table. + /// + [Input("tableArn", required: true)] + public Input TableArn { get; set; } = null!; + + public SubscriberSourceCustomLogSourceResourceAttributeArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceAttributeArgs Empty => new SubscriberSourceCustomLogSourceResourceAttributeArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeGetArgs.cs new file mode 100644 index 00000000000..437495a82ca --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceAttributeGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceAttributeGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The ARN of the AWS Glue crawler. + /// + [Input("crawlerArn", required: true)] + public Input CrawlerArn { get; set; } = null!; + + /// + /// The ARN of the AWS Glue database where results are written. + /// + [Input("databaseArn", required: true)] + public Input DatabaseArn { get; set; } = null!; + + /// + /// The ARN of the AWS Glue table. + /// + [Input("tableArn", required: true)] + public Input TableArn { get; set; } = null!; + + public SubscriberSourceCustomLogSourceResourceAttributeGetArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceAttributeGetArgs Empty => new SubscriberSourceCustomLogSourceResourceAttributeGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceGetArgs.cs new file mode 100644 index 00000000000..132f8fc04bf --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceGetArgs.cs @@ -0,0 +1,52 @@ +// *** 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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceGetArgs : global::Pulumi.ResourceArgs + { + [Input("attributes")] + private InputList? _attributes; + + /// + /// The attributes of a third-party custom source. + /// + public InputList Attributes + { + get => _attributes ?? (_attributes = new InputList()); + set => _attributes = value; + } + + [Input("providers")] + private InputList? _providers; + public InputList Providers + { + get => _providers ?? (_providers = new InputList()); + set => _providers = value; + } + + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceName")] + public Input? SourceName { get; set; } + + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + [Input("sourceVersion")] + public Input? SourceVersion { get; set; } + + public SubscriberSourceCustomLogSourceResourceGetArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceGetArgs Empty => new SubscriberSourceCustomLogSourceResourceGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.cs new file mode 100644 index 00000000000..373158d3bcd --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceProviderArgs : global::Pulumi.ResourceArgs + { + /// + /// The location of the partition in the Amazon S3 bucket for Security Lake. + /// + [Input("location", required: true)] + public Input Location { get; set; } = null!; + + /// + /// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + /// + [Input("roleArn", required: true)] + public Input RoleArn { get; set; } = null!; + + public SubscriberSourceCustomLogSourceResourceProviderArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceProviderArgs Empty => new SubscriberSourceCustomLogSourceResourceProviderArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderGetArgs.cs new file mode 100644 index 00000000000..15f3400ac31 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceCustomLogSourceResourceProviderGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceCustomLogSourceResourceProviderGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The location of the partition in the Amazon S3 bucket for Security Lake. + /// + [Input("location", required: true)] + public Input Location { get; set; } = null!; + + /// + /// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + /// + [Input("roleArn", required: true)] + public Input RoleArn { get; set; } = null!; + + public SubscriberSourceCustomLogSourceResourceProviderGetArgs() + { + } + public static new SubscriberSourceCustomLogSourceResourceProviderGetArgs Empty => new SubscriberSourceCustomLogSourceResourceProviderGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceGetArgs.cs new file mode 100644 index 00000000000..7032ce8b24f --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSourceGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSourceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Amazon Security Lake supports log and event collection for natively supported AWS services. + /// + [Input("awsLogSourceResource")] + public Input? AwsLogSourceResource { get; set; } + + /// + /// Amazon Security Lake supports custom source types. + /// + [Input("customLogSourceResource")] + public Input? CustomLogSourceResource { get; set; } + + public SubscriberSourceGetArgs() + { + } + public static new SubscriberSourceGetArgs Empty => new SubscriberSourceGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityArgs.cs new file mode 100644 index 00000000000..f547353e50a --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSubscriberIdentityArgs : global::Pulumi.ResourceArgs + { + /// + /// The AWS Regions where Security Lake is automatically enabled. + /// + [Input("externalId", required: true)] + public Input ExternalId { get; set; } = null!; + + /// + /// Provides encryption details of Amazon Security Lake object. + /// + [Input("principal", required: true)] + public Input Principal { get; set; } = null!; + + public SubscriberSubscriberIdentityArgs() + { + } + public static new SubscriberSubscriberIdentityArgs Empty => new SubscriberSubscriberIdentityArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityGetArgs.cs new file mode 100644 index 00000000000..3f193c95334 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberSubscriberIdentityGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberSubscriberIdentityGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The AWS Regions where Security Lake is automatically enabled. + /// + [Input("externalId", required: true)] + public Input ExternalId { get; set; } = null!; + + /// + /// Provides encryption details of Amazon Security Lake object. + /// + [Input("principal", required: true)] + public Input Principal { get; set; } = null!; + + public SubscriberSubscriberIdentityGetArgs() + { + } + public static new SubscriberSubscriberIdentityGetArgs Empty => new SubscriberSubscriberIdentityGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsArgs.cs new file mode 100644 index 00000000000..1afeeac6217 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberTimeoutsArgs : 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 SubscriberTimeoutsArgs() + { + } + public static new SubscriberTimeoutsArgs Empty => new SubscriberTimeoutsArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsGetArgs.cs b/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsGetArgs.cs new file mode 100644 index 00000000000..9209a2ced00 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Inputs/SubscriberTimeoutsGetArgs.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.SecurityLake.Inputs +{ + + public sealed class SubscriberTimeoutsGetArgs : 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 SubscriberTimeoutsGetArgs() + { + } + public static new SubscriberTimeoutsGetArgs Empty => new SubscriberTimeoutsGetArgs(); + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSource.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSource.cs new file mode 100644 index 00000000000..6ad44740cb9 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSource.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSource + { + /// + /// Amazon Security Lake supports log and event collection for natively supported AWS services. + /// + public readonly Outputs.SubscriberSourceAwsLogSourceResource? AwsLogSourceResource; + /// + /// Amazon Security Lake supports custom source types. + /// + public readonly Outputs.SubscriberSourceCustomLogSourceResource? CustomLogSourceResource; + + [OutputConstructor] + private SubscriberSource( + Outputs.SubscriberSourceAwsLogSourceResource? awsLogSourceResource, + + Outputs.SubscriberSourceCustomLogSourceResource? customLogSourceResource) + { + AwsLogSourceResource = awsLogSourceResource; + CustomLogSourceResource = customLogSourceResource; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceAwsLogSourceResource.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceAwsLogSourceResource.cs new file mode 100644 index 00000000000..ba23416f796 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceAwsLogSourceResource.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSourceAwsLogSourceResource + { + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + public readonly string? SourceName; + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + public readonly string? SourceVersion; + + [OutputConstructor] + private SubscriberSourceAwsLogSourceResource( + string? sourceName, + + string? sourceVersion) + { + SourceName = sourceName; + SourceVersion = sourceVersion; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResource.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResource.cs new file mode 100644 index 00000000000..2d72a122533 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResource.cs @@ -0,0 +1,46 @@ +// *** 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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSourceCustomLogSourceResource + { + /// + /// The attributes of a third-party custom source. + /// + public readonly ImmutableArray Attributes; + public readonly ImmutableArray Providers; + /// + /// The name for a third-party custom source. This must be a Regionally unique value. + /// + public readonly string? SourceName; + /// + /// The version for a third-party custom source. This must be a Regionally unique value. + /// + public readonly string? SourceVersion; + + [OutputConstructor] + private SubscriberSourceCustomLogSourceResource( + ImmutableArray attributes, + + ImmutableArray providers, + + string? sourceName, + + string? sourceVersion) + { + Attributes = attributes; + Providers = providers; + SourceName = sourceName; + SourceVersion = sourceVersion; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceAttribute.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceAttribute.cs new file mode 100644 index 00000000000..6ed9be9edec --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceAttribute.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSourceCustomLogSourceResourceAttribute + { + /// + /// The ARN of the AWS Glue crawler. + /// + public readonly string CrawlerArn; + /// + /// The ARN of the AWS Glue database where results are written. + /// + public readonly string DatabaseArn; + /// + /// The ARN of the AWS Glue table. + /// + public readonly string TableArn; + + [OutputConstructor] + private SubscriberSourceCustomLogSourceResourceAttribute( + string crawlerArn, + + string databaseArn, + + string tableArn) + { + CrawlerArn = crawlerArn; + DatabaseArn = databaseArn; + TableArn = tableArn; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceProvider.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceProvider.cs new file mode 100644 index 00000000000..4a41b1d1983 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSourceCustomLogSourceResourceProvider.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSourceCustomLogSourceResourceProvider + { + /// + /// The location of the partition in the Amazon S3 bucket for Security Lake. + /// + public readonly string Location; + /// + /// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + /// + public readonly string RoleArn; + + [OutputConstructor] + private SubscriberSourceCustomLogSourceResourceProvider( + string location, + + string roleArn) + { + Location = location; + RoleArn = roleArn; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberSubscriberIdentity.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberSubscriberIdentity.cs new file mode 100644 index 00000000000..47fc4f2f3e6 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberSubscriberIdentity.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberSubscriberIdentity + { + /// + /// The AWS Regions where Security Lake is automatically enabled. + /// + public readonly string ExternalId; + /// + /// Provides encryption details of Amazon Security Lake object. + /// + public readonly string Principal; + + [OutputConstructor] + private SubscriberSubscriberIdentity( + string externalId, + + string principal) + { + ExternalId = externalId; + Principal = principal; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Outputs/SubscriberTimeouts.cs b/sdk/dotnet/SecurityLake/Outputs/SubscriberTimeouts.cs new file mode 100644 index 00000000000..688485be935 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Outputs/SubscriberTimeouts.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.SecurityLake.Outputs +{ + + [OutputType] + public sealed class SubscriberTimeouts + { + /// + /// 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 SubscriberTimeouts( + string? create, + + string? delete, + + string? update) + { + Create = create; + Delete = delete; + Update = update; + } + } +} diff --git a/sdk/dotnet/SecurityLake/Subscriber.cs b/sdk/dotnet/SecurityLake/Subscriber.cs new file mode 100644 index 00000000000..dff118b2864 --- /dev/null +++ b/sdk/dotnet/SecurityLake/Subscriber.cs @@ -0,0 +1,308 @@ +// *** 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.SecurityLake +{ + /// + /// Resource for managing an AWS Security Lake Subscriber. + /// + /// ## Import + /// + /// Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: + /// + /// ```sh + /// $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 + /// ``` + /// + [AwsResourceType("aws:securitylake/subscriber:Subscriber")] + public partial class Subscriber : global::Pulumi.CustomResource + { + [Output("accessType")] + public Output AccessType { get; private set; } = null!; + + /// + /// ARN of the Data Lake. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + /// + [Output("resourceShareArn")] + public Output ResourceShareArn { get; private set; } = null!; + + /// + /// The name of the resource share. + /// + [Output("resourceShareName")] + public Output ResourceShareName { get; private set; } = null!; + + /// + /// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + /// + [Output("roleArn")] + public Output RoleArn { get; private set; } = null!; + + /// + /// The ARN for the Amazon Security Lake Amazon S3 bucket. + /// + [Output("s3BucketArn")] + public Output S3BucketArn { get; private set; } = null!; + + /// + /// The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + /// + [Output("source")] + public Output Source { get; private set; } = null!; + + /// + /// The description for your subscriber account in Security Lake. + /// + [Output("subscriberDescription")] + public Output SubscriberDescription { get; private set; } = null!; + + /// + /// The subscriber endpoint to which exception messages are posted. + /// + [Output("subscriberEndpoint")] + public Output SubscriberEndpoint { get; private set; } = null!; + + /// + /// The AWS identity used to access your data. + /// + [Output("subscriberIdentity")] + public Output SubscriberIdentity { get; private set; } = null!; + + /// + /// The name of your Security Lake subscriber account. + /// + [Output("subscriberName")] + public Output SubscriberName { get; private set; } = null!; + + /// + /// The subscriber status of the Amazon Security Lake subscriber account. + /// + [Output("subscriberStatus")] + public Output SubscriberStatus { get; private set; } = null!; + + /// + /// 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. + /// + [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!; + + [Output("timeouts")] + public Output Timeouts { get; private set; } = null!; + + + /// + /// Create a Subscriber 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 Subscriber(string name, SubscriberArgs? args = null, CustomResourceOptions? options = null) + : base("aws:securitylake/subscriber:Subscriber", name, args ?? new SubscriberArgs(), MakeResourceOptions(options, "")) + { + } + + private Subscriber(string name, Input id, SubscriberState? state = null, CustomResourceOptions? options = null) + : base("aws:securitylake/subscriber:Subscriber", 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 Subscriber 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 Subscriber Get(string name, Input id, SubscriberState? state = null, CustomResourceOptions? options = null) + { + return new Subscriber(name, id, state, options); + } + } + + public sealed class SubscriberArgs : global::Pulumi.ResourceArgs + { + [Input("accessType")] + public Input? AccessType { get; set; } + + /// + /// The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + /// + [Input("source")] + public Input? Source { get; set; } + + /// + /// The description for your subscriber account in Security Lake. + /// + [Input("subscriberDescription")] + public Input? SubscriberDescription { get; set; } + + /// + /// The AWS identity used to access your data. + /// + [Input("subscriberIdentity")] + public Input? SubscriberIdentity { get; set; } + + /// + /// The name of your Security Lake subscriber account. + /// + [Input("subscriberName")] + public Input? SubscriberName { get; set; } + + [Input("tags")] + private InputMap? _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. + /// + public InputMap Tags + { + get => _tags ?? (_tags = new InputMap()); + set => _tags = value; + } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public SubscriberArgs() + { + } + public static new SubscriberArgs Empty => new SubscriberArgs(); + } + + public sealed class SubscriberState : global::Pulumi.ResourceArgs + { + [Input("accessType")] + public Input? AccessType { get; set; } + + /// + /// ARN of the Data Lake. + /// + [Input("arn")] + public Input? Arn { get; set; } + + /// + /// The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + /// + [Input("resourceShareArn")] + public Input? ResourceShareArn { get; set; } + + /// + /// The name of the resource share. + /// + [Input("resourceShareName")] + public Input? ResourceShareName { get; set; } + + /// + /// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + /// + [Input("roleArn")] + public Input? RoleArn { get; set; } + + /// + /// The ARN for the Amazon Security Lake Amazon S3 bucket. + /// + [Input("s3BucketArn")] + public Input? S3BucketArn { get; set; } + + /// + /// The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + /// + [Input("source")] + public Input? Source { get; set; } + + /// + /// The description for your subscriber account in Security Lake. + /// + [Input("subscriberDescription")] + public Input? SubscriberDescription { get; set; } + + /// + /// The subscriber endpoint to which exception messages are posted. + /// + [Input("subscriberEndpoint")] + public Input? SubscriberEndpoint { get; set; } + + /// + /// The AWS identity used to access your data. + /// + [Input("subscriberIdentity")] + public Input? SubscriberIdentity { get; set; } + + /// + /// The name of your Security Lake subscriber account. + /// + [Input("subscriberName")] + public Input? SubscriberName { get; set; } + + /// + /// The subscriber status of the Amazon Security Lake subscriber account. + /// + [Input("subscriberStatus")] + public Input? SubscriberStatus { get; set; } + + [Input("tags")] + private InputMap? _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. + /// + 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; + } + + [Input("timeouts")] + public Input? Timeouts { get; set; } + + public SubscriberState() + { + } + public static new SubscriberState Empty => new SubscriberState(); + } +} diff --git a/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementArgs.cs b/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementArgs.cs index a5504ec1b4b..138974c361f 100644 --- a/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementArgs.cs +++ b/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementArgs.cs @@ -30,6 +30,14 @@ public InputList C set => _customKeys = value; } + /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + [Input("evaluationWindowSec")] + public Input? EvaluationWindowSec { get; set; } + /// /// The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. /// diff --git a/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementGetArgs.cs b/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementGetArgs.cs index 5e9026e7637..12c7a51f2a2 100644 --- a/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementGetArgs.cs +++ b/sdk/dotnet/WafV2/Inputs/RuleGroupRuleStatementRateBasedStatementGetArgs.cs @@ -30,6 +30,14 @@ public InputList _customKeys = value; } + /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + [Input("evaluationWindowSec")] + public Input? EvaluationWindowSec { get; set; } + /// /// The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. /// diff --git a/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementArgs.cs b/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementArgs.cs index 3dbf32ad9b0..df51f70275e 100644 --- a/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementArgs.cs +++ b/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementArgs.cs @@ -30,6 +30,14 @@ public InputList Cust set => _customKeys = value; } + /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + [Input("evaluationWindowSec")] + public Input? EvaluationWindowSec { get; set; } + /// /// Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. /// diff --git a/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementGetArgs.cs b/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementGetArgs.cs index f57838a24b6..67cb5d7dc0c 100644 --- a/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementGetArgs.cs +++ b/sdk/dotnet/WafV2/Inputs/WebAclRuleStatementRateBasedStatementGetArgs.cs @@ -30,6 +30,14 @@ public InputList C set => _customKeys = value; } + /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + [Input("evaluationWindowSec")] + public Input? EvaluationWindowSec { get; set; } + /// /// Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. /// diff --git a/sdk/dotnet/WafV2/Outputs/RuleGroupRuleStatementRateBasedStatement.cs b/sdk/dotnet/WafV2/Outputs/RuleGroupRuleStatementRateBasedStatement.cs index bbb002b97db..046bb3c170f 100644 --- a/sdk/dotnet/WafV2/Outputs/RuleGroupRuleStatementRateBasedStatement.cs +++ b/sdk/dotnet/WafV2/Outputs/RuleGroupRuleStatementRateBasedStatement.cs @@ -22,6 +22,12 @@ public sealed class RuleGroupRuleStatementRateBasedStatement /// public readonly ImmutableArray CustomKeys; /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + public readonly int? EvaluationWindowSec; + /// /// The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. /// public readonly Outputs.RuleGroupRuleStatementRateBasedStatementForwardedIpConfig? ForwardedIpConfig; @@ -40,6 +46,8 @@ private RuleGroupRuleStatementRateBasedStatement( ImmutableArray customKeys, + int? evaluationWindowSec, + Outputs.RuleGroupRuleStatementRateBasedStatementForwardedIpConfig? forwardedIpConfig, int limit, @@ -48,6 +56,7 @@ private RuleGroupRuleStatementRateBasedStatement( { AggregateKeyType = aggregateKeyType; CustomKeys = customKeys; + EvaluationWindowSec = evaluationWindowSec; ForwardedIpConfig = forwardedIpConfig; Limit = limit; ScopeDownStatement = scopeDownStatement; diff --git a/sdk/dotnet/WafV2/Outputs/WebAclRuleStatementRateBasedStatement.cs b/sdk/dotnet/WafV2/Outputs/WebAclRuleStatementRateBasedStatement.cs index 19bbde83a0f..574280d4647 100644 --- a/sdk/dotnet/WafV2/Outputs/WebAclRuleStatementRateBasedStatement.cs +++ b/sdk/dotnet/WafV2/Outputs/WebAclRuleStatementRateBasedStatement.cs @@ -22,6 +22,12 @@ public sealed class WebAclRuleStatementRateBasedStatement /// public readonly ImmutableArray CustomKeys; /// + /// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + /// + /// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + /// + public readonly int? EvaluationWindowSec; + /// /// Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. /// public readonly Outputs.WebAclRuleStatementRateBasedStatementForwardedIpConfig? ForwardedIpConfig; @@ -40,6 +46,8 @@ private WebAclRuleStatementRateBasedStatement( ImmutableArray customKeys, + int? evaluationWindowSec, + Outputs.WebAclRuleStatementRateBasedStatementForwardedIpConfig? forwardedIpConfig, int limit, @@ -48,6 +56,7 @@ private WebAclRuleStatementRateBasedStatement( { AggregateKeyType = aggregateKeyType; CustomKeys = customKeys; + EvaluationWindowSec = evaluationWindowSec; ForwardedIpConfig = forwardedIpConfig; Limit = limit; ScopeDownStatement = scopeDownStatement; diff --git a/sdk/go/aws/account/init.go b/sdk/go/aws/account/init.go index ff3d6dc1e8f..b03472c39ee 100644 --- a/sdk/go/aws/account/init.go +++ b/sdk/go/aws/account/init.go @@ -25,6 +25,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &AlternativeContact{} case "aws:account/primaryContact:PrimaryContact": r = &PrimaryContact{} + case "aws:account/region:Region": + r = &Region{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } @@ -48,4 +50,9 @@ func init() { "account/primaryContact", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "account/region", + &module{version}, + ) } diff --git a/sdk/go/aws/account/region.go b/sdk/go/aws/account/region.go new file mode 100644 index 00000000000..ac7d5b3d305 --- /dev/null +++ b/sdk/go/aws/account/region.go @@ -0,0 +1,300 @@ +// 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 account + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. +// +// ## Example Usage +// +// +// ```go +// package main +// +// import ( +// +// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/account" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := account.NewRegion(ctx, "example", &account.RegionArgs{ +// RegionName: pulumi.String("ap-southeast-3"), +// Enabled: pulumi.Bool(true), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// +// +// ## Import +// +// Using `pulumi import`. For example: +// +// ```sh +// $ pulumi import aws:account/region:Region example ap-southeast-3 +// ``` +type Region struct { + pulumi.CustomResourceState + + // The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + AccountId pulumi.StringPtrOutput `pulumi:"accountId"` + // Whether the region is enabled. + Enabled pulumi.BoolOutput `pulumi:"enabled"` + // The region opt status. + OptStatus pulumi.StringOutput `pulumi:"optStatus"` + // The region name to manage. + RegionName pulumi.StringOutput `pulumi:"regionName"` +} + +// NewRegion registers a new resource with the given unique name, arguments, and options. +func NewRegion(ctx *pulumi.Context, + name string, args *RegionArgs, opts ...pulumi.ResourceOption) (*Region, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Enabled == nil { + return nil, errors.New("invalid value for required argument 'Enabled'") + } + if args.RegionName == nil { + return nil, errors.New("invalid value for required argument 'RegionName'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource Region + err := ctx.RegisterResource("aws:account/region:Region", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRegion gets an existing Region 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 GetRegion(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RegionState, opts ...pulumi.ResourceOption) (*Region, error) { + var resource Region + err := ctx.ReadResource("aws:account/region:Region", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Region resources. +type regionState struct { + // The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + AccountId *string `pulumi:"accountId"` + // Whether the region is enabled. + Enabled *bool `pulumi:"enabled"` + // The region opt status. + OptStatus *string `pulumi:"optStatus"` + // The region name to manage. + RegionName *string `pulumi:"regionName"` +} + +type RegionState struct { + // The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + AccountId pulumi.StringPtrInput + // Whether the region is enabled. + Enabled pulumi.BoolPtrInput + // The region opt status. + OptStatus pulumi.StringPtrInput + // The region name to manage. + RegionName pulumi.StringPtrInput +} + +func (RegionState) ElementType() reflect.Type { + return reflect.TypeOf((*regionState)(nil)).Elem() +} + +type regionArgs struct { + // The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + AccountId *string `pulumi:"accountId"` + // Whether the region is enabled. + Enabled bool `pulumi:"enabled"` + // The region name to manage. + RegionName string `pulumi:"regionName"` +} + +// The set of arguments for constructing a Region resource. +type RegionArgs struct { + // The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + AccountId pulumi.StringPtrInput + // Whether the region is enabled. + Enabled pulumi.BoolInput + // The region name to manage. + RegionName pulumi.StringInput +} + +func (RegionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*regionArgs)(nil)).Elem() +} + +type RegionInput interface { + pulumi.Input + + ToRegionOutput() RegionOutput + ToRegionOutputWithContext(ctx context.Context) RegionOutput +} + +func (*Region) ElementType() reflect.Type { + return reflect.TypeOf((**Region)(nil)).Elem() +} + +func (i *Region) ToRegionOutput() RegionOutput { + return i.ToRegionOutputWithContext(context.Background()) +} + +func (i *Region) ToRegionOutputWithContext(ctx context.Context) RegionOutput { + return pulumi.ToOutputWithContext(ctx, i).(RegionOutput) +} + +// RegionArrayInput is an input type that accepts RegionArray and RegionArrayOutput values. +// You can construct a concrete instance of `RegionArrayInput` via: +// +// RegionArray{ RegionArgs{...} } +type RegionArrayInput interface { + pulumi.Input + + ToRegionArrayOutput() RegionArrayOutput + ToRegionArrayOutputWithContext(context.Context) RegionArrayOutput +} + +type RegionArray []RegionInput + +func (RegionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Region)(nil)).Elem() +} + +func (i RegionArray) ToRegionArrayOutput() RegionArrayOutput { + return i.ToRegionArrayOutputWithContext(context.Background()) +} + +func (i RegionArray) ToRegionArrayOutputWithContext(ctx context.Context) RegionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RegionArrayOutput) +} + +// RegionMapInput is an input type that accepts RegionMap and RegionMapOutput values. +// You can construct a concrete instance of `RegionMapInput` via: +// +// RegionMap{ "key": RegionArgs{...} } +type RegionMapInput interface { + pulumi.Input + + ToRegionMapOutput() RegionMapOutput + ToRegionMapOutputWithContext(context.Context) RegionMapOutput +} + +type RegionMap map[string]RegionInput + +func (RegionMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Region)(nil)).Elem() +} + +func (i RegionMap) ToRegionMapOutput() RegionMapOutput { + return i.ToRegionMapOutputWithContext(context.Background()) +} + +func (i RegionMap) ToRegionMapOutputWithContext(ctx context.Context) RegionMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(RegionMapOutput) +} + +type RegionOutput struct{ *pulumi.OutputState } + +func (RegionOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Region)(nil)).Elem() +} + +func (o RegionOutput) ToRegionOutput() RegionOutput { + return o +} + +func (o RegionOutput) ToRegionOutputWithContext(ctx context.Context) RegionOutput { + return o +} + +// The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. +func (o RegionOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Region) pulumi.StringPtrOutput { return v.AccountId }).(pulumi.StringPtrOutput) +} + +// Whether the region is enabled. +func (o RegionOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v *Region) pulumi.BoolOutput { return v.Enabled }).(pulumi.BoolOutput) +} + +// The region opt status. +func (o RegionOutput) OptStatus() pulumi.StringOutput { + return o.ApplyT(func(v *Region) pulumi.StringOutput { return v.OptStatus }).(pulumi.StringOutput) +} + +// The region name to manage. +func (o RegionOutput) RegionName() pulumi.StringOutput { + return o.ApplyT(func(v *Region) pulumi.StringOutput { return v.RegionName }).(pulumi.StringOutput) +} + +type RegionArrayOutput struct{ *pulumi.OutputState } + +func (RegionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Region)(nil)).Elem() +} + +func (o RegionArrayOutput) ToRegionArrayOutput() RegionArrayOutput { + return o +} + +func (o RegionArrayOutput) ToRegionArrayOutputWithContext(ctx context.Context) RegionArrayOutput { + return o +} + +func (o RegionArrayOutput) Index(i pulumi.IntInput) RegionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Region { + return vs[0].([]*Region)[vs[1].(int)] + }).(RegionOutput) +} + +type RegionMapOutput struct{ *pulumi.OutputState } + +func (RegionMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Region)(nil)).Elem() +} + +func (o RegionMapOutput) ToRegionMapOutput() RegionMapOutput { + return o +} + +func (o RegionMapOutput) ToRegionMapOutputWithContext(ctx context.Context) RegionMapOutput { + return o +} + +func (o RegionMapOutput) MapIndex(k pulumi.StringInput) RegionOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Region { + return vs[0].(map[string]*Region)[vs[1].(string)] + }).(RegionOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*RegionInput)(nil)).Elem(), &Region{}) + pulumi.RegisterInputType(reflect.TypeOf((*RegionArrayInput)(nil)).Elem(), RegionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RegionMapInput)(nil)).Elem(), RegionMap{}) + pulumi.RegisterOutputType(RegionOutput{}) + pulumi.RegisterOutputType(RegionArrayOutput{}) + pulumi.RegisterOutputType(RegionMapOutput{}) +} diff --git a/sdk/go/aws/batch/jobQueue.go b/sdk/go/aws/batch/jobQueue.go index ed457347004..ad6eacb5d7d 100644 --- a/sdk/go/aws/batch/jobQueue.go +++ b/sdk/go/aws/batch/jobQueue.go @@ -35,9 +35,15 @@ import ( // Name: pulumi.String("tf-test-batch-job-queue"), // State: pulumi.String("ENABLED"), // Priority: pulumi.Int(1), -// ComputeEnvironments: pulumi.StringArray{ -// testEnvironment1.Arn, -// testEnvironment2.Arn, +// ComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{ +// &batch.JobQueueComputeEnvironmentOrderArgs{ +// Order: pulumi.Int(1), +// ComputeEnvironment: pulumi.Any(testEnvironment1.Arn), +// }, +// &batch.JobQueueComputeEnvironmentOrderArgs{ +// Order: pulumi.Int(2), +// ComputeEnvironment: pulumi.Any(testEnvironment2.Arn), +// }, // }, // }) // if err != nil { @@ -86,9 +92,15 @@ import ( // SchedulingPolicyArn: example.Arn, // State: pulumi.String("ENABLED"), // Priority: pulumi.Int(1), -// ComputeEnvironments: pulumi.StringArray{ -// testEnvironment1.Arn, -// testEnvironment2.Arn, +// ComputeEnvironmentOrders: batch.JobQueueComputeEnvironmentOrderArray{ +// &batch.JobQueueComputeEnvironmentOrderArgs{ +// Order: pulumi.Int(1), +// ComputeEnvironment: pulumi.Any(testEnvironment1.Arn), +// }, +// &batch.JobQueueComputeEnvironmentOrderArgs{ +// Order: pulumi.Int(2), +// ComputeEnvironment: pulumi.Any(testEnvironment2.Arn), +// }, // }, // }) // if err != nil { @@ -113,8 +125,11 @@ type JobQueue struct { // The Amazon Resource Name of the job queue. Arn pulumi.StringOutput `pulumi:"arn"` - // List of compute environment ARNs mapped to a job queue. - // The position of the compute environments in the list will dictate the order. + // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayOutput `pulumi:"computeEnvironmentOrders"` + // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + // + // Deprecated: This parameter will be replaced by `compute_environments_order`. ComputeEnvironments pulumi.StringArrayOutput `pulumi:"computeEnvironments"` // Specifies the name of the job queue. Name pulumi.StringOutput `pulumi:"name"` @@ -141,9 +156,6 @@ func NewJobQueue(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } - if args.ComputeEnvironments == nil { - return nil, errors.New("invalid value for required argument 'ComputeEnvironments'") - } if args.Priority == nil { return nil, errors.New("invalid value for required argument 'Priority'") } @@ -175,8 +187,11 @@ func GetJobQueue(ctx *pulumi.Context, type jobQueueState struct { // The Amazon Resource Name of the job queue. Arn *string `pulumi:"arn"` - // List of compute environment ARNs mapped to a job queue. - // The position of the compute environments in the list will dictate the order. + // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + ComputeEnvironmentOrders []JobQueueComputeEnvironmentOrder `pulumi:"computeEnvironmentOrders"` + // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + // + // Deprecated: This parameter will be replaced by `compute_environments_order`. ComputeEnvironments []string `pulumi:"computeEnvironments"` // Specifies the name of the job queue. Name *string `pulumi:"name"` @@ -199,8 +214,11 @@ type jobQueueState struct { type JobQueueState struct { // The Amazon Resource Name of the job queue. Arn pulumi.StringPtrInput - // List of compute environment ARNs mapped to a job queue. - // The position of the compute environments in the list will dictate the order. + // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayInput + // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + // + // Deprecated: This parameter will be replaced by `compute_environments_order`. ComputeEnvironments pulumi.StringArrayInput // Specifies the name of the job queue. Name pulumi.StringPtrInput @@ -225,8 +243,11 @@ func (JobQueueState) ElementType() reflect.Type { } type jobQueueArgs struct { - // List of compute environment ARNs mapped to a job queue. - // The position of the compute environments in the list will dictate the order. + // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + ComputeEnvironmentOrders []JobQueueComputeEnvironmentOrder `pulumi:"computeEnvironmentOrders"` + // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + // + // Deprecated: This parameter will be replaced by `compute_environments_order`. ComputeEnvironments []string `pulumi:"computeEnvironments"` // Specifies the name of the job queue. Name *string `pulumi:"name"` @@ -244,8 +265,11 @@ type jobQueueArgs struct { // The set of arguments for constructing a JobQueue resource. type JobQueueArgs struct { - // List of compute environment ARNs mapped to a job queue. - // The position of the compute environments in the list will dictate the order. + // The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + ComputeEnvironmentOrders JobQueueComputeEnvironmentOrderArrayInput + // (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + // + // Deprecated: This parameter will be replaced by `compute_environments_order`. ComputeEnvironments pulumi.StringArrayInput // Specifies the name of the job queue. Name pulumi.StringPtrInput @@ -353,8 +377,14 @@ func (o JobQueueOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *JobQueue) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// List of compute environment ARNs mapped to a job queue. -// The position of the compute environments in the list will dictate the order. +// The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. +func (o JobQueueOutput) ComputeEnvironmentOrders() JobQueueComputeEnvironmentOrderArrayOutput { + return o.ApplyT(func(v *JobQueue) JobQueueComputeEnvironmentOrderArrayOutput { return v.ComputeEnvironmentOrders }).(JobQueueComputeEnvironmentOrderArrayOutput) +} + +// (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. +// +// Deprecated: This parameter will be replaced by `compute_environments_order`. func (o JobQueueOutput) ComputeEnvironments() pulumi.StringArrayOutput { return o.ApplyT(func(v *JobQueue) pulumi.StringArrayOutput { return v.ComputeEnvironments }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/aws/batch/pulumiTypes.go b/sdk/go/aws/batch/pulumiTypes.go index 43f0c4c2903..ec1ad6a58e5 100644 --- a/sdk/go/aws/batch/pulumiTypes.go +++ b/sdk/go/aws/batch/pulumiTypes.go @@ -3405,6 +3405,112 @@ func (o JobDefinitionTimeoutPtrOutput) AttemptDurationSeconds() pulumi.IntPtrOut }).(pulumi.IntPtrOutput) } +type JobQueueComputeEnvironmentOrder struct { + // The Amazon Resource Name (ARN) of the compute environment. + ComputeEnvironment string `pulumi:"computeEnvironment"` + // The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + Order int `pulumi:"order"` +} + +// JobQueueComputeEnvironmentOrderInput is an input type that accepts JobQueueComputeEnvironmentOrderArgs and JobQueueComputeEnvironmentOrderOutput values. +// You can construct a concrete instance of `JobQueueComputeEnvironmentOrderInput` via: +// +// JobQueueComputeEnvironmentOrderArgs{...} +type JobQueueComputeEnvironmentOrderInput interface { + pulumi.Input + + ToJobQueueComputeEnvironmentOrderOutput() JobQueueComputeEnvironmentOrderOutput + ToJobQueueComputeEnvironmentOrderOutputWithContext(context.Context) JobQueueComputeEnvironmentOrderOutput +} + +type JobQueueComputeEnvironmentOrderArgs struct { + // The Amazon Resource Name (ARN) of the compute environment. + ComputeEnvironment pulumi.StringInput `pulumi:"computeEnvironment"` + // The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + Order pulumi.IntInput `pulumi:"order"` +} + +func (JobQueueComputeEnvironmentOrderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobQueueComputeEnvironmentOrder)(nil)).Elem() +} + +func (i JobQueueComputeEnvironmentOrderArgs) ToJobQueueComputeEnvironmentOrderOutput() JobQueueComputeEnvironmentOrderOutput { + return i.ToJobQueueComputeEnvironmentOrderOutputWithContext(context.Background()) +} + +func (i JobQueueComputeEnvironmentOrderArgs) ToJobQueueComputeEnvironmentOrderOutputWithContext(ctx context.Context) JobQueueComputeEnvironmentOrderOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobQueueComputeEnvironmentOrderOutput) +} + +// JobQueueComputeEnvironmentOrderArrayInput is an input type that accepts JobQueueComputeEnvironmentOrderArray and JobQueueComputeEnvironmentOrderArrayOutput values. +// You can construct a concrete instance of `JobQueueComputeEnvironmentOrderArrayInput` via: +// +// JobQueueComputeEnvironmentOrderArray{ JobQueueComputeEnvironmentOrderArgs{...} } +type JobQueueComputeEnvironmentOrderArrayInput interface { + pulumi.Input + + ToJobQueueComputeEnvironmentOrderArrayOutput() JobQueueComputeEnvironmentOrderArrayOutput + ToJobQueueComputeEnvironmentOrderArrayOutputWithContext(context.Context) JobQueueComputeEnvironmentOrderArrayOutput +} + +type JobQueueComputeEnvironmentOrderArray []JobQueueComputeEnvironmentOrderInput + +func (JobQueueComputeEnvironmentOrderArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobQueueComputeEnvironmentOrder)(nil)).Elem() +} + +func (i JobQueueComputeEnvironmentOrderArray) ToJobQueueComputeEnvironmentOrderArrayOutput() JobQueueComputeEnvironmentOrderArrayOutput { + return i.ToJobQueueComputeEnvironmentOrderArrayOutputWithContext(context.Background()) +} + +func (i JobQueueComputeEnvironmentOrderArray) ToJobQueueComputeEnvironmentOrderArrayOutputWithContext(ctx context.Context) JobQueueComputeEnvironmentOrderArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobQueueComputeEnvironmentOrderArrayOutput) +} + +type JobQueueComputeEnvironmentOrderOutput struct{ *pulumi.OutputState } + +func (JobQueueComputeEnvironmentOrderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobQueueComputeEnvironmentOrder)(nil)).Elem() +} + +func (o JobQueueComputeEnvironmentOrderOutput) ToJobQueueComputeEnvironmentOrderOutput() JobQueueComputeEnvironmentOrderOutput { + return o +} + +func (o JobQueueComputeEnvironmentOrderOutput) ToJobQueueComputeEnvironmentOrderOutputWithContext(ctx context.Context) JobQueueComputeEnvironmentOrderOutput { + return o +} + +// The Amazon Resource Name (ARN) of the compute environment. +func (o JobQueueComputeEnvironmentOrderOutput) ComputeEnvironment() pulumi.StringOutput { + return o.ApplyT(func(v JobQueueComputeEnvironmentOrder) string { return v.ComputeEnvironment }).(pulumi.StringOutput) +} + +// The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. +func (o JobQueueComputeEnvironmentOrderOutput) Order() pulumi.IntOutput { + return o.ApplyT(func(v JobQueueComputeEnvironmentOrder) int { return v.Order }).(pulumi.IntOutput) +} + +type JobQueueComputeEnvironmentOrderArrayOutput struct{ *pulumi.OutputState } + +func (JobQueueComputeEnvironmentOrderArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobQueueComputeEnvironmentOrder)(nil)).Elem() +} + +func (o JobQueueComputeEnvironmentOrderArrayOutput) ToJobQueueComputeEnvironmentOrderArrayOutput() JobQueueComputeEnvironmentOrderArrayOutput { + return o +} + +func (o JobQueueComputeEnvironmentOrderArrayOutput) ToJobQueueComputeEnvironmentOrderArrayOutputWithContext(ctx context.Context) JobQueueComputeEnvironmentOrderArrayOutput { + return o +} + +func (o JobQueueComputeEnvironmentOrderArrayOutput) Index(i pulumi.IntInput) JobQueueComputeEnvironmentOrderOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobQueueComputeEnvironmentOrder { + return vs[0].([]JobQueueComputeEnvironmentOrder)[vs[1].(int)] + }).(JobQueueComputeEnvironmentOrderOutput) +} + type JobQueueTimeouts 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"` @@ -4735,6 +4841,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRetryStrategyEvaluateOnExitArrayInput)(nil)).Elem(), JobDefinitionRetryStrategyEvaluateOnExitArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTimeoutInput)(nil)).Elem(), JobDefinitionTimeoutArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionTimeoutPtrInput)(nil)).Elem(), JobDefinitionTimeoutArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobQueueComputeEnvironmentOrderInput)(nil)).Elem(), JobQueueComputeEnvironmentOrderArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobQueueComputeEnvironmentOrderArrayInput)(nil)).Elem(), JobQueueComputeEnvironmentOrderArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobQueueTimeoutsInput)(nil)).Elem(), JobQueueTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobQueueTimeoutsPtrInput)(nil)).Elem(), JobQueueTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SchedulingPolicyFairSharePolicyInput)(nil)).Elem(), SchedulingPolicyFairSharePolicyArgs{}) @@ -4797,6 +4905,8 @@ func init() { pulumi.RegisterOutputType(JobDefinitionRetryStrategyEvaluateOnExitArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionTimeoutOutput{}) pulumi.RegisterOutputType(JobDefinitionTimeoutPtrOutput{}) + pulumi.RegisterOutputType(JobQueueComputeEnvironmentOrderOutput{}) + pulumi.RegisterOutputType(JobQueueComputeEnvironmentOrderArrayOutput{}) pulumi.RegisterOutputType(JobQueueTimeoutsOutput{}) pulumi.RegisterOutputType(JobQueueTimeoutsPtrOutput{}) pulumi.RegisterOutputType(SchedulingPolicyFairSharePolicyOutput{}) diff --git a/sdk/go/aws/guardduty/detectorFeature.go b/sdk/go/aws/guardduty/detectorFeature.go index 41cea293091..e2287fdf83a 100644 --- a/sdk/go/aws/guardduty/detectorFeature.go +++ b/sdk/go/aws/guardduty/detectorFeature.go @@ -64,7 +64,7 @@ type DetectorFeature struct { AdditionalConfigurations DetectorFeatureAdditionalConfigurationArrayOutput `pulumi:"additionalConfigurations"` // Amazon GuardDuty detector ID. DetectorId pulumi.StringOutput `pulumi:"detectorId"` - // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. Name pulumi.StringOutput `pulumi:"name"` // The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. Status pulumi.StringOutput `pulumi:"status"` @@ -110,7 +110,7 @@ type detectorFeatureState struct { AdditionalConfigurations []DetectorFeatureAdditionalConfiguration `pulumi:"additionalConfigurations"` // Amazon GuardDuty detector ID. DetectorId *string `pulumi:"detectorId"` - // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. Name *string `pulumi:"name"` // The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. Status *string `pulumi:"status"` @@ -121,7 +121,7 @@ type DetectorFeatureState struct { AdditionalConfigurations DetectorFeatureAdditionalConfigurationArrayInput // Amazon GuardDuty detector ID. DetectorId pulumi.StringPtrInput - // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. Name pulumi.StringPtrInput // The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. Status pulumi.StringPtrInput @@ -136,7 +136,7 @@ type detectorFeatureArgs struct { AdditionalConfigurations []DetectorFeatureAdditionalConfiguration `pulumi:"additionalConfigurations"` // Amazon GuardDuty detector ID. DetectorId string `pulumi:"detectorId"` - // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. Name *string `pulumi:"name"` // The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. Status string `pulumi:"status"` @@ -148,7 +148,7 @@ type DetectorFeatureArgs struct { AdditionalConfigurations DetectorFeatureAdditionalConfigurationArrayInput // Amazon GuardDuty detector ID. DetectorId pulumi.StringInput - // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + // The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. Name pulumi.StringPtrInput // The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. Status pulumi.StringInput @@ -253,7 +253,7 @@ func (o DetectorFeatureOutput) DetectorId() pulumi.StringOutput { return o.ApplyT(func(v *DetectorFeature) pulumi.StringOutput { return v.DetectorId }).(pulumi.StringOutput) } -// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. +// The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. func (o DetectorFeatureOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DetectorFeature) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/guardduty/pulumiTypes.go b/sdk/go/aws/guardduty/pulumiTypes.go index 30d24ebd421..6470feb5fc2 100644 --- a/sdk/go/aws/guardduty/pulumiTypes.go +++ b/sdk/go/aws/guardduty/pulumiTypes.go @@ -1057,7 +1057,7 @@ func (o DetectorDatasourcesS3LogsPtrOutput) Enable() pulumi.BoolPtrOutput { } type DetectorFeatureAdditionalConfiguration struct { - // The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + // The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. Name string `pulumi:"name"` // The status of the additional configuration. Valid values: `ENABLED`, `DISABLED`. Status string `pulumi:"status"` @@ -1075,7 +1075,7 @@ type DetectorFeatureAdditionalConfigurationInput interface { } type DetectorFeatureAdditionalConfigurationArgs struct { - // The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + // The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. Name pulumi.StringInput `pulumi:"name"` // The status of the additional configuration. Valid values: `ENABLED`, `DISABLED`. Status pulumi.StringInput `pulumi:"status"` @@ -1132,7 +1132,7 @@ func (o DetectorFeatureAdditionalConfigurationOutput) ToDetectorFeatureAdditiona return o } -// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. +// The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. func (o DetectorFeatureAdditionalConfigurationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v DetectorFeatureAdditionalConfiguration) string { return v.Name }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/iot/policy.go b/sdk/go/aws/iot/policy.go index 2fad293850c..a37a34fb17c 100644 --- a/sdk/go/aws/iot/policy.go +++ b/sdk/go/aws/iot/policy.go @@ -81,6 +81,12 @@ type Policy struct { Name pulumi.StringOutput `pulumi:"name"` // The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. Policy pulumi.StringOutput `pulumi:"policy"` + // 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"` } // NewPolicy registers a new resource with the given unique name, arguments, and options. @@ -124,6 +130,12 @@ type policyState struct { Name *string `pulumi:"name"` // The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. Policy *string `pulumi:"policy"` + // 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"` } type PolicyState struct { @@ -135,6 +147,12 @@ type PolicyState struct { Name pulumi.StringPtrInput // The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. Policy pulumi.StringPtrInput + // 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 } func (PolicyState) ElementType() reflect.Type { @@ -146,6 +164,8 @@ type policyArgs struct { Name *string `pulumi:"name"` // The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. Policy string `pulumi:"policy"` + // 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"` } // The set of arguments for constructing a Policy resource. @@ -154,6 +174,8 @@ type PolicyArgs struct { Name pulumi.StringPtrInput // The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. Policy pulumi.StringInput + // 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 } func (PolicyArgs) ElementType() reflect.Type { @@ -263,6 +285,18 @@ func (o PolicyOutput) Policy() pulumi.StringOutput { return o.ApplyT(func(v *Policy) pulumi.StringOutput { return v.Policy }).(pulumi.StringOutput) } +// 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 PolicyOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *Policy) 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 PolicyOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *Policy) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + type PolicyArrayOutput struct{ *pulumi.OutputState } func (PolicyArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/aws/iot/roleAlias.go b/sdk/go/aws/iot/roleAlias.go index 320baf5f88f..856940fee3a 100644 --- a/sdk/go/aws/iot/roleAlias.go +++ b/sdk/go/aws/iot/roleAlias.go @@ -32,6 +32,12 @@ type RoleAlias struct { CredentialDuration pulumi.IntPtrOutput `pulumi:"credentialDuration"` // The identity of the role to which the alias refers. RoleArn pulumi.StringOutput `pulumi:"roleArn"` + // 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"` } // NewRoleAlias registers a new resource with the given unique name, arguments, and options. @@ -78,6 +84,12 @@ type roleAliasState struct { CredentialDuration *int `pulumi:"credentialDuration"` // The identity of the role to which the alias refers. RoleArn *string `pulumi:"roleArn"` + // 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"` } type RoleAliasState struct { @@ -89,6 +101,12 @@ type RoleAliasState struct { CredentialDuration pulumi.IntPtrInput // The identity of the role to which the alias refers. RoleArn pulumi.StringPtrInput + // 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 } func (RoleAliasState) ElementType() reflect.Type { @@ -102,6 +120,8 @@ type roleAliasArgs struct { CredentialDuration *int `pulumi:"credentialDuration"` // The identity of the role to which the alias refers. RoleArn string `pulumi:"roleArn"` + // 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"` } // The set of arguments for constructing a RoleAlias resource. @@ -112,6 +132,8 @@ type RoleAliasArgs struct { CredentialDuration pulumi.IntPtrInput // The identity of the role to which the alias refers. RoleArn pulumi.StringInput + // 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 } func (RoleAliasArgs) ElementType() reflect.Type { @@ -221,6 +243,18 @@ func (o RoleAliasOutput) RoleArn() pulumi.StringOutput { return o.ApplyT(func(v *RoleAlias) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) } +// 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 RoleAliasOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *RoleAlias) 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 RoleAliasOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *RoleAlias) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + type RoleAliasArrayOutput struct{ *pulumi.OutputState } func (RoleAliasArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/aws/opensearch/pulumiTypes.go b/sdk/go/aws/opensearch/pulumiTypes.go index 5c63f24a4bf..16e3a4c6c81 100644 --- a/sdk/go/aws/opensearch/pulumiTypes.go +++ b/sdk/go/aws/opensearch/pulumiTypes.go @@ -388,9 +388,13 @@ type DomainAutoTuneOptions struct { // Auto-Tune desired state for the domain. Valid values: `ENABLED` or `DISABLED`. DesiredState string `pulumi:"desiredState"` // Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + // + // **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. MaintenanceSchedules []DomainAutoTuneOptionsMaintenanceSchedule `pulumi:"maintenanceSchedules"` // Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. RollbackOnDisable *string `pulumi:"rollbackOnDisable"` + // Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + UseOffPeakWindow *bool `pulumi:"useOffPeakWindow"` } // DomainAutoTuneOptionsInput is an input type that accepts DomainAutoTuneOptionsArgs and DomainAutoTuneOptionsOutput values. @@ -408,9 +412,13 @@ type DomainAutoTuneOptionsArgs struct { // Auto-Tune desired state for the domain. Valid values: `ENABLED` or `DISABLED`. DesiredState pulumi.StringInput `pulumi:"desiredState"` // Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + // + // **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. MaintenanceSchedules DomainAutoTuneOptionsMaintenanceScheduleArrayInput `pulumi:"maintenanceSchedules"` // Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. RollbackOnDisable pulumi.StringPtrInput `pulumi:"rollbackOnDisable"` + // Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + UseOffPeakWindow pulumi.BoolPtrInput `pulumi:"useOffPeakWindow"` } func (DomainAutoTuneOptionsArgs) ElementType() reflect.Type { @@ -496,6 +504,8 @@ func (o DomainAutoTuneOptionsOutput) DesiredState() pulumi.StringOutput { } // Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. +// +// **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. func (o DomainAutoTuneOptionsOutput) MaintenanceSchedules() DomainAutoTuneOptionsMaintenanceScheduleArrayOutput { return o.ApplyT(func(v DomainAutoTuneOptions) []DomainAutoTuneOptionsMaintenanceSchedule { return v.MaintenanceSchedules @@ -507,6 +517,11 @@ func (o DomainAutoTuneOptionsOutput) RollbackOnDisable() pulumi.StringPtrOutput return o.ApplyT(func(v DomainAutoTuneOptions) *string { return v.RollbackOnDisable }).(pulumi.StringPtrOutput) } +// Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. +func (o DomainAutoTuneOptionsOutput) UseOffPeakWindow() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DomainAutoTuneOptions) *bool { return v.UseOffPeakWindow }).(pulumi.BoolPtrOutput) +} + type DomainAutoTuneOptionsPtrOutput struct{ *pulumi.OutputState } func (DomainAutoTuneOptionsPtrOutput) ElementType() reflect.Type { @@ -542,6 +557,8 @@ func (o DomainAutoTuneOptionsPtrOutput) DesiredState() pulumi.StringPtrOutput { } // Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. +// +// **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. func (o DomainAutoTuneOptionsPtrOutput) MaintenanceSchedules() DomainAutoTuneOptionsMaintenanceScheduleArrayOutput { return o.ApplyT(func(v *DomainAutoTuneOptions) []DomainAutoTuneOptionsMaintenanceSchedule { if v == nil { @@ -561,6 +578,16 @@ func (o DomainAutoTuneOptionsPtrOutput) RollbackOnDisable() pulumi.StringPtrOutp }).(pulumi.StringPtrOutput) } +// Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. +func (o DomainAutoTuneOptionsPtrOutput) UseOffPeakWindow() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DomainAutoTuneOptions) *bool { + if v == nil { + return nil + } + return v.UseOffPeakWindow + }).(pulumi.BoolPtrOutput) +} + type DomainAutoTuneOptionsMaintenanceSchedule struct { // A cron expression specifying the recurrence pattern for an Auto-Tune maintenance schedule. CronExpressionForRecurrence string `pulumi:"cronExpressionForRecurrence"` diff --git a/sdk/go/aws/rds/cluster.go b/sdk/go/aws/rds/cluster.go index 18f48d2dfa5..1a511843011 100644 --- a/sdk/go/aws/rds/cluster.go +++ b/sdk/go/aws/rds/cluster.go @@ -499,7 +499,7 @@ type Cluster struct { SourceRegion pulumi.StringPtrOutput `pulumi:"sourceRegion"` // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. StorageEncrypted pulumi.BoolOutput `pulumi:"storageEncrypted"` - // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). StorageType pulumi.StringOutput `pulumi:"storageType"` // A map of tags to assign to the DB cluster. 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"` @@ -669,7 +669,7 @@ type clusterState struct { SourceRegion *string `pulumi:"sourceRegion"` // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. StorageEncrypted *bool `pulumi:"storageEncrypted"` - // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). StorageType *string `pulumi:"storageType"` // A map of tags to assign to the DB cluster. 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"` @@ -800,7 +800,7 @@ type ClusterState struct { SourceRegion pulumi.StringPtrInput // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. StorageEncrypted pulumi.BoolPtrInput - // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). StorageType pulumi.StringPtrInput // A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapInput @@ -920,7 +920,7 @@ type clusterArgs struct { SourceRegion *string `pulumi:"sourceRegion"` // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. StorageEncrypted *bool `pulumi:"storageEncrypted"` - // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). StorageType *string `pulumi:"storageType"` // A map of tags to assign to the DB cluster. 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"` @@ -1033,7 +1033,7 @@ type ClusterArgs struct { SourceRegion pulumi.StringPtrInput // Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engineMode` and `true` for `serverless` `engineMode`. When restoring an unencrypted `snapshotIdentifier`, the `kmsKeyId` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. StorageEncrypted pulumi.BoolPtrInput - // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + // (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). StorageType pulumi.StringPtrInput // A map of tags to assign to the DB cluster. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. Tags pulumi.StringMapInput @@ -1416,7 +1416,7 @@ func (o ClusterOutput) StorageEncrypted() pulumi.BoolOutput { return o.ApplyT(func(v *Cluster) pulumi.BoolOutput { return v.StorageEncrypted }).(pulumi.BoolOutput) } -// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). +// (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). func (o ClusterOutput) StorageType() pulumi.StringOutput { return o.ApplyT(func(v *Cluster) pulumi.StringOutput { return v.StorageType }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/rds/clusterInstance.go b/sdk/go/aws/rds/clusterInstance.go index a8fa9a1fcc5..2a46f093645 100644 --- a/sdk/go/aws/rds/clusterInstance.go +++ b/sdk/go/aws/rds/clusterInstance.go @@ -118,7 +118,7 @@ type ClusterInstance struct { // DNS address for this instance. May not be writable Endpoint pulumi.StringOutput `pulumi:"endpoint"` // Name of the database engine to be used for the RDS cluster instance. - // Valid Values: `aurora-mysql`, `aurora-postgresql`. + // Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). Engine pulumi.StringOutput `pulumi:"engine"` // Database engine version. EngineVersion pulumi.StringOutput `pulumi:"engineVersion"` @@ -230,7 +230,7 @@ type clusterInstanceState struct { // DNS address for this instance. May not be writable Endpoint *string `pulumi:"endpoint"` // Name of the database engine to be used for the RDS cluster instance. - // Valid Values: `aurora-mysql`, `aurora-postgresql`. + // Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). Engine *string `pulumi:"engine"` // Database engine version. EngineVersion *string `pulumi:"engineVersion"` @@ -304,7 +304,7 @@ type ClusterInstanceState struct { // DNS address for this instance. May not be writable Endpoint pulumi.StringPtrInput // Name of the database engine to be used for the RDS cluster instance. - // Valid Values: `aurora-mysql`, `aurora-postgresql`. + // Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). Engine pulumi.StringPtrInput // Database engine version. EngineVersion pulumi.StringPtrInput @@ -376,7 +376,7 @@ type clusterInstanceArgs struct { // DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`. DbSubnetGroupName *string `pulumi:"dbSubnetGroupName"` // Name of the database engine to be used for the RDS cluster instance. - // Valid Values: `aurora-mysql`, `aurora-postgresql`. + // Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). Engine string `pulumi:"engine"` // Database engine version. EngineVersion *string `pulumi:"engineVersion"` @@ -429,7 +429,7 @@ type ClusterInstanceArgs struct { // DB subnet group to associate with this DB instance. **NOTE:** This must match the `dbSubnetGroupName` of the attached `rds.Cluster`. DbSubnetGroupName pulumi.StringPtrInput // Name of the database engine to be used for the RDS cluster instance. - // Valid Values: `aurora-mysql`, `aurora-postgresql`. + // Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). Engine pulumi.StringInput // Database engine version. EngineVersion pulumi.StringPtrInput @@ -609,7 +609,7 @@ func (o ClusterInstanceOutput) Endpoint() pulumi.StringOutput { } // Name of the database engine to be used for the RDS cluster instance. -// Valid Values: `aurora-mysql`, `aurora-postgresql`. +// Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). func (o ClusterInstanceOutput) Engine() pulumi.StringOutput { return o.ApplyT(func(v *ClusterInstance) pulumi.StringOutput { return v.Engine }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/rds/getEngineVersion.go b/sdk/go/aws/rds/getEngineVersion.go index ecf48515b4f..9f5fa0ce9fc 100644 --- a/sdk/go/aws/rds/getEngineVersion.go +++ b/sdk/go/aws/rds/getEngineVersion.go @@ -96,40 +96,46 @@ func GetEngineVersion(ctx *pulumi.Context, args *GetEngineVersionArgs, opts ...p // A collection of arguments for invoking getEngineVersion. type GetEngineVersionArgs struct { - // When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + // Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`. DefaultOnly *bool `pulumi:"defaultOnly"` // Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`. // // The following arguments are optional: Engine string `pulumi:"engine"` - // One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + // One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). Filters []GetEngineVersionFilter `pulumi:"filters"` - // When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + // Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + HasMajorTarget *bool `pulumi:"hasMajorTarget"` + // Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + HasMinorTarget *bool `pulumi:"hasMinorTarget"` + // Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. IncludeAll *bool `pulumi:"includeAll"` - // When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + // Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. Latest *bool `pulumi:"latest"` // Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`. ParameterGroupFamily *string `pulumi:"parameterGroupFamily"` - // Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`. PreferredMajorTargets []string `pulumi:"preferredMajorTargets"` - // Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`. PreferredUpgradeTargets []string `pulumi:"preferredUpgradeTargets"` - // Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`. PreferredVersions []string `pulumi:"preferredVersions"` Version *string `pulumi:"version"` } // A collection of values returned by getEngineVersion. type GetEngineVersionResult struct { - // The default character set for new instances of this engine version. + // Default character set for new instances of the engine version. DefaultCharacterSet string `pulumi:"defaultCharacterSet"` DefaultOnly *bool `pulumi:"defaultOnly"` Engine string `pulumi:"engine"` - // Description of the database engine. + // Description of the engine. EngineDescription string `pulumi:"engineDescription"` - // Set of log types that the database engine has available for export to CloudWatch Logs. + // Set of log types that the engine version has available for export to CloudWatch Logs. ExportableLogTypes []string `pulumi:"exportableLogTypes"` Filters []GetEngineVersionFilter `pulumi:"filters"` + HasMajorTarget *bool `pulumi:"hasMajorTarget"` + HasMinorTarget *bool `pulumi:"hasMinorTarget"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` IncludeAll *bool `pulumi:"includeAll"` @@ -138,30 +144,34 @@ type GetEngineVersionResult struct { PreferredMajorTargets []string `pulumi:"preferredMajorTargets"` PreferredUpgradeTargets []string `pulumi:"preferredUpgradeTargets"` PreferredVersions []string `pulumi:"preferredVersions"` - // Status of the database engine version, either available or deprecated. + // Status of the engine version, either `available` or `deprecated`. Status string `pulumi:"status"` - // Set of the character sets supported by this engine. + // Set of character sets supported by th engine version. SupportedCharacterSets []string `pulumi:"supportedCharacterSets"` - // Set of features supported by the database engine. + // Set of features supported by the engine version. SupportedFeatureNames []string `pulumi:"supportedFeatureNames"` - // Set of the supported database engine modes. + // Set of supported engine version modes. SupportedModes []string `pulumi:"supportedModes"` - // Set of the time zones supported by this engine. + // Set of the time zones supported by the engine version. SupportedTimezones []string `pulumi:"supportedTimezones"` - // Indicates whether you can use Aurora global databases with a specific database engine version. + // Whether you can use Aurora global databases with the engine version. SupportsGlobalDatabases bool `pulumi:"supportsGlobalDatabases"` - // Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. + // Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. SupportsLogExportsToCloudwatch bool `pulumi:"supportsLogExportsToCloudwatch"` - // Indicates whether you can use Aurora parallel query with a specific database engine version. + // Whether you can use Aurora parallel query with the engine version. SupportsParallelQuery bool `pulumi:"supportsParallelQuery"` - // Indicates whether the database engine version supports read replicas. + // Whether the engine version supports read replicas. SupportsReadReplica bool `pulumi:"supportsReadReplica"` - // Set of engine versions that this database engine version can be upgraded to. + // Set of versions that are valid major version upgrades for the engine version. + ValidMajorTargets []string `pulumi:"validMajorTargets"` + // Set of versions that are valid minor version upgrades for the engine version. + ValidMinorTargets []string `pulumi:"validMinorTargets"` + // Set of versions that are valid major or minor upgrades for the engine version. ValidUpgradeTargets []string `pulumi:"validUpgradeTargets"` Version string `pulumi:"version"` - // Version of the database engine. + // Complete engine version. VersionActual string `pulumi:"versionActual"` - // Description of the database engine version. + // Description of the engine version. VersionDescription string `pulumi:"versionDescription"` } @@ -180,25 +190,29 @@ func GetEngineVersionOutput(ctx *pulumi.Context, args GetEngineVersionOutputArgs // A collection of arguments for invoking getEngineVersion. type GetEngineVersionOutputArgs struct { - // When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + // Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`. DefaultOnly pulumi.BoolPtrInput `pulumi:"defaultOnly"` // Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`. // // The following arguments are optional: Engine pulumi.StringInput `pulumi:"engine"` - // One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + // One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). Filters GetEngineVersionFilterArrayInput `pulumi:"filters"` - // When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + // Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + HasMajorTarget pulumi.BoolPtrInput `pulumi:"hasMajorTarget"` + // Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + HasMinorTarget pulumi.BoolPtrInput `pulumi:"hasMinorTarget"` + // Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. IncludeAll pulumi.BoolPtrInput `pulumi:"includeAll"` - // When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + // Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. Latest pulumi.BoolPtrInput `pulumi:"latest"` // Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`. ParameterGroupFamily pulumi.StringPtrInput `pulumi:"parameterGroupFamily"` - // Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`. PreferredMajorTargets pulumi.StringArrayInput `pulumi:"preferredMajorTargets"` - // Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`. PreferredUpgradeTargets pulumi.StringArrayInput `pulumi:"preferredUpgradeTargets"` - // Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + // Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`. PreferredVersions pulumi.StringArrayInput `pulumi:"preferredVersions"` Version pulumi.StringPtrInput `pulumi:"version"` } @@ -222,7 +236,7 @@ func (o GetEngineVersionResultOutput) ToGetEngineVersionResultOutputWithContext( return o } -// The default character set for new instances of this engine version. +// Default character set for new instances of the engine version. func (o GetEngineVersionResultOutput) DefaultCharacterSet() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.DefaultCharacterSet }).(pulumi.StringOutput) } @@ -235,12 +249,12 @@ func (o GetEngineVersionResultOutput) Engine() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.Engine }).(pulumi.StringOutput) } -// Description of the database engine. +// Description of the engine. func (o GetEngineVersionResultOutput) EngineDescription() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.EngineDescription }).(pulumi.StringOutput) } -// Set of log types that the database engine has available for export to CloudWatch Logs. +// Set of log types that the engine version has available for export to CloudWatch Logs. func (o GetEngineVersionResultOutput) ExportableLogTypes() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.ExportableLogTypes }).(pulumi.StringArrayOutput) } @@ -249,6 +263,14 @@ func (o GetEngineVersionResultOutput) Filters() GetEngineVersionFilterArrayOutpu return o.ApplyT(func(v GetEngineVersionResult) []GetEngineVersionFilter { return v.Filters }).(GetEngineVersionFilterArrayOutput) } +func (o GetEngineVersionResultOutput) HasMajorTarget() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetEngineVersionResult) *bool { return v.HasMajorTarget }).(pulumi.BoolPtrOutput) +} + +func (o GetEngineVersionResultOutput) HasMinorTarget() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GetEngineVersionResult) *bool { return v.HasMinorTarget }).(pulumi.BoolPtrOutput) +} + // The provider-assigned unique ID for this managed resource. func (o GetEngineVersionResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.Id }).(pulumi.StringOutput) @@ -278,52 +300,62 @@ func (o GetEngineVersionResultOutput) PreferredVersions() pulumi.StringArrayOutp return o.ApplyT(func(v GetEngineVersionResult) []string { return v.PreferredVersions }).(pulumi.StringArrayOutput) } -// Status of the database engine version, either available or deprecated. +// Status of the engine version, either `available` or `deprecated`. func (o GetEngineVersionResultOutput) Status() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.Status }).(pulumi.StringOutput) } -// Set of the character sets supported by this engine. +// Set of character sets supported by th engine version. func (o GetEngineVersionResultOutput) SupportedCharacterSets() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.SupportedCharacterSets }).(pulumi.StringArrayOutput) } -// Set of features supported by the database engine. +// Set of features supported by the engine version. func (o GetEngineVersionResultOutput) SupportedFeatureNames() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.SupportedFeatureNames }).(pulumi.StringArrayOutput) } -// Set of the supported database engine modes. +// Set of supported engine version modes. func (o GetEngineVersionResultOutput) SupportedModes() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.SupportedModes }).(pulumi.StringArrayOutput) } -// Set of the time zones supported by this engine. +// Set of the time zones supported by the engine version. func (o GetEngineVersionResultOutput) SupportedTimezones() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.SupportedTimezones }).(pulumi.StringArrayOutput) } -// Indicates whether you can use Aurora global databases with a specific database engine version. +// 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) } -// Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. +// 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) } -// Indicates whether you can use Aurora parallel query with a specific database engine version. +// Whether you can use Aurora parallel query with the engine version. func (o GetEngineVersionResultOutput) SupportsParallelQuery() pulumi.BoolOutput { return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsParallelQuery }).(pulumi.BoolOutput) } -// Indicates whether the database engine version supports read replicas. +// Whether the engine version supports read replicas. func (o GetEngineVersionResultOutput) SupportsReadReplica() pulumi.BoolOutput { return o.ApplyT(func(v GetEngineVersionResult) bool { return v.SupportsReadReplica }).(pulumi.BoolOutput) } -// Set of engine versions that this database engine version can be upgraded to. +// Set of versions that are valid major version upgrades for the engine version. +func (o GetEngineVersionResultOutput) ValidMajorTargets() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetEngineVersionResult) []string { return v.ValidMajorTargets }).(pulumi.StringArrayOutput) +} + +// Set of versions that are valid minor version upgrades for the engine version. +func (o GetEngineVersionResultOutput) ValidMinorTargets() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetEngineVersionResult) []string { return v.ValidMinorTargets }).(pulumi.StringArrayOutput) +} + +// Set of versions that are valid major or minor upgrades for the engine version. func (o GetEngineVersionResultOutput) ValidUpgradeTargets() pulumi.StringArrayOutput { return o.ApplyT(func(v GetEngineVersionResult) []string { return v.ValidUpgradeTargets }).(pulumi.StringArrayOutput) } @@ -332,12 +364,12 @@ func (o GetEngineVersionResultOutput) Version() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.Version }).(pulumi.StringOutput) } -// Version of the database engine. +// Complete engine version. func (o GetEngineVersionResultOutput) VersionActual() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.VersionActual }).(pulumi.StringOutput) } -// Description of the database engine version. +// Description of the engine version. func (o GetEngineVersionResultOutput) VersionDescription() pulumi.StringOutput { return o.ApplyT(func(v GetEngineVersionResult) string { return v.VersionDescription }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/s3/bucketObject.go b/sdk/go/aws/s3/bucketObject.go index e5524044863..7326eba971e 100644 --- a/sdk/go/aws/s3/bucketObject.go +++ b/sdk/go/aws/s3/bucketObject.go @@ -272,6 +272,8 @@ type BucketObject struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. Acl pulumi.StringPtrOutput `pulumi:"acl"` + // ARN of the object. + Arn pulumi.StringOutput `pulumi:"arn"` // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket pulumi.StringOutput `pulumi:"bucket"` // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -365,6 +367,8 @@ func GetBucketObject(ctx *pulumi.Context, type bucketObjectState struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. Acl *string `pulumi:"acl"` + // ARN of the object. + Arn *string `pulumi:"arn"` // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket interface{} `pulumi:"bucket"` // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -426,6 +430,8 @@ type bucketObjectState struct { type BucketObjectState struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. Acl pulumi.StringPtrInput + // ARN of the object. + Arn pulumi.StringPtrInput // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket pulumi.Input // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -691,6 +697,11 @@ func (o BucketObjectOutput) Acl() pulumi.StringPtrOutput { return o.ApplyT(func(v *BucketObject) pulumi.StringPtrOutput { return v.Acl }).(pulumi.StringPtrOutput) } +// ARN of the object. +func (o BucketObjectOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *BucketObject) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. func (o BucketObjectOutput) Bucket() pulumi.StringOutput { return o.ApplyT(func(v *BucketObject) pulumi.StringOutput { return v.Bucket }).(pulumi.StringOutput) diff --git a/sdk/go/aws/s3/bucketObjectv2.go b/sdk/go/aws/s3/bucketObjectv2.go index 00b3ad8afec..b30c3d20a6e 100644 --- a/sdk/go/aws/s3/bucketObjectv2.go +++ b/sdk/go/aws/s3/bucketObjectv2.go @@ -321,6 +321,8 @@ type BucketObjectv2 struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Acl pulumi.StringOutput `pulumi:"acl"` + // ARN of the object. + Arn pulumi.StringOutput `pulumi:"arn"` // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket pulumi.StringOutput `pulumi:"bucket"` // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -434,6 +436,8 @@ func GetBucketObjectv2(ctx *pulumi.Context, type bucketObjectv2State struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Acl *string `pulumi:"acl"` + // ARN of the object. + Arn *string `pulumi:"arn"` // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket interface{} `pulumi:"bucket"` // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -509,6 +513,8 @@ type bucketObjectv2State struct { type BucketObjectv2State struct { // [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Acl pulumi.StringPtrInput + // ARN of the object. + Arn pulumi.StringPtrInput // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. Bucket pulumi.Input // Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. @@ -800,6 +806,11 @@ func (o BucketObjectv2Output) Acl() pulumi.StringOutput { return o.ApplyT(func(v *BucketObjectv2) pulumi.StringOutput { return v.Acl }).(pulumi.StringOutput) } +// ARN of the object. +func (o BucketObjectv2Output) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *BucketObjectv2) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + // Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. func (o BucketObjectv2Output) Bucket() pulumi.StringOutput { return o.ApplyT(func(v *BucketObjectv2) pulumi.StringOutput { return v.Bucket }).(pulumi.StringOutput) diff --git a/sdk/go/aws/s3/getBucketObject.go b/sdk/go/aws/s3/getBucketObject.go index b225e0ac477..7de33dd9593 100644 --- a/sdk/go/aws/s3/getBucketObject.go +++ b/sdk/go/aws/s3/getBucketObject.go @@ -131,6 +131,7 @@ type LookupBucketObjectArgs struct { // A collection of values returned by getBucketObject. type LookupBucketObjectResult struct { + Arn string `pulumi:"arn"` // Object data (see **limitations above** to understand cases in which this field is actually available) Body string `pulumi:"body"` // Deprecated: Use the aws_s3_object data source instead @@ -230,6 +231,10 @@ func (o LookupBucketObjectResultOutput) ToLookupBucketObjectResultOutputWithCont return o } +func (o LookupBucketObjectResultOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v LookupBucketObjectResult) string { return v.Arn }).(pulumi.StringOutput) +} + // Object data (see **limitations above** to understand cases in which this field is actually available) func (o LookupBucketObjectResultOutput) Body() pulumi.StringOutput { return o.ApplyT(func(v LookupBucketObjectResult) string { return v.Body }).(pulumi.StringOutput) diff --git a/sdk/go/aws/s3/getObject.go b/sdk/go/aws/s3/getObject.go index f2eee8f4a21..aeb54937457 100644 --- a/sdk/go/aws/s3/getObject.go +++ b/sdk/go/aws/s3/getObject.go @@ -129,6 +129,8 @@ type GetObjectArgs struct { // A collection of values returned by getObject. type GetObjectResult struct { + // ARN of the object. + Arn string `pulumi:"arn"` // Object data (see **limitations above** to understand cases in which this field is actually available) Body string `pulumi:"body"` Bucket string `pulumi:"bucket"` @@ -236,6 +238,11 @@ func (o GetObjectResultOutput) ToGetObjectResultOutputWithContext(ctx context.Co return o } +// ARN of the object. +func (o GetObjectResultOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v GetObjectResult) string { return v.Arn }).(pulumi.StringOutput) +} + // Object data (see **limitations above** to understand cases in which this field is actually available) func (o GetObjectResultOutput) Body() pulumi.StringOutput { return o.ApplyT(func(v GetObjectResult) string { return v.Body }).(pulumi.StringOutput) diff --git a/sdk/go/aws/s3/objectCopy.go b/sdk/go/aws/s3/objectCopy.go index 3c1d34a7b64..f53374b24c1 100644 --- a/sdk/go/aws/s3/objectCopy.go +++ b/sdk/go/aws/s3/objectCopy.go @@ -57,6 +57,8 @@ type ObjectCopy struct { // [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`. Acl pulumi.StringOutput `pulumi:"acl"` + // ARN of the object. + Arn pulumi.StringOutput `pulumi:"arn"` // Name of the bucket to put the file in. Bucket pulumi.StringOutput `pulumi:"bucket"` BucketKeyEnabled pulumi.BoolOutput `pulumi:"bucketKeyEnabled"` @@ -220,6 +222,8 @@ func GetObjectCopy(ctx *pulumi.Context, type objectCopyState struct { // [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`. Acl *string `pulumi:"acl"` + // ARN of the object. + Arn *string `pulumi:"arn"` // Name of the bucket to put the file in. Bucket *string `pulumi:"bucket"` BucketKeyEnabled *bool `pulumi:"bucketKeyEnabled"` @@ -326,6 +330,8 @@ type objectCopyState struct { type ObjectCopyState struct { // [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`. Acl pulumi.StringPtrInput + // ARN of the object. + Arn pulumi.StringPtrInput // Name of the bucket to put the file in. Bucket pulumi.StringPtrInput BucketKeyEnabled pulumi.BoolPtrInput @@ -690,6 +696,11 @@ func (o ObjectCopyOutput) Acl() pulumi.StringOutput { return o.ApplyT(func(v *ObjectCopy) pulumi.StringOutput { return v.Acl }).(pulumi.StringOutput) } +// ARN of the object. +func (o ObjectCopyOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *ObjectCopy) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + // Name of the bucket to put the file in. func (o ObjectCopyOutput) Bucket() pulumi.StringOutput { return o.ApplyT(func(v *ObjectCopy) pulumi.StringOutput { return v.Bucket }).(pulumi.StringOutput) diff --git a/sdk/go/aws/securitylake/init.go b/sdk/go/aws/securitylake/init.go index 104c607d9f7..bcda579b9c7 100644 --- a/sdk/go/aws/securitylake/init.go +++ b/sdk/go/aws/securitylake/init.go @@ -27,6 +27,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &CustomLogSource{} case "aws:securitylake/dataLake:DataLake": r = &DataLake{} + case "aws:securitylake/subscriber:Subscriber": + r = &Subscriber{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } @@ -55,4 +57,9 @@ func init() { "securitylake/dataLake", &module{version}, ) + pulumi.RegisterResourceModule( + "aws", + "securitylake/subscriber", + &module{version}, + ) } diff --git a/sdk/go/aws/securitylake/pulumiTypes.go b/sdk/go/aws/securitylake/pulumiTypes.go index 91f42ef2410..2f816fa7e43 100644 --- a/sdk/go/aws/securitylake/pulumiTypes.go +++ b/sdk/go/aws/securitylake/pulumiTypes.go @@ -1912,6 +1912,1064 @@ func (o DataLakeTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type SubscriberSource struct { + // Amazon Security Lake supports log and event collection for natively supported AWS services. + AwsLogSourceResource *SubscriberSourceAwsLogSourceResource `pulumi:"awsLogSourceResource"` + // Amazon Security Lake supports custom source types. + CustomLogSourceResource *SubscriberSourceCustomLogSourceResource `pulumi:"customLogSourceResource"` +} + +// SubscriberSourceInput is an input type that accepts SubscriberSourceArgs and SubscriberSourceOutput values. +// You can construct a concrete instance of `SubscriberSourceInput` via: +// +// SubscriberSourceArgs{...} +type SubscriberSourceInput interface { + pulumi.Input + + ToSubscriberSourceOutput() SubscriberSourceOutput + ToSubscriberSourceOutputWithContext(context.Context) SubscriberSourceOutput +} + +type SubscriberSourceArgs struct { + // Amazon Security Lake supports log and event collection for natively supported AWS services. + AwsLogSourceResource SubscriberSourceAwsLogSourceResourcePtrInput `pulumi:"awsLogSourceResource"` + // Amazon Security Lake supports custom source types. + CustomLogSourceResource SubscriberSourceCustomLogSourceResourcePtrInput `pulumi:"customLogSourceResource"` +} + +func (SubscriberSourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSource)(nil)).Elem() +} + +func (i SubscriberSourceArgs) ToSubscriberSourceOutput() SubscriberSourceOutput { + return i.ToSubscriberSourceOutputWithContext(context.Background()) +} + +func (i SubscriberSourceArgs) ToSubscriberSourceOutputWithContext(ctx context.Context) SubscriberSourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceOutput) +} + +func (i SubscriberSourceArgs) ToSubscriberSourcePtrOutput() SubscriberSourcePtrOutput { + return i.ToSubscriberSourcePtrOutputWithContext(context.Background()) +} + +func (i SubscriberSourceArgs) ToSubscriberSourcePtrOutputWithContext(ctx context.Context) SubscriberSourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceOutput).ToSubscriberSourcePtrOutputWithContext(ctx) +} + +// SubscriberSourcePtrInput is an input type that accepts SubscriberSourceArgs, SubscriberSourcePtr and SubscriberSourcePtrOutput values. +// You can construct a concrete instance of `SubscriberSourcePtrInput` via: +// +// SubscriberSourceArgs{...} +// +// or: +// +// nil +type SubscriberSourcePtrInput interface { + pulumi.Input + + ToSubscriberSourcePtrOutput() SubscriberSourcePtrOutput + ToSubscriberSourcePtrOutputWithContext(context.Context) SubscriberSourcePtrOutput +} + +type subscriberSourcePtrType SubscriberSourceArgs + +func SubscriberSourcePtr(v *SubscriberSourceArgs) SubscriberSourcePtrInput { + return (*subscriberSourcePtrType)(v) +} + +func (*subscriberSourcePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSource)(nil)).Elem() +} + +func (i *subscriberSourcePtrType) ToSubscriberSourcePtrOutput() SubscriberSourcePtrOutput { + return i.ToSubscriberSourcePtrOutputWithContext(context.Background()) +} + +func (i *subscriberSourcePtrType) ToSubscriberSourcePtrOutputWithContext(ctx context.Context) SubscriberSourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourcePtrOutput) +} + +type SubscriberSourceOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSource)(nil)).Elem() +} + +func (o SubscriberSourceOutput) ToSubscriberSourceOutput() SubscriberSourceOutput { + return o +} + +func (o SubscriberSourceOutput) ToSubscriberSourceOutputWithContext(ctx context.Context) SubscriberSourceOutput { + return o +} + +func (o SubscriberSourceOutput) ToSubscriberSourcePtrOutput() SubscriberSourcePtrOutput { + return o.ToSubscriberSourcePtrOutputWithContext(context.Background()) +} + +func (o SubscriberSourceOutput) ToSubscriberSourcePtrOutputWithContext(ctx context.Context) SubscriberSourcePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SubscriberSource) *SubscriberSource { + return &v + }).(SubscriberSourcePtrOutput) +} + +// Amazon Security Lake supports log and event collection for natively supported AWS services. +func (o SubscriberSourceOutput) AwsLogSourceResource() SubscriberSourceAwsLogSourceResourcePtrOutput { + return o.ApplyT(func(v SubscriberSource) *SubscriberSourceAwsLogSourceResource { return v.AwsLogSourceResource }).(SubscriberSourceAwsLogSourceResourcePtrOutput) +} + +// Amazon Security Lake supports custom source types. +func (o SubscriberSourceOutput) CustomLogSourceResource() SubscriberSourceCustomLogSourceResourcePtrOutput { + return o.ApplyT(func(v SubscriberSource) *SubscriberSourceCustomLogSourceResource { return v.CustomLogSourceResource }).(SubscriberSourceCustomLogSourceResourcePtrOutput) +} + +type SubscriberSourcePtrOutput struct{ *pulumi.OutputState } + +func (SubscriberSourcePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSource)(nil)).Elem() +} + +func (o SubscriberSourcePtrOutput) ToSubscriberSourcePtrOutput() SubscriberSourcePtrOutput { + return o +} + +func (o SubscriberSourcePtrOutput) ToSubscriberSourcePtrOutputWithContext(ctx context.Context) SubscriberSourcePtrOutput { + return o +} + +func (o SubscriberSourcePtrOutput) Elem() SubscriberSourceOutput { + return o.ApplyT(func(v *SubscriberSource) SubscriberSource { + if v != nil { + return *v + } + var ret SubscriberSource + return ret + }).(SubscriberSourceOutput) +} + +// Amazon Security Lake supports log and event collection for natively supported AWS services. +func (o SubscriberSourcePtrOutput) AwsLogSourceResource() SubscriberSourceAwsLogSourceResourcePtrOutput { + return o.ApplyT(func(v *SubscriberSource) *SubscriberSourceAwsLogSourceResource { + if v == nil { + return nil + } + return v.AwsLogSourceResource + }).(SubscriberSourceAwsLogSourceResourcePtrOutput) +} + +// Amazon Security Lake supports custom source types. +func (o SubscriberSourcePtrOutput) CustomLogSourceResource() SubscriberSourceCustomLogSourceResourcePtrOutput { + return o.ApplyT(func(v *SubscriberSource) *SubscriberSourceCustomLogSourceResource { + if v == nil { + return nil + } + return v.CustomLogSourceResource + }).(SubscriberSourceCustomLogSourceResourcePtrOutput) +} + +type SubscriberSourceAwsLogSourceResource struct { + // The name for a third-party custom source. This must be a Regionally unique value. + SourceName *string `pulumi:"sourceName"` + // The version for a third-party custom source. This must be a Regionally unique value. + SourceVersion *string `pulumi:"sourceVersion"` +} + +// SubscriberSourceAwsLogSourceResourceInput is an input type that accepts SubscriberSourceAwsLogSourceResourceArgs and SubscriberSourceAwsLogSourceResourceOutput values. +// You can construct a concrete instance of `SubscriberSourceAwsLogSourceResourceInput` via: +// +// SubscriberSourceAwsLogSourceResourceArgs{...} +type SubscriberSourceAwsLogSourceResourceInput interface { + pulumi.Input + + ToSubscriberSourceAwsLogSourceResourceOutput() SubscriberSourceAwsLogSourceResourceOutput + ToSubscriberSourceAwsLogSourceResourceOutputWithContext(context.Context) SubscriberSourceAwsLogSourceResourceOutput +} + +type SubscriberSourceAwsLogSourceResourceArgs struct { + // The name for a third-party custom source. This must be a Regionally unique value. + SourceName pulumi.StringPtrInput `pulumi:"sourceName"` + // The version for a third-party custom source. This must be a Regionally unique value. + SourceVersion pulumi.StringPtrInput `pulumi:"sourceVersion"` +} + +func (SubscriberSourceAwsLogSourceResourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceAwsLogSourceResource)(nil)).Elem() +} + +func (i SubscriberSourceAwsLogSourceResourceArgs) ToSubscriberSourceAwsLogSourceResourceOutput() SubscriberSourceAwsLogSourceResourceOutput { + return i.ToSubscriberSourceAwsLogSourceResourceOutputWithContext(context.Background()) +} + +func (i SubscriberSourceAwsLogSourceResourceArgs) ToSubscriberSourceAwsLogSourceResourceOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceAwsLogSourceResourceOutput) +} + +func (i SubscriberSourceAwsLogSourceResourceArgs) ToSubscriberSourceAwsLogSourceResourcePtrOutput() SubscriberSourceAwsLogSourceResourcePtrOutput { + return i.ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (i SubscriberSourceAwsLogSourceResourceArgs) ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceAwsLogSourceResourceOutput).ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(ctx) +} + +// SubscriberSourceAwsLogSourceResourcePtrInput is an input type that accepts SubscriberSourceAwsLogSourceResourceArgs, SubscriberSourceAwsLogSourceResourcePtr and SubscriberSourceAwsLogSourceResourcePtrOutput values. +// You can construct a concrete instance of `SubscriberSourceAwsLogSourceResourcePtrInput` via: +// +// SubscriberSourceAwsLogSourceResourceArgs{...} +// +// or: +// +// nil +type SubscriberSourceAwsLogSourceResourcePtrInput interface { + pulumi.Input + + ToSubscriberSourceAwsLogSourceResourcePtrOutput() SubscriberSourceAwsLogSourceResourcePtrOutput + ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(context.Context) SubscriberSourceAwsLogSourceResourcePtrOutput +} + +type subscriberSourceAwsLogSourceResourcePtrType SubscriberSourceAwsLogSourceResourceArgs + +func SubscriberSourceAwsLogSourceResourcePtr(v *SubscriberSourceAwsLogSourceResourceArgs) SubscriberSourceAwsLogSourceResourcePtrInput { + return (*subscriberSourceAwsLogSourceResourcePtrType)(v) +} + +func (*subscriberSourceAwsLogSourceResourcePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSourceAwsLogSourceResource)(nil)).Elem() +} + +func (i *subscriberSourceAwsLogSourceResourcePtrType) ToSubscriberSourceAwsLogSourceResourcePtrOutput() SubscriberSourceAwsLogSourceResourcePtrOutput { + return i.ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (i *subscriberSourceAwsLogSourceResourcePtrType) ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceAwsLogSourceResourcePtrOutput) +} + +type SubscriberSourceAwsLogSourceResourceOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceAwsLogSourceResourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceAwsLogSourceResource)(nil)).Elem() +} + +func (o SubscriberSourceAwsLogSourceResourceOutput) ToSubscriberSourceAwsLogSourceResourceOutput() SubscriberSourceAwsLogSourceResourceOutput { + return o +} + +func (o SubscriberSourceAwsLogSourceResourceOutput) ToSubscriberSourceAwsLogSourceResourceOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourceOutput { + return o +} + +func (o SubscriberSourceAwsLogSourceResourceOutput) ToSubscriberSourceAwsLogSourceResourcePtrOutput() SubscriberSourceAwsLogSourceResourcePtrOutput { + return o.ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (o SubscriberSourceAwsLogSourceResourceOutput) ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourcePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SubscriberSourceAwsLogSourceResource) *SubscriberSourceAwsLogSourceResource { + return &v + }).(SubscriberSourceAwsLogSourceResourcePtrOutput) +} + +// The name for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceAwsLogSourceResourceOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberSourceAwsLogSourceResource) *string { return v.SourceName }).(pulumi.StringPtrOutput) +} + +// The version for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceAwsLogSourceResourceOutput) SourceVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberSourceAwsLogSourceResource) *string { return v.SourceVersion }).(pulumi.StringPtrOutput) +} + +type SubscriberSourceAwsLogSourceResourcePtrOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceAwsLogSourceResourcePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSourceAwsLogSourceResource)(nil)).Elem() +} + +func (o SubscriberSourceAwsLogSourceResourcePtrOutput) ToSubscriberSourceAwsLogSourceResourcePtrOutput() SubscriberSourceAwsLogSourceResourcePtrOutput { + return o +} + +func (o SubscriberSourceAwsLogSourceResourcePtrOutput) ToSubscriberSourceAwsLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceAwsLogSourceResourcePtrOutput { + return o +} + +func (o SubscriberSourceAwsLogSourceResourcePtrOutput) Elem() SubscriberSourceAwsLogSourceResourceOutput { + return o.ApplyT(func(v *SubscriberSourceAwsLogSourceResource) SubscriberSourceAwsLogSourceResource { + if v != nil { + return *v + } + var ret SubscriberSourceAwsLogSourceResource + return ret + }).(SubscriberSourceAwsLogSourceResourceOutput) +} + +// The name for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceAwsLogSourceResourcePtrOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSourceAwsLogSourceResource) *string { + if v == nil { + return nil + } + return v.SourceName + }).(pulumi.StringPtrOutput) +} + +// The version for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceAwsLogSourceResourcePtrOutput) SourceVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSourceAwsLogSourceResource) *string { + if v == nil { + return nil + } + return v.SourceVersion + }).(pulumi.StringPtrOutput) +} + +type SubscriberSourceCustomLogSourceResource struct { + // The attributes of a third-party custom source. + Attributes []SubscriberSourceCustomLogSourceResourceAttribute `pulumi:"attributes"` + Providers []SubscriberSourceCustomLogSourceResourceProvider `pulumi:"providers"` + // The name for a third-party custom source. This must be a Regionally unique value. + SourceName *string `pulumi:"sourceName"` + // The version for a third-party custom source. This must be a Regionally unique value. + SourceVersion *string `pulumi:"sourceVersion"` +} + +// SubscriberSourceCustomLogSourceResourceInput is an input type that accepts SubscriberSourceCustomLogSourceResourceArgs and SubscriberSourceCustomLogSourceResourceOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourceInput` via: +// +// SubscriberSourceCustomLogSourceResourceArgs{...} +type SubscriberSourceCustomLogSourceResourceInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourceOutput() SubscriberSourceCustomLogSourceResourceOutput + ToSubscriberSourceCustomLogSourceResourceOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourceOutput +} + +type SubscriberSourceCustomLogSourceResourceArgs struct { + // The attributes of a third-party custom source. + Attributes SubscriberSourceCustomLogSourceResourceAttributeArrayInput `pulumi:"attributes"` + Providers SubscriberSourceCustomLogSourceResourceProviderArrayInput `pulumi:"providers"` + // The name for a third-party custom source. This must be a Regionally unique value. + SourceName pulumi.StringPtrInput `pulumi:"sourceName"` + // The version for a third-party custom source. This must be a Regionally unique value. + SourceVersion pulumi.StringPtrInput `pulumi:"sourceVersion"` +} + +func (SubscriberSourceCustomLogSourceResourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResource)(nil)).Elem() +} + +func (i SubscriberSourceCustomLogSourceResourceArgs) ToSubscriberSourceCustomLogSourceResourceOutput() SubscriberSourceCustomLogSourceResourceOutput { + return i.ToSubscriberSourceCustomLogSourceResourceOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceArgs) ToSubscriberSourceCustomLogSourceResourceOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceOutput) +} + +func (i SubscriberSourceCustomLogSourceResourceArgs) ToSubscriberSourceCustomLogSourceResourcePtrOutput() SubscriberSourceCustomLogSourceResourcePtrOutput { + return i.ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceArgs) ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceOutput).ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(ctx) +} + +// SubscriberSourceCustomLogSourceResourcePtrInput is an input type that accepts SubscriberSourceCustomLogSourceResourceArgs, SubscriberSourceCustomLogSourceResourcePtr and SubscriberSourceCustomLogSourceResourcePtrOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourcePtrInput` via: +// +// SubscriberSourceCustomLogSourceResourceArgs{...} +// +// or: +// +// nil +type SubscriberSourceCustomLogSourceResourcePtrInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourcePtrOutput() SubscriberSourceCustomLogSourceResourcePtrOutput + ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourcePtrOutput +} + +type subscriberSourceCustomLogSourceResourcePtrType SubscriberSourceCustomLogSourceResourceArgs + +func SubscriberSourceCustomLogSourceResourcePtr(v *SubscriberSourceCustomLogSourceResourceArgs) SubscriberSourceCustomLogSourceResourcePtrInput { + return (*subscriberSourceCustomLogSourceResourcePtrType)(v) +} + +func (*subscriberSourceCustomLogSourceResourcePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSourceCustomLogSourceResource)(nil)).Elem() +} + +func (i *subscriberSourceCustomLogSourceResourcePtrType) ToSubscriberSourceCustomLogSourceResourcePtrOutput() SubscriberSourceCustomLogSourceResourcePtrOutput { + return i.ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (i *subscriberSourceCustomLogSourceResourcePtrType) ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourcePtrOutput) +} + +type SubscriberSourceCustomLogSourceResourceOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResource)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourceOutput) ToSubscriberSourceCustomLogSourceResourceOutput() SubscriberSourceCustomLogSourceResourceOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceOutput) ToSubscriberSourceCustomLogSourceResourceOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceOutput) ToSubscriberSourceCustomLogSourceResourcePtrOutput() SubscriberSourceCustomLogSourceResourcePtrOutput { + return o.ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(context.Background()) +} + +func (o SubscriberSourceCustomLogSourceResourceOutput) ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourcePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SubscriberSourceCustomLogSourceResource) *SubscriberSourceCustomLogSourceResource { + return &v + }).(SubscriberSourceCustomLogSourceResourcePtrOutput) +} + +// The attributes of a third-party custom source. +func (o SubscriberSourceCustomLogSourceResourceOutput) Attributes() SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResource) []SubscriberSourceCustomLogSourceResourceAttribute { + return v.Attributes + }).(SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) +} + +func (o SubscriberSourceCustomLogSourceResourceOutput) Providers() SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResource) []SubscriberSourceCustomLogSourceResourceProvider { + return v.Providers + }).(SubscriberSourceCustomLogSourceResourceProviderArrayOutput) +} + +// The name for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceCustomLogSourceResourceOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResource) *string { return v.SourceName }).(pulumi.StringPtrOutput) +} + +// The version for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceCustomLogSourceResourceOutput) SourceVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResource) *string { return v.SourceVersion }).(pulumi.StringPtrOutput) +} + +type SubscriberSourceCustomLogSourceResourcePtrOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourcePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSourceCustomLogSourceResource)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) ToSubscriberSourceCustomLogSourceResourcePtrOutput() SubscriberSourceCustomLogSourceResourcePtrOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) ToSubscriberSourceCustomLogSourceResourcePtrOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourcePtrOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) Elem() SubscriberSourceCustomLogSourceResourceOutput { + return o.ApplyT(func(v *SubscriberSourceCustomLogSourceResource) SubscriberSourceCustomLogSourceResource { + if v != nil { + return *v + } + var ret SubscriberSourceCustomLogSourceResource + return ret + }).(SubscriberSourceCustomLogSourceResourceOutput) +} + +// The attributes of a third-party custom source. +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) Attributes() SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return o.ApplyT(func(v *SubscriberSourceCustomLogSourceResource) []SubscriberSourceCustomLogSourceResourceAttribute { + if v == nil { + return nil + } + return v.Attributes + }).(SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) +} + +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) Providers() SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return o.ApplyT(func(v *SubscriberSourceCustomLogSourceResource) []SubscriberSourceCustomLogSourceResourceProvider { + if v == nil { + return nil + } + return v.Providers + }).(SubscriberSourceCustomLogSourceResourceProviderArrayOutput) +} + +// The name for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) SourceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSourceCustomLogSourceResource) *string { + if v == nil { + return nil + } + return v.SourceName + }).(pulumi.StringPtrOutput) +} + +// The version for a third-party custom source. This must be a Regionally unique value. +func (o SubscriberSourceCustomLogSourceResourcePtrOutput) SourceVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSourceCustomLogSourceResource) *string { + if v == nil { + return nil + } + return v.SourceVersion + }).(pulumi.StringPtrOutput) +} + +type SubscriberSourceCustomLogSourceResourceAttribute struct { + // The ARN of the AWS Glue crawler. + CrawlerArn string `pulumi:"crawlerArn"` + // The ARN of the AWS Glue database where results are written. + DatabaseArn string `pulumi:"databaseArn"` + // The ARN of the AWS Glue table. + TableArn string `pulumi:"tableArn"` +} + +// SubscriberSourceCustomLogSourceResourceAttributeInput is an input type that accepts SubscriberSourceCustomLogSourceResourceAttributeArgs and SubscriberSourceCustomLogSourceResourceAttributeOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourceAttributeInput` via: +// +// SubscriberSourceCustomLogSourceResourceAttributeArgs{...} +type SubscriberSourceCustomLogSourceResourceAttributeInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourceAttributeOutput() SubscriberSourceCustomLogSourceResourceAttributeOutput + ToSubscriberSourceCustomLogSourceResourceAttributeOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourceAttributeOutput +} + +type SubscriberSourceCustomLogSourceResourceAttributeArgs struct { + // The ARN of the AWS Glue crawler. + CrawlerArn pulumi.StringInput `pulumi:"crawlerArn"` + // The ARN of the AWS Glue database where results are written. + DatabaseArn pulumi.StringInput `pulumi:"databaseArn"` + // The ARN of the AWS Glue table. + TableArn pulumi.StringInput `pulumi:"tableArn"` +} + +func (SubscriberSourceCustomLogSourceResourceAttributeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceAttribute)(nil)).Elem() +} + +func (i SubscriberSourceCustomLogSourceResourceAttributeArgs) ToSubscriberSourceCustomLogSourceResourceAttributeOutput() SubscriberSourceCustomLogSourceResourceAttributeOutput { + return i.ToSubscriberSourceCustomLogSourceResourceAttributeOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceAttributeArgs) ToSubscriberSourceCustomLogSourceResourceAttributeOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceAttributeOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceAttributeOutput) +} + +// SubscriberSourceCustomLogSourceResourceAttributeArrayInput is an input type that accepts SubscriberSourceCustomLogSourceResourceAttributeArray and SubscriberSourceCustomLogSourceResourceAttributeArrayOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourceAttributeArrayInput` via: +// +// SubscriberSourceCustomLogSourceResourceAttributeArray{ SubscriberSourceCustomLogSourceResourceAttributeArgs{...} } +type SubscriberSourceCustomLogSourceResourceAttributeArrayInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutput() SubscriberSourceCustomLogSourceResourceAttributeArrayOutput + ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourceAttributeArrayOutput +} + +type SubscriberSourceCustomLogSourceResourceAttributeArray []SubscriberSourceCustomLogSourceResourceAttributeInput + +func (SubscriberSourceCustomLogSourceResourceAttributeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SubscriberSourceCustomLogSourceResourceAttribute)(nil)).Elem() +} + +func (i SubscriberSourceCustomLogSourceResourceAttributeArray) ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutput() SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return i.ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceAttributeArray) ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) +} + +type SubscriberSourceCustomLogSourceResourceAttributeOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourceAttributeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceAttribute)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourceAttributeOutput) ToSubscriberSourceCustomLogSourceResourceAttributeOutput() SubscriberSourceCustomLogSourceResourceAttributeOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceAttributeOutput) ToSubscriberSourceCustomLogSourceResourceAttributeOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceAttributeOutput { + return o +} + +// The ARN of the AWS Glue crawler. +func (o SubscriberSourceCustomLogSourceResourceAttributeOutput) CrawlerArn() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResourceAttribute) string { return v.CrawlerArn }).(pulumi.StringOutput) +} + +// The ARN of the AWS Glue database where results are written. +func (o SubscriberSourceCustomLogSourceResourceAttributeOutput) DatabaseArn() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResourceAttribute) string { return v.DatabaseArn }).(pulumi.StringOutput) +} + +// The ARN of the AWS Glue table. +func (o SubscriberSourceCustomLogSourceResourceAttributeOutput) TableArn() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResourceAttribute) string { return v.TableArn }).(pulumi.StringOutput) +} + +type SubscriberSourceCustomLogSourceResourceAttributeArrayOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SubscriberSourceCustomLogSourceResourceAttribute)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutput() SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) ToSubscriberSourceCustomLogSourceResourceAttributeArrayOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceAttributeArrayOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceAttributeArrayOutput) Index(i pulumi.IntInput) SubscriberSourceCustomLogSourceResourceAttributeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SubscriberSourceCustomLogSourceResourceAttribute { + return vs[0].([]SubscriberSourceCustomLogSourceResourceAttribute)[vs[1].(int)] + }).(SubscriberSourceCustomLogSourceResourceAttributeOutput) +} + +type SubscriberSourceCustomLogSourceResourceProvider struct { + // The location of the partition in the Amazon S3 bucket for Security Lake. + Location string `pulumi:"location"` + // The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + RoleArn string `pulumi:"roleArn"` +} + +// SubscriberSourceCustomLogSourceResourceProviderInput is an input type that accepts SubscriberSourceCustomLogSourceResourceProviderArgs and SubscriberSourceCustomLogSourceResourceProviderOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourceProviderInput` via: +// +// SubscriberSourceCustomLogSourceResourceProviderArgs{...} +type SubscriberSourceCustomLogSourceResourceProviderInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourceProviderOutput() SubscriberSourceCustomLogSourceResourceProviderOutput + ToSubscriberSourceCustomLogSourceResourceProviderOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourceProviderOutput +} + +type SubscriberSourceCustomLogSourceResourceProviderArgs struct { + // The location of the partition in the Amazon S3 bucket for Security Lake. + Location pulumi.StringInput `pulumi:"location"` + // The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + RoleArn pulumi.StringInput `pulumi:"roleArn"` +} + +func (SubscriberSourceCustomLogSourceResourceProviderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceProvider)(nil)).Elem() +} + +func (i SubscriberSourceCustomLogSourceResourceProviderArgs) ToSubscriberSourceCustomLogSourceResourceProviderOutput() SubscriberSourceCustomLogSourceResourceProviderOutput { + return i.ToSubscriberSourceCustomLogSourceResourceProviderOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceProviderArgs) ToSubscriberSourceCustomLogSourceResourceProviderOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceProviderOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceProviderOutput) +} + +// SubscriberSourceCustomLogSourceResourceProviderArrayInput is an input type that accepts SubscriberSourceCustomLogSourceResourceProviderArray and SubscriberSourceCustomLogSourceResourceProviderArrayOutput values. +// You can construct a concrete instance of `SubscriberSourceCustomLogSourceResourceProviderArrayInput` via: +// +// SubscriberSourceCustomLogSourceResourceProviderArray{ SubscriberSourceCustomLogSourceResourceProviderArgs{...} } +type SubscriberSourceCustomLogSourceResourceProviderArrayInput interface { + pulumi.Input + + ToSubscriberSourceCustomLogSourceResourceProviderArrayOutput() SubscriberSourceCustomLogSourceResourceProviderArrayOutput + ToSubscriberSourceCustomLogSourceResourceProviderArrayOutputWithContext(context.Context) SubscriberSourceCustomLogSourceResourceProviderArrayOutput +} + +type SubscriberSourceCustomLogSourceResourceProviderArray []SubscriberSourceCustomLogSourceResourceProviderInput + +func (SubscriberSourceCustomLogSourceResourceProviderArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SubscriberSourceCustomLogSourceResourceProvider)(nil)).Elem() +} + +func (i SubscriberSourceCustomLogSourceResourceProviderArray) ToSubscriberSourceCustomLogSourceResourceProviderArrayOutput() SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return i.ToSubscriberSourceCustomLogSourceResourceProviderArrayOutputWithContext(context.Background()) +} + +func (i SubscriberSourceCustomLogSourceResourceProviderArray) ToSubscriberSourceCustomLogSourceResourceProviderArrayOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSourceCustomLogSourceResourceProviderArrayOutput) +} + +type SubscriberSourceCustomLogSourceResourceProviderOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourceProviderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceProvider)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourceProviderOutput) ToSubscriberSourceCustomLogSourceResourceProviderOutput() SubscriberSourceCustomLogSourceResourceProviderOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceProviderOutput) ToSubscriberSourceCustomLogSourceResourceProviderOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceProviderOutput { + return o +} + +// The location of the partition in the Amazon S3 bucket for Security Lake. +func (o SubscriberSourceCustomLogSourceResourceProviderOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResourceProvider) string { return v.Location }).(pulumi.StringOutput) +} + +// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. +func (o SubscriberSourceCustomLogSourceResourceProviderOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSourceCustomLogSourceResourceProvider) string { return v.RoleArn }).(pulumi.StringOutput) +} + +type SubscriberSourceCustomLogSourceResourceProviderArrayOutput struct{ *pulumi.OutputState } + +func (SubscriberSourceCustomLogSourceResourceProviderArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SubscriberSourceCustomLogSourceResourceProvider)(nil)).Elem() +} + +func (o SubscriberSourceCustomLogSourceResourceProviderArrayOutput) ToSubscriberSourceCustomLogSourceResourceProviderArrayOutput() SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceProviderArrayOutput) ToSubscriberSourceCustomLogSourceResourceProviderArrayOutputWithContext(ctx context.Context) SubscriberSourceCustomLogSourceResourceProviderArrayOutput { + return o +} + +func (o SubscriberSourceCustomLogSourceResourceProviderArrayOutput) Index(i pulumi.IntInput) SubscriberSourceCustomLogSourceResourceProviderOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SubscriberSourceCustomLogSourceResourceProvider { + return vs[0].([]SubscriberSourceCustomLogSourceResourceProvider)[vs[1].(int)] + }).(SubscriberSourceCustomLogSourceResourceProviderOutput) +} + +type SubscriberSubscriberIdentity struct { + // The AWS Regions where Security Lake is automatically enabled. + ExternalId string `pulumi:"externalId"` + // Provides encryption details of Amazon Security Lake object. + Principal string `pulumi:"principal"` +} + +// SubscriberSubscriberIdentityInput is an input type that accepts SubscriberSubscriberIdentityArgs and SubscriberSubscriberIdentityOutput values. +// You can construct a concrete instance of `SubscriberSubscriberIdentityInput` via: +// +// SubscriberSubscriberIdentityArgs{...} +type SubscriberSubscriberIdentityInput interface { + pulumi.Input + + ToSubscriberSubscriberIdentityOutput() SubscriberSubscriberIdentityOutput + ToSubscriberSubscriberIdentityOutputWithContext(context.Context) SubscriberSubscriberIdentityOutput +} + +type SubscriberSubscriberIdentityArgs struct { + // The AWS Regions where Security Lake is automatically enabled. + ExternalId pulumi.StringInput `pulumi:"externalId"` + // Provides encryption details of Amazon Security Lake object. + Principal pulumi.StringInput `pulumi:"principal"` +} + +func (SubscriberSubscriberIdentityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSubscriberIdentity)(nil)).Elem() +} + +func (i SubscriberSubscriberIdentityArgs) ToSubscriberSubscriberIdentityOutput() SubscriberSubscriberIdentityOutput { + return i.ToSubscriberSubscriberIdentityOutputWithContext(context.Background()) +} + +func (i SubscriberSubscriberIdentityArgs) ToSubscriberSubscriberIdentityOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSubscriberIdentityOutput) +} + +func (i SubscriberSubscriberIdentityArgs) ToSubscriberSubscriberIdentityPtrOutput() SubscriberSubscriberIdentityPtrOutput { + return i.ToSubscriberSubscriberIdentityPtrOutputWithContext(context.Background()) +} + +func (i SubscriberSubscriberIdentityArgs) ToSubscriberSubscriberIdentityPtrOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSubscriberIdentityOutput).ToSubscriberSubscriberIdentityPtrOutputWithContext(ctx) +} + +// SubscriberSubscriberIdentityPtrInput is an input type that accepts SubscriberSubscriberIdentityArgs, SubscriberSubscriberIdentityPtr and SubscriberSubscriberIdentityPtrOutput values. +// You can construct a concrete instance of `SubscriberSubscriberIdentityPtrInput` via: +// +// SubscriberSubscriberIdentityArgs{...} +// +// or: +// +// nil +type SubscriberSubscriberIdentityPtrInput interface { + pulumi.Input + + ToSubscriberSubscriberIdentityPtrOutput() SubscriberSubscriberIdentityPtrOutput + ToSubscriberSubscriberIdentityPtrOutputWithContext(context.Context) SubscriberSubscriberIdentityPtrOutput +} + +type subscriberSubscriberIdentityPtrType SubscriberSubscriberIdentityArgs + +func SubscriberSubscriberIdentityPtr(v *SubscriberSubscriberIdentityArgs) SubscriberSubscriberIdentityPtrInput { + return (*subscriberSubscriberIdentityPtrType)(v) +} + +func (*subscriberSubscriberIdentityPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSubscriberIdentity)(nil)).Elem() +} + +func (i *subscriberSubscriberIdentityPtrType) ToSubscriberSubscriberIdentityPtrOutput() SubscriberSubscriberIdentityPtrOutput { + return i.ToSubscriberSubscriberIdentityPtrOutputWithContext(context.Background()) +} + +func (i *subscriberSubscriberIdentityPtrType) ToSubscriberSubscriberIdentityPtrOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberSubscriberIdentityPtrOutput) +} + +type SubscriberSubscriberIdentityOutput struct{ *pulumi.OutputState } + +func (SubscriberSubscriberIdentityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberSubscriberIdentity)(nil)).Elem() +} + +func (o SubscriberSubscriberIdentityOutput) ToSubscriberSubscriberIdentityOutput() SubscriberSubscriberIdentityOutput { + return o +} + +func (o SubscriberSubscriberIdentityOutput) ToSubscriberSubscriberIdentityOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityOutput { + return o +} + +func (o SubscriberSubscriberIdentityOutput) ToSubscriberSubscriberIdentityPtrOutput() SubscriberSubscriberIdentityPtrOutput { + return o.ToSubscriberSubscriberIdentityPtrOutputWithContext(context.Background()) +} + +func (o SubscriberSubscriberIdentityOutput) ToSubscriberSubscriberIdentityPtrOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SubscriberSubscriberIdentity) *SubscriberSubscriberIdentity { + return &v + }).(SubscriberSubscriberIdentityPtrOutput) +} + +// The AWS Regions where Security Lake is automatically enabled. +func (o SubscriberSubscriberIdentityOutput) ExternalId() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSubscriberIdentity) string { return v.ExternalId }).(pulumi.StringOutput) +} + +// Provides encryption details of Amazon Security Lake object. +func (o SubscriberSubscriberIdentityOutput) Principal() pulumi.StringOutput { + return o.ApplyT(func(v SubscriberSubscriberIdentity) string { return v.Principal }).(pulumi.StringOutput) +} + +type SubscriberSubscriberIdentityPtrOutput struct{ *pulumi.OutputState } + +func (SubscriberSubscriberIdentityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberSubscriberIdentity)(nil)).Elem() +} + +func (o SubscriberSubscriberIdentityPtrOutput) ToSubscriberSubscriberIdentityPtrOutput() SubscriberSubscriberIdentityPtrOutput { + return o +} + +func (o SubscriberSubscriberIdentityPtrOutput) ToSubscriberSubscriberIdentityPtrOutputWithContext(ctx context.Context) SubscriberSubscriberIdentityPtrOutput { + return o +} + +func (o SubscriberSubscriberIdentityPtrOutput) Elem() SubscriberSubscriberIdentityOutput { + return o.ApplyT(func(v *SubscriberSubscriberIdentity) SubscriberSubscriberIdentity { + if v != nil { + return *v + } + var ret SubscriberSubscriberIdentity + return ret + }).(SubscriberSubscriberIdentityOutput) +} + +// The AWS Regions where Security Lake is automatically enabled. +func (o SubscriberSubscriberIdentityPtrOutput) ExternalId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSubscriberIdentity) *string { + if v == nil { + return nil + } + return &v.ExternalId + }).(pulumi.StringPtrOutput) +} + +// Provides encryption details of Amazon Security Lake object. +func (o SubscriberSubscriberIdentityPtrOutput) Principal() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberSubscriberIdentity) *string { + if v == nil { + return nil + } + return &v.Principal + }).(pulumi.StringPtrOutput) +} + +type SubscriberTimeouts 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"` +} + +// SubscriberTimeoutsInput is an input type that accepts SubscriberTimeoutsArgs and SubscriberTimeoutsOutput values. +// You can construct a concrete instance of `SubscriberTimeoutsInput` via: +// +// SubscriberTimeoutsArgs{...} +type SubscriberTimeoutsInput interface { + pulumi.Input + + ToSubscriberTimeoutsOutput() SubscriberTimeoutsOutput + ToSubscriberTimeoutsOutputWithContext(context.Context) SubscriberTimeoutsOutput +} + +type SubscriberTimeoutsArgs 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 (SubscriberTimeoutsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberTimeouts)(nil)).Elem() +} + +func (i SubscriberTimeoutsArgs) ToSubscriberTimeoutsOutput() SubscriberTimeoutsOutput { + return i.ToSubscriberTimeoutsOutputWithContext(context.Background()) +} + +func (i SubscriberTimeoutsArgs) ToSubscriberTimeoutsOutputWithContext(ctx context.Context) SubscriberTimeoutsOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberTimeoutsOutput) +} + +func (i SubscriberTimeoutsArgs) ToSubscriberTimeoutsPtrOutput() SubscriberTimeoutsPtrOutput { + return i.ToSubscriberTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i SubscriberTimeoutsArgs) ToSubscriberTimeoutsPtrOutputWithContext(ctx context.Context) SubscriberTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberTimeoutsOutput).ToSubscriberTimeoutsPtrOutputWithContext(ctx) +} + +// SubscriberTimeoutsPtrInput is an input type that accepts SubscriberTimeoutsArgs, SubscriberTimeoutsPtr and SubscriberTimeoutsPtrOutput values. +// You can construct a concrete instance of `SubscriberTimeoutsPtrInput` via: +// +// SubscriberTimeoutsArgs{...} +// +// or: +// +// nil +type SubscriberTimeoutsPtrInput interface { + pulumi.Input + + ToSubscriberTimeoutsPtrOutput() SubscriberTimeoutsPtrOutput + ToSubscriberTimeoutsPtrOutputWithContext(context.Context) SubscriberTimeoutsPtrOutput +} + +type subscriberTimeoutsPtrType SubscriberTimeoutsArgs + +func SubscriberTimeoutsPtr(v *SubscriberTimeoutsArgs) SubscriberTimeoutsPtrInput { + return (*subscriberTimeoutsPtrType)(v) +} + +func (*subscriberTimeoutsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberTimeouts)(nil)).Elem() +} + +func (i *subscriberTimeoutsPtrType) ToSubscriberTimeoutsPtrOutput() SubscriberTimeoutsPtrOutput { + return i.ToSubscriberTimeoutsPtrOutputWithContext(context.Background()) +} + +func (i *subscriberTimeoutsPtrType) ToSubscriberTimeoutsPtrOutputWithContext(ctx context.Context) SubscriberTimeoutsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberTimeoutsPtrOutput) +} + +type SubscriberTimeoutsOutput struct{ *pulumi.OutputState } + +func (SubscriberTimeoutsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SubscriberTimeouts)(nil)).Elem() +} + +func (o SubscriberTimeoutsOutput) ToSubscriberTimeoutsOutput() SubscriberTimeoutsOutput { + return o +} + +func (o SubscriberTimeoutsOutput) ToSubscriberTimeoutsOutputWithContext(ctx context.Context) SubscriberTimeoutsOutput { + return o +} + +func (o SubscriberTimeoutsOutput) ToSubscriberTimeoutsPtrOutput() SubscriberTimeoutsPtrOutput { + return o.ToSubscriberTimeoutsPtrOutputWithContext(context.Background()) +} + +func (o SubscriberTimeoutsOutput) ToSubscriberTimeoutsPtrOutputWithContext(ctx context.Context) SubscriberTimeoutsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SubscriberTimeouts) *SubscriberTimeouts { + return &v + }).(SubscriberTimeoutsPtrOutput) +} + +// 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 SubscriberTimeoutsOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberTimeouts) *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 SubscriberTimeoutsOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberTimeouts) *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 SubscriberTimeoutsOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v SubscriberTimeouts) *string { return v.Update }).(pulumi.StringPtrOutput) +} + +type SubscriberTimeoutsPtrOutput struct{ *pulumi.OutputState } + +func (SubscriberTimeoutsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SubscriberTimeouts)(nil)).Elem() +} + +func (o SubscriberTimeoutsPtrOutput) ToSubscriberTimeoutsPtrOutput() SubscriberTimeoutsPtrOutput { + return o +} + +func (o SubscriberTimeoutsPtrOutput) ToSubscriberTimeoutsPtrOutputWithContext(ctx context.Context) SubscriberTimeoutsPtrOutput { + return o +} + +func (o SubscriberTimeoutsPtrOutput) Elem() SubscriberTimeoutsOutput { + return o.ApplyT(func(v *SubscriberTimeouts) SubscriberTimeouts { + if v != nil { + return *v + } + var ret SubscriberTimeouts + return ret + }).(SubscriberTimeoutsOutput) +} + +// 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 SubscriberTimeoutsPtrOutput) Create() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberTimeouts) *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 SubscriberTimeoutsPtrOutput) Delete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberTimeouts) *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 SubscriberTimeoutsPtrOutput) Update() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SubscriberTimeouts) *string { + if v == nil { + return nil + } + return v.Update + }).(pulumi.StringPtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*AwsLogSourceSourceInput)(nil)).Elem(), AwsLogSourceSourceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AwsLogSourceSourcePtrInput)(nil)).Elem(), AwsLogSourceSourceArgs{}) @@ -1939,6 +2997,20 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DataLakeConfigurationReplicationConfigurationPtrInput)(nil)).Elem(), DataLakeConfigurationReplicationConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataLakeTimeoutsInput)(nil)).Elem(), DataLakeTimeoutsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DataLakeTimeoutsPtrInput)(nil)).Elem(), DataLakeTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceInput)(nil)).Elem(), SubscriberSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourcePtrInput)(nil)).Elem(), SubscriberSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceAwsLogSourceResourceInput)(nil)).Elem(), SubscriberSourceAwsLogSourceResourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceAwsLogSourceResourcePtrInput)(nil)).Elem(), SubscriberSourceAwsLogSourceResourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourcePtrInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceAttributeInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceAttributeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceAttributeArrayInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceAttributeArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceProviderInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceProviderArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSourceCustomLogSourceResourceProviderArrayInput)(nil)).Elem(), SubscriberSourceCustomLogSourceResourceProviderArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSubscriberIdentityInput)(nil)).Elem(), SubscriberSubscriberIdentityArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberSubscriberIdentityPtrInput)(nil)).Elem(), SubscriberSubscriberIdentityArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberTimeoutsInput)(nil)).Elem(), SubscriberTimeoutsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberTimeoutsPtrInput)(nil)).Elem(), SubscriberTimeoutsArgs{}) pulumi.RegisterOutputType(AwsLogSourceSourceOutput{}) pulumi.RegisterOutputType(AwsLogSourceSourcePtrOutput{}) pulumi.RegisterOutputType(CustomLogSourceAttributeOutput{}) @@ -1965,4 +3037,18 @@ func init() { pulumi.RegisterOutputType(DataLakeConfigurationReplicationConfigurationPtrOutput{}) pulumi.RegisterOutputType(DataLakeTimeoutsOutput{}) pulumi.RegisterOutputType(DataLakeTimeoutsPtrOutput{}) + pulumi.RegisterOutputType(SubscriberSourceOutput{}) + pulumi.RegisterOutputType(SubscriberSourcePtrOutput{}) + pulumi.RegisterOutputType(SubscriberSourceAwsLogSourceResourceOutput{}) + pulumi.RegisterOutputType(SubscriberSourceAwsLogSourceResourcePtrOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourceOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourcePtrOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourceAttributeOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourceAttributeArrayOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourceProviderOutput{}) + pulumi.RegisterOutputType(SubscriberSourceCustomLogSourceResourceProviderArrayOutput{}) + pulumi.RegisterOutputType(SubscriberSubscriberIdentityOutput{}) + pulumi.RegisterOutputType(SubscriberSubscriberIdentityPtrOutput{}) + pulumi.RegisterOutputType(SubscriberTimeoutsOutput{}) + pulumi.RegisterOutputType(SubscriberTimeoutsPtrOutput{}) } diff --git a/sdk/go/aws/securitylake/subscriber.go b/sdk/go/aws/securitylake/subscriber.go new file mode 100644 index 00000000000..e7637990547 --- /dev/null +++ b/sdk/go/aws/securitylake/subscriber.go @@ -0,0 +1,397 @@ +// 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 securitylake + +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 Security Lake Subscriber. +// +// ## Import +// +// Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: +// +// ```sh +// $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 +// ``` +type Subscriber struct { + pulumi.CustomResourceState + + AccessType pulumi.StringOutput `pulumi:"accessType"` + // ARN of the Data Lake. + Arn pulumi.StringOutput `pulumi:"arn"` + // The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + ResourceShareArn pulumi.StringOutput `pulumi:"resourceShareArn"` + // The name of the resource share. + ResourceShareName pulumi.StringOutput `pulumi:"resourceShareName"` + // The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + RoleArn pulumi.StringOutput `pulumi:"roleArn"` + // The ARN for the Amazon Security Lake Amazon S3 bucket. + S3BucketArn pulumi.StringOutput `pulumi:"s3BucketArn"` + // The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + Source SubscriberSourcePtrOutput `pulumi:"source"` + // The description for your subscriber account in Security Lake. + SubscriberDescription pulumi.StringPtrOutput `pulumi:"subscriberDescription"` + // The subscriber endpoint to which exception messages are posted. + SubscriberEndpoint pulumi.StringOutput `pulumi:"subscriberEndpoint"` + // The AWS identity used to access your data. + SubscriberIdentity SubscriberSubscriberIdentityPtrOutput `pulumi:"subscriberIdentity"` + // The name of your Security Lake subscriber account. + SubscriberName pulumi.StringPtrOutput `pulumi:"subscriberName"` + // The subscriber status of the Amazon Security Lake subscriber account. + SubscriberStatus pulumi.StringOutput `pulumi:"subscriberStatus"` + // 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"` + // 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"` + Timeouts SubscriberTimeoutsPtrOutput `pulumi:"timeouts"` +} + +// NewSubscriber registers a new resource with the given unique name, arguments, and options. +func NewSubscriber(ctx *pulumi.Context, + name string, args *SubscriberArgs, opts ...pulumi.ResourceOption) (*Subscriber, error) { + if args == nil { + args = &SubscriberArgs{} + } + + opts = internal.PkgResourceDefaultOpts(opts) + var resource Subscriber + err := ctx.RegisterResource("aws:securitylake/subscriber:Subscriber", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSubscriber gets an existing Subscriber 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 GetSubscriber(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SubscriberState, opts ...pulumi.ResourceOption) (*Subscriber, error) { + var resource Subscriber + err := ctx.ReadResource("aws:securitylake/subscriber:Subscriber", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Subscriber resources. +type subscriberState struct { + AccessType *string `pulumi:"accessType"` + // ARN of the Data Lake. + Arn *string `pulumi:"arn"` + // The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + ResourceShareArn *string `pulumi:"resourceShareArn"` + // The name of the resource share. + ResourceShareName *string `pulumi:"resourceShareName"` + // The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + RoleArn *string `pulumi:"roleArn"` + // The ARN for the Amazon Security Lake Amazon S3 bucket. + S3BucketArn *string `pulumi:"s3BucketArn"` + // The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + Source *SubscriberSource `pulumi:"source"` + // The description for your subscriber account in Security Lake. + SubscriberDescription *string `pulumi:"subscriberDescription"` + // The subscriber endpoint to which exception messages are posted. + SubscriberEndpoint *string `pulumi:"subscriberEndpoint"` + // The AWS identity used to access your data. + SubscriberIdentity *SubscriberSubscriberIdentity `pulumi:"subscriberIdentity"` + // The name of your Security Lake subscriber account. + SubscriberName *string `pulumi:"subscriberName"` + // The subscriber status of the Amazon Security Lake subscriber account. + SubscriberStatus *string `pulumi:"subscriberStatus"` + // 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"` + // 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"` + Timeouts *SubscriberTimeouts `pulumi:"timeouts"` +} + +type SubscriberState struct { + AccessType pulumi.StringPtrInput + // ARN of the Data Lake. + Arn pulumi.StringPtrInput + // The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + ResourceShareArn pulumi.StringPtrInput + // The name of the resource share. + ResourceShareName pulumi.StringPtrInput + // The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + RoleArn pulumi.StringPtrInput + // The ARN for the Amazon Security Lake Amazon S3 bucket. + S3BucketArn pulumi.StringPtrInput + // The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + Source SubscriberSourcePtrInput + // The description for your subscriber account in Security Lake. + SubscriberDescription pulumi.StringPtrInput + // The subscriber endpoint to which exception messages are posted. + SubscriberEndpoint pulumi.StringPtrInput + // The AWS identity used to access your data. + SubscriberIdentity SubscriberSubscriberIdentityPtrInput + // The name of your Security Lake subscriber account. + SubscriberName pulumi.StringPtrInput + // The subscriber status of the Amazon Security Lake subscriber account. + SubscriberStatus 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 + // 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 + Timeouts SubscriberTimeoutsPtrInput +} + +func (SubscriberState) ElementType() reflect.Type { + return reflect.TypeOf((*subscriberState)(nil)).Elem() +} + +type subscriberArgs struct { + AccessType *string `pulumi:"accessType"` + // The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + Source *SubscriberSource `pulumi:"source"` + // The description for your subscriber account in Security Lake. + SubscriberDescription *string `pulumi:"subscriberDescription"` + // The AWS identity used to access your data. + SubscriberIdentity *SubscriberSubscriberIdentity `pulumi:"subscriberIdentity"` + // The name of your Security Lake subscriber account. + SubscriberName *string `pulumi:"subscriberName"` + // 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"` + Timeouts *SubscriberTimeouts `pulumi:"timeouts"` +} + +// The set of arguments for constructing a Subscriber resource. +type SubscriberArgs struct { + AccessType pulumi.StringPtrInput + // The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + Source SubscriberSourcePtrInput + // The description for your subscriber account in Security Lake. + SubscriberDescription pulumi.StringPtrInput + // The AWS identity used to access your data. + SubscriberIdentity SubscriberSubscriberIdentityPtrInput + // The name of your Security Lake subscriber account. + SubscriberName 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 + Timeouts SubscriberTimeoutsPtrInput +} + +func (SubscriberArgs) ElementType() reflect.Type { + return reflect.TypeOf((*subscriberArgs)(nil)).Elem() +} + +type SubscriberInput interface { + pulumi.Input + + ToSubscriberOutput() SubscriberOutput + ToSubscriberOutputWithContext(ctx context.Context) SubscriberOutput +} + +func (*Subscriber) ElementType() reflect.Type { + return reflect.TypeOf((**Subscriber)(nil)).Elem() +} + +func (i *Subscriber) ToSubscriberOutput() SubscriberOutput { + return i.ToSubscriberOutputWithContext(context.Background()) +} + +func (i *Subscriber) ToSubscriberOutputWithContext(ctx context.Context) SubscriberOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberOutput) +} + +// SubscriberArrayInput is an input type that accepts SubscriberArray and SubscriberArrayOutput values. +// You can construct a concrete instance of `SubscriberArrayInput` via: +// +// SubscriberArray{ SubscriberArgs{...} } +type SubscriberArrayInput interface { + pulumi.Input + + ToSubscriberArrayOutput() SubscriberArrayOutput + ToSubscriberArrayOutputWithContext(context.Context) SubscriberArrayOutput +} + +type SubscriberArray []SubscriberInput + +func (SubscriberArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Subscriber)(nil)).Elem() +} + +func (i SubscriberArray) ToSubscriberArrayOutput() SubscriberArrayOutput { + return i.ToSubscriberArrayOutputWithContext(context.Background()) +} + +func (i SubscriberArray) ToSubscriberArrayOutputWithContext(ctx context.Context) SubscriberArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberArrayOutput) +} + +// SubscriberMapInput is an input type that accepts SubscriberMap and SubscriberMapOutput values. +// You can construct a concrete instance of `SubscriberMapInput` via: +// +// SubscriberMap{ "key": SubscriberArgs{...} } +type SubscriberMapInput interface { + pulumi.Input + + ToSubscriberMapOutput() SubscriberMapOutput + ToSubscriberMapOutputWithContext(context.Context) SubscriberMapOutput +} + +type SubscriberMap map[string]SubscriberInput + +func (SubscriberMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Subscriber)(nil)).Elem() +} + +func (i SubscriberMap) ToSubscriberMapOutput() SubscriberMapOutput { + return i.ToSubscriberMapOutputWithContext(context.Background()) +} + +func (i SubscriberMap) ToSubscriberMapOutputWithContext(ctx context.Context) SubscriberMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(SubscriberMapOutput) +} + +type SubscriberOutput struct{ *pulumi.OutputState } + +func (SubscriberOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Subscriber)(nil)).Elem() +} + +func (o SubscriberOutput) ToSubscriberOutput() SubscriberOutput { + return o +} + +func (o SubscriberOutput) ToSubscriberOutputWithContext(ctx context.Context) SubscriberOutput { + return o +} + +func (o SubscriberOutput) AccessType() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.AccessType }).(pulumi.StringOutput) +} + +// ARN of the Data Lake. +func (o SubscriberOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. +func (o SubscriberOutput) ResourceShareArn() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.ResourceShareArn }).(pulumi.StringOutput) +} + +// The name of the resource share. +func (o SubscriberOutput) ResourceShareName() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.ResourceShareName }).(pulumi.StringOutput) +} + +// The ARN of the IAM role to be used by the entity putting logs into your custom source partition. +func (o SubscriberOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) +} + +// The ARN for the Amazon Security Lake Amazon S3 bucket. +func (o SubscriberOutput) S3BucketArn() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.S3BucketArn }).(pulumi.StringOutput) +} + +// The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. +func (o SubscriberOutput) Source() SubscriberSourcePtrOutput { + return o.ApplyT(func(v *Subscriber) SubscriberSourcePtrOutput { return v.Source }).(SubscriberSourcePtrOutput) +} + +// The description for your subscriber account in Security Lake. +func (o SubscriberOutput) SubscriberDescription() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringPtrOutput { return v.SubscriberDescription }).(pulumi.StringPtrOutput) +} + +// The subscriber endpoint to which exception messages are posted. +func (o SubscriberOutput) SubscriberEndpoint() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.SubscriberEndpoint }).(pulumi.StringOutput) +} + +// The AWS identity used to access your data. +func (o SubscriberOutput) SubscriberIdentity() SubscriberSubscriberIdentityPtrOutput { + return o.ApplyT(func(v *Subscriber) SubscriberSubscriberIdentityPtrOutput { return v.SubscriberIdentity }).(SubscriberSubscriberIdentityPtrOutput) +} + +// The name of your Security Lake subscriber account. +func (o SubscriberOutput) SubscriberName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringPtrOutput { return v.SubscriberName }).(pulumi.StringPtrOutput) +} + +// The subscriber status of the Amazon Security Lake subscriber account. +func (o SubscriberOutput) SubscriberStatus() pulumi.StringOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringOutput { return v.SubscriberStatus }).(pulumi.StringOutput) +} + +// 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. +func (o SubscriberOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *Subscriber) 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 SubscriberOutput) TagsAll() pulumi.StringMapOutput { + return o.ApplyT(func(v *Subscriber) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) +} + +func (o SubscriberOutput) Timeouts() SubscriberTimeoutsPtrOutput { + return o.ApplyT(func(v *Subscriber) SubscriberTimeoutsPtrOutput { return v.Timeouts }).(SubscriberTimeoutsPtrOutput) +} + +type SubscriberArrayOutput struct{ *pulumi.OutputState } + +func (SubscriberArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*Subscriber)(nil)).Elem() +} + +func (o SubscriberArrayOutput) ToSubscriberArrayOutput() SubscriberArrayOutput { + return o +} + +func (o SubscriberArrayOutput) ToSubscriberArrayOutputWithContext(ctx context.Context) SubscriberArrayOutput { + return o +} + +func (o SubscriberArrayOutput) Index(i pulumi.IntInput) SubscriberOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Subscriber { + return vs[0].([]*Subscriber)[vs[1].(int)] + }).(SubscriberOutput) +} + +type SubscriberMapOutput struct{ *pulumi.OutputState } + +func (SubscriberMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*Subscriber)(nil)).Elem() +} + +func (o SubscriberMapOutput) ToSubscriberMapOutput() SubscriberMapOutput { + return o +} + +func (o SubscriberMapOutput) ToSubscriberMapOutputWithContext(ctx context.Context) SubscriberMapOutput { + return o +} + +func (o SubscriberMapOutput) MapIndex(k pulumi.StringInput) SubscriberOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Subscriber { + return vs[0].(map[string]*Subscriber)[vs[1].(string)] + }).(SubscriberOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberInput)(nil)).Elem(), &Subscriber{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberArrayInput)(nil)).Elem(), SubscriberArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SubscriberMapInput)(nil)).Elem(), SubscriberMap{}) + pulumi.RegisterOutputType(SubscriberOutput{}) + pulumi.RegisterOutputType(SubscriberArrayOutput{}) + pulumi.RegisterOutputType(SubscriberMapOutput{}) +} diff --git a/sdk/go/aws/wafv2/pulumiTypes.go b/sdk/go/aws/wafv2/pulumiTypes.go index ae60c41c54b..ac45f5704be 100644 --- a/sdk/go/aws/wafv2/pulumiTypes.go +++ b/sdk/go/aws/wafv2/pulumiTypes.go @@ -7225,6 +7225,10 @@ type RuleGroupRuleStatementRateBasedStatement struct { AggregateKeyType *string `pulumi:"aggregateKeyType"` // Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. CustomKeys []RuleGroupRuleStatementRateBasedStatementCustomKey `pulumi:"customKeys"` + // The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + // + // **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + EvaluationWindowSec *int `pulumi:"evaluationWindowSec"` // The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. ForwardedIpConfig *RuleGroupRuleStatementRateBasedStatementForwardedIpConfig `pulumi:"forwardedIpConfig"` // The limit on requests per 5-minute period for a single originating IP address. @@ -7249,6 +7253,10 @@ type RuleGroupRuleStatementRateBasedStatementArgs struct { AggregateKeyType pulumi.StringPtrInput `pulumi:"aggregateKeyType"` // Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. CustomKeys RuleGroupRuleStatementRateBasedStatementCustomKeyArrayInput `pulumi:"customKeys"` + // The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + // + // **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + EvaluationWindowSec pulumi.IntPtrInput `pulumi:"evaluationWindowSec"` // The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. ForwardedIpConfig RuleGroupRuleStatementRateBasedStatementForwardedIpConfigPtrInput `pulumi:"forwardedIpConfig"` // The limit on requests per 5-minute period for a single originating IP address. @@ -7346,6 +7354,13 @@ func (o RuleGroupRuleStatementRateBasedStatementOutput) CustomKeys() RuleGroupRu }).(RuleGroupRuleStatementRateBasedStatementCustomKeyArrayOutput) } +// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). +// +// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. +func (o RuleGroupRuleStatementRateBasedStatementOutput) EvaluationWindowSec() pulumi.IntPtrOutput { + return o.ApplyT(func(v RuleGroupRuleStatementRateBasedStatement) *int { return v.EvaluationWindowSec }).(pulumi.IntPtrOutput) +} + // The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. func (o RuleGroupRuleStatementRateBasedStatementOutput) ForwardedIpConfig() RuleGroupRuleStatementRateBasedStatementForwardedIpConfigPtrOutput { return o.ApplyT(func(v RuleGroupRuleStatementRateBasedStatement) *RuleGroupRuleStatementRateBasedStatementForwardedIpConfig { @@ -7409,6 +7424,18 @@ func (o RuleGroupRuleStatementRateBasedStatementPtrOutput) CustomKeys() RuleGrou }).(RuleGroupRuleStatementRateBasedStatementCustomKeyArrayOutput) } +// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). +// +// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. +func (o RuleGroupRuleStatementRateBasedStatementPtrOutput) EvaluationWindowSec() pulumi.IntPtrOutput { + return o.ApplyT(func(v *RuleGroupRuleStatementRateBasedStatement) *int { + if v == nil { + return nil + } + return v.EvaluationWindowSec + }).(pulumi.IntPtrOutput) +} + // The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. func (o RuleGroupRuleStatementRateBasedStatementPtrOutput) ForwardedIpConfig() RuleGroupRuleStatementRateBasedStatementForwardedIpConfigPtrOutput { return o.ApplyT(func(v *RuleGroupRuleStatementRateBasedStatement) *RuleGroupRuleStatementRateBasedStatementForwardedIpConfig { diff --git a/sdk/go/aws/wafv2/pulumiTypes1.go b/sdk/go/aws/wafv2/pulumiTypes1.go index 28e508c01ad..826c4cf0826 100644 --- a/sdk/go/aws/wafv2/pulumiTypes1.go +++ b/sdk/go/aws/wafv2/pulumiTypes1.go @@ -9250,6 +9250,10 @@ type WebAclRuleStatementRateBasedStatement struct { AggregateKeyType *string `pulumi:"aggregateKeyType"` // Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. CustomKeys []WebAclRuleStatementRateBasedStatementCustomKey `pulumi:"customKeys"` + // The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + // + // **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + EvaluationWindowSec *int `pulumi:"evaluationWindowSec"` // Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. ForwardedIpConfig *WebAclRuleStatementRateBasedStatementForwardedIpConfig `pulumi:"forwardedIpConfig"` // Limit on requests per 5-minute period for a single originating IP address. @@ -9274,6 +9278,10 @@ type WebAclRuleStatementRateBasedStatementArgs struct { AggregateKeyType pulumi.StringPtrInput `pulumi:"aggregateKeyType"` // Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. CustomKeys WebAclRuleStatementRateBasedStatementCustomKeyArrayInput `pulumi:"customKeys"` + // The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + // + // **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + EvaluationWindowSec pulumi.IntPtrInput `pulumi:"evaluationWindowSec"` // Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. ForwardedIpConfig WebAclRuleStatementRateBasedStatementForwardedIpConfigPtrInput `pulumi:"forwardedIpConfig"` // Limit on requests per 5-minute period for a single originating IP address. @@ -9371,6 +9379,13 @@ func (o WebAclRuleStatementRateBasedStatementOutput) CustomKeys() WebAclRuleStat }).(WebAclRuleStatementRateBasedStatementCustomKeyArrayOutput) } +// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). +// +// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. +func (o WebAclRuleStatementRateBasedStatementOutput) EvaluationWindowSec() pulumi.IntPtrOutput { + return o.ApplyT(func(v WebAclRuleStatementRateBasedStatement) *int { return v.EvaluationWindowSec }).(pulumi.IntPtrOutput) +} + // Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. func (o WebAclRuleStatementRateBasedStatementOutput) ForwardedIpConfig() WebAclRuleStatementRateBasedStatementForwardedIpConfigPtrOutput { return o.ApplyT(func(v WebAclRuleStatementRateBasedStatement) *WebAclRuleStatementRateBasedStatementForwardedIpConfig { @@ -9434,6 +9449,18 @@ func (o WebAclRuleStatementRateBasedStatementPtrOutput) CustomKeys() WebAclRuleS }).(WebAclRuleStatementRateBasedStatementCustomKeyArrayOutput) } +// The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). +// +// **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. +func (o WebAclRuleStatementRateBasedStatementPtrOutput) EvaluationWindowSec() pulumi.IntPtrOutput { + return o.ApplyT(func(v *WebAclRuleStatementRateBasedStatement) *int { + if v == nil { + return nil + } + return v.EvaluationWindowSec + }).(pulumi.IntPtrOutput) +} + // Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. func (o WebAclRuleStatementRateBasedStatementPtrOutput) ForwardedIpConfig() WebAclRuleStatementRateBasedStatementForwardedIpConfigPtrOutput { return o.ApplyT(func(v *WebAclRuleStatementRateBasedStatement) *WebAclRuleStatementRateBasedStatementForwardedIpConfig { diff --git a/sdk/java/src/main/java/com/pulumi/aws/account/Region.java b/sdk/java/src/main/java/com/pulumi/aws/account/Region.java new file mode 100644 index 00000000000..04e6a2bce89 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/account/Region.java @@ -0,0 +1,171 @@ +// *** 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.account; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.account.RegionArgs; +import com.pulumi.aws.account.inputs.RegionState; +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; + +/** + * Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.aws.account.Region; + * import com.pulumi.aws.account.RegionArgs; + * 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 Region("example", RegionArgs.builder() + * .regionName("ap-southeast-3") + * .enabled(true) + * .build()); + * + * } + * } + * ``` + * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`. For example: + * + * ```sh + * $ pulumi import aws:account/region:Region example ap-southeast-3 + * ``` + * + */ +@ResourceType(type="aws:account/region:Region") +public class Region extends com.pulumi.resources.CustomResource { + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + @Export(name="accountId", refs={String.class}, tree="[0]") + private Output accountId; + + /** + * @return The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + public Output> accountId() { + return Codegen.optional(this.accountId); + } + /** + * Whether the region is enabled. + * + */ + @Export(name="enabled", refs={Boolean.class}, tree="[0]") + private Output enabled; + + /** + * @return Whether the region is enabled. + * + */ + public Output enabled() { + return this.enabled; + } + /** + * The region opt status. + * + */ + @Export(name="optStatus", refs={String.class}, tree="[0]") + private Output optStatus; + + /** + * @return The region opt status. + * + */ + public Output optStatus() { + return this.optStatus; + } + /** + * The region name to manage. + * + */ + @Export(name="regionName", refs={String.class}, tree="[0]") + private Output regionName; + + /** + * @return The region name to manage. + * + */ + public Output regionName() { + return this.regionName; + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Region(String name) { + this(name, RegionArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Region(String name, RegionArgs 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 Region(String name, RegionArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:account/region:Region", name, args == null ? RegionArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private Region(String name, Output id, @Nullable RegionState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:account/region:Region", name, state, makeResourceOptions(options, id)); + } + + 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 Region get(String name, Output id, @Nullable RegionState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Region(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/account/RegionArgs.java b/sdk/java/src/main/java/com/pulumi/aws/account/RegionArgs.java new file mode 100644 index 00000000000..971d08383b6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/account/RegionArgs.java @@ -0,0 +1,165 @@ +// *** 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.account; + +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 RegionArgs extends com.pulumi.resources.ResourceArgs { + + public static final RegionArgs Empty = new RegionArgs(); + + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + @Import(name="accountId") + private @Nullable Output accountId; + + /** + * @return The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + public Optional> accountId() { + return Optional.ofNullable(this.accountId); + } + + /** + * Whether the region is enabled. + * + */ + @Import(name="enabled", required=true) + private Output enabled; + + /** + * @return Whether the region is enabled. + * + */ + public Output enabled() { + return this.enabled; + } + + /** + * The region name to manage. + * + */ + @Import(name="regionName", required=true) + private Output regionName; + + /** + * @return The region name to manage. + * + */ + public Output regionName() { + return this.regionName; + } + + private RegionArgs() {} + + private RegionArgs(RegionArgs $) { + this.accountId = $.accountId; + this.enabled = $.enabled; + this.regionName = $.regionName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RegionArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RegionArgs $; + + public Builder() { + $ = new RegionArgs(); + } + + public Builder(RegionArgs defaults) { + $ = new RegionArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param accountId The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + * @return builder + * + */ + public Builder accountId(@Nullable Output accountId) { + $.accountId = accountId; + return this; + } + + /** + * @param accountId The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + * @return builder + * + */ + public Builder accountId(String accountId) { + return accountId(Output.of(accountId)); + } + + /** + * @param enabled Whether the region is enabled. + * + * @return builder + * + */ + public Builder enabled(Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled Whether the region is enabled. + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + /** + * @param regionName The region name to manage. + * + * @return builder + * + */ + public Builder regionName(Output regionName) { + $.regionName = regionName; + return this; + } + + /** + * @param regionName The region name to manage. + * + * @return builder + * + */ + public Builder regionName(String regionName) { + return regionName(Output.of(regionName)); + } + + public RegionArgs build() { + if ($.enabled == null) { + throw new MissingRequiredPropertyException("RegionArgs", "enabled"); + } + if ($.regionName == null) { + throw new MissingRequiredPropertyException("RegionArgs", "regionName"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/account/inputs/RegionState.java b/sdk/java/src/main/java/com/pulumi/aws/account/inputs/RegionState.java new file mode 100644 index 00000000000..bd32bc253d8 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/account/inputs/RegionState.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.account.inputs; + +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 RegionState extends com.pulumi.resources.ResourceArgs { + + public static final RegionState Empty = new RegionState(); + + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + @Import(name="accountId") + private @Nullable Output accountId; + + /** + * @return The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + */ + public Optional> accountId() { + return Optional.ofNullable(this.accountId); + } + + /** + * Whether the region is enabled. + * + */ + @Import(name="enabled") + private @Nullable Output enabled; + + /** + * @return Whether the region is enabled. + * + */ + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + /** + * The region opt status. + * + */ + @Import(name="optStatus") + private @Nullable Output optStatus; + + /** + * @return The region opt status. + * + */ + public Optional> optStatus() { + return Optional.ofNullable(this.optStatus); + } + + /** + * The region name to manage. + * + */ + @Import(name="regionName") + private @Nullable Output regionName; + + /** + * @return The region name to manage. + * + */ + public Optional> regionName() { + return Optional.ofNullable(this.regionName); + } + + private RegionState() {} + + private RegionState(RegionState $) { + this.accountId = $.accountId; + this.enabled = $.enabled; + this.optStatus = $.optStatus; + this.regionName = $.regionName; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(RegionState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private RegionState $; + + public Builder() { + $ = new RegionState(); + } + + public Builder(RegionState defaults) { + $ = new RegionState(Objects.requireNonNull(defaults)); + } + + /** + * @param accountId The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + * @return builder + * + */ + public Builder accountId(@Nullable Output accountId) { + $.accountId = accountId; + return this; + } + + /** + * @param accountId The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + * + * @return builder + * + */ + public Builder accountId(String accountId) { + return accountId(Output.of(accountId)); + } + + /** + * @param enabled Whether the region is enabled. + * + * @return builder + * + */ + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + /** + * @param enabled Whether the region is enabled. + * + * @return builder + * + */ + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + /** + * @param optStatus The region opt status. + * + * @return builder + * + */ + public Builder optStatus(@Nullable Output optStatus) { + $.optStatus = optStatus; + return this; + } + + /** + * @param optStatus The region opt status. + * + * @return builder + * + */ + public Builder optStatus(String optStatus) { + return optStatus(Output.of(optStatus)); + } + + /** + * @param regionName The region name to manage. + * + * @return builder + * + */ + public Builder regionName(@Nullable Output regionName) { + $.regionName = regionName; + return this; + } + + /** + * @param regionName The region name to manage. + * + * @return builder + * + */ + public Builder regionName(String regionName) { + return regionName(Output.of(regionName)); + } + + public RegionState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueue.java b/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueue.java index 47af1b8efd9..4e79b70e8f1 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueue.java +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueue.java @@ -6,6 +6,7 @@ import com.pulumi.aws.Utilities; import com.pulumi.aws.batch.JobQueueArgs; import com.pulumi.aws.batch.inputs.JobQueueState; +import com.pulumi.aws.batch.outputs.JobQueueComputeEnvironmentOrder; import com.pulumi.aws.batch.outputs.JobQueueTimeouts; import com.pulumi.core.Output; import com.pulumi.core.annotations.Export; @@ -34,6 +35,7 @@ * import com.pulumi.core.Output; * import com.pulumi.aws.batch.JobQueue; * import com.pulumi.aws.batch.JobQueueArgs; + * import com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -51,9 +53,15 @@ * .name("tf-test-batch-job-queue") * .state("ENABLED") * .priority(1) - * .computeEnvironments( - * testEnvironment1.arn(), - * testEnvironment2.arn()) + * .computeEnvironmentOrders( + * JobQueueComputeEnvironmentOrderArgs.builder() + * .order(1) + * .computeEnvironment(testEnvironment1.arn()) + * .build(), + * JobQueueComputeEnvironmentOrderArgs.builder() + * .order(2) + * .computeEnvironment(testEnvironment2.arn()) + * .build()) * .build()); * * } @@ -75,6 +83,7 @@ * import com.pulumi.aws.batch.inputs.SchedulingPolicyFairSharePolicyArgs; * import com.pulumi.aws.batch.JobQueue; * import com.pulumi.aws.batch.JobQueueArgs; + * import com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; @@ -105,9 +114,15 @@ * .schedulingPolicyArn(example.arn()) * .state("ENABLED") * .priority(1) - * .computeEnvironments( - * testEnvironment1.arn(), - * testEnvironment2.arn()) + * .computeEnvironmentOrders( + * JobQueueComputeEnvironmentOrderArgs.builder() + * .order(1) + * .computeEnvironment(testEnvironment1.arn()) + * .build(), + * JobQueueComputeEnvironmentOrderArgs.builder() + * .order(2) + * .computeEnvironment(testEnvironment2.arn()) + * .build()) * .build()); * * } @@ -141,20 +156,36 @@ public Output arn() { return this.arn; } /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + */ + @Export(name="computeEnvironmentOrders", refs={List.class,JobQueueComputeEnvironmentOrder.class}, tree="[0,1]") + private Output> computeEnvironmentOrders; + + /** + * @return The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + */ + public Output>> computeEnvironmentOrders() { + return Codegen.optional(this.computeEnvironmentOrders); + } + /** + * (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ @Export(name="computeEnvironments", refs={List.class,String.class}, tree="[0,1]") - private Output> computeEnvironments; + private Output> computeEnvironments; /** - * @return List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @return (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. * */ - public Output> computeEnvironments() { - return this.computeEnvironments; + public Output>> computeEnvironments() { + return Codegen.optional(this.computeEnvironments); } /** * Specifies the name of the job queue. diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueueArgs.java b/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueueArgs.java index bac8d72b741..b96b5b7bc19 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueueArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/JobQueueArgs.java @@ -3,6 +3,7 @@ package com.pulumi.aws.batch; +import com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs; import com.pulumi.aws.batch.inputs.JobQueueTimeoutsArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; @@ -21,20 +22,41 @@ public final class JobQueueArgs extends com.pulumi.resources.ResourceArgs { public static final JobQueueArgs Empty = new JobQueueArgs(); /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. * */ - @Import(name="computeEnvironments", required=true) - private Output> computeEnvironments; + @Import(name="computeEnvironmentOrders") + private @Nullable Output> computeEnvironmentOrders; /** - * @return List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @return The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. * */ - public Output> computeEnvironments() { - return this.computeEnvironments; + public Optional>> computeEnvironmentOrders() { + return Optional.ofNullable(this.computeEnvironmentOrders); + } + + /** + * (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * + */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ + @Import(name="computeEnvironments") + private @Nullable Output> computeEnvironments; + + /** + * @return (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * + */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ + public Optional>> computeEnvironments() { + return Optional.ofNullable(this.computeEnvironments); } /** @@ -124,6 +146,7 @@ public Optional> timeouts() { private JobQueueArgs() {} private JobQueueArgs(JobQueueArgs $) { + this.computeEnvironmentOrders = $.computeEnvironmentOrders; this.computeEnvironments = $.computeEnvironments; this.name = $.name; this.priority = $.priority; @@ -152,35 +175,75 @@ public Builder(JobQueueArgs defaults) { } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + * @return builder + * + */ + public Builder computeEnvironmentOrders(@Nullable Output> computeEnvironmentOrders) { + $.computeEnvironmentOrders = computeEnvironmentOrders; + return this; + } + + /** + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. * * @return builder * */ - public Builder computeEnvironments(Output> computeEnvironments) { + public Builder computeEnvironmentOrders(List computeEnvironmentOrders) { + return computeEnvironmentOrders(Output.of(computeEnvironmentOrders)); + } + + /** + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + * @return builder + * + */ + public Builder computeEnvironmentOrders(JobQueueComputeEnvironmentOrderArgs... computeEnvironmentOrders) { + return computeEnvironmentOrders(List.of(computeEnvironmentOrders)); + } + + /** + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @return builder + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * + */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ + public Builder computeEnvironments(@Nullable Output> computeEnvironments) { $.computeEnvironments = computeEnvironments; return this; } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. * * @return builder * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Builder computeEnvironments(List computeEnvironments) { return computeEnvironments(Output.of(computeEnvironments)); } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. * * @return builder * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Builder computeEnvironments(String... computeEnvironments) { return computeEnvironments(List.of(computeEnvironments)); } @@ -302,9 +365,6 @@ public Builder timeouts(JobQueueTimeoutsArgs timeouts) { } public JobQueueArgs build() { - if ($.computeEnvironments == null) { - throw new MissingRequiredPropertyException("JobQueueArgs", "computeEnvironments"); - } if ($.priority == null) { throw new MissingRequiredPropertyException("JobQueueArgs", "priority"); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueComputeEnvironmentOrderArgs.java b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueComputeEnvironmentOrderArgs.java new file mode 100644 index 00000000000..0ece88cdadc --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueComputeEnvironmentOrderArgs.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.batch.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Integer; +import java.lang.String; +import java.util.Objects; + + +public final class JobQueueComputeEnvironmentOrderArgs extends com.pulumi.resources.ResourceArgs { + + public static final JobQueueComputeEnvironmentOrderArgs Empty = new JobQueueComputeEnvironmentOrderArgs(); + + /** + * The Amazon Resource Name (ARN) of the compute environment. + * + */ + @Import(name="computeEnvironment", required=true) + private Output computeEnvironment; + + /** + * @return The Amazon Resource Name (ARN) of the compute environment. + * + */ + public Output computeEnvironment() { + return this.computeEnvironment; + } + + /** + * The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + */ + @Import(name="order", required=true) + private Output order; + + /** + * @return The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + */ + public Output order() { + return this.order; + } + + private JobQueueComputeEnvironmentOrderArgs() {} + + private JobQueueComputeEnvironmentOrderArgs(JobQueueComputeEnvironmentOrderArgs $) { + this.computeEnvironment = $.computeEnvironment; + this.order = $.order; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(JobQueueComputeEnvironmentOrderArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private JobQueueComputeEnvironmentOrderArgs $; + + public Builder() { + $ = new JobQueueComputeEnvironmentOrderArgs(); + } + + public Builder(JobQueueComputeEnvironmentOrderArgs defaults) { + $ = new JobQueueComputeEnvironmentOrderArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param computeEnvironment The Amazon Resource Name (ARN) of the compute environment. + * + * @return builder + * + */ + public Builder computeEnvironment(Output computeEnvironment) { + $.computeEnvironment = computeEnvironment; + return this; + } + + /** + * @param computeEnvironment The Amazon Resource Name (ARN) of the compute environment. + * + * @return builder + * + */ + public Builder computeEnvironment(String computeEnvironment) { + return computeEnvironment(Output.of(computeEnvironment)); + } + + /** + * @param order The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + * @return builder + * + */ + public Builder order(Output order) { + $.order = order; + return this; + } + + /** + * @param order The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + * @return builder + * + */ + public Builder order(Integer order) { + return order(Output.of(order)); + } + + public JobQueueComputeEnvironmentOrderArgs build() { + if ($.computeEnvironment == null) { + throw new MissingRequiredPropertyException("JobQueueComputeEnvironmentOrderArgs", "computeEnvironment"); + } + if ($.order == null) { + throw new MissingRequiredPropertyException("JobQueueComputeEnvironmentOrderArgs", "order"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueState.java b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueState.java index e29fb34347e..f0e365b2527 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/inputs/JobQueueState.java @@ -3,6 +3,7 @@ package com.pulumi.aws.batch.inputs; +import com.pulumi.aws.batch.inputs.JobQueueComputeEnvironmentOrderArgs; import com.pulumi.aws.batch.inputs.JobQueueTimeoutsArgs; import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; @@ -35,18 +36,39 @@ public Optional> arn() { } /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. * */ + @Import(name="computeEnvironmentOrders") + private @Nullable Output> computeEnvironmentOrders; + + /** + * @return The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + */ + public Optional>> computeEnvironmentOrders() { + return Optional.ofNullable(this.computeEnvironmentOrders); + } + + /** + * (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * + */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ @Import(name="computeEnvironments") private @Nullable Output> computeEnvironments; /** - * @return List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @return (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Optional>> computeEnvironments() { return Optional.ofNullable(this.computeEnvironments); } @@ -162,6 +184,7 @@ private JobQueueState() {} private JobQueueState(JobQueueState $) { this.arn = $.arn; + this.computeEnvironmentOrders = $.computeEnvironmentOrders; this.computeEnvironments = $.computeEnvironments; this.name = $.name; this.priority = $.priority; @@ -212,35 +235,75 @@ public Builder arn(String arn) { } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + * @return builder + * + */ + public Builder computeEnvironmentOrders(@Nullable Output> computeEnvironmentOrders) { + $.computeEnvironmentOrders = computeEnvironmentOrders; + return this; + } + + /** + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. * * @return builder * */ + public Builder computeEnvironmentOrders(List computeEnvironmentOrders) { + return computeEnvironmentOrders(Output.of(computeEnvironmentOrders)); + } + + /** + * @param computeEnvironmentOrders The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + * + * @return builder + * + */ + public Builder computeEnvironmentOrders(JobQueueComputeEnvironmentOrderArgs... computeEnvironmentOrders) { + return computeEnvironmentOrders(List.of(computeEnvironmentOrders)); + } + + /** + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + * + * @return builder + * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * + */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Builder computeEnvironments(@Nullable Output> computeEnvironments) { $.computeEnvironments = computeEnvironments; return this; } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. * * @return builder * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Builder computeEnvironments(List computeEnvironments) { return computeEnvironments(Output.of(computeEnvironments)); } /** - * @param computeEnvironments List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * @param computeEnvironments (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. * * @return builder * + * @deprecated + * This parameter will be replaced by `compute_environments_order`. + * */ + @Deprecated /* This parameter will be replaced by `compute_environments_order`. */ public Builder computeEnvironments(String... computeEnvironments) { return computeEnvironments(List.of(computeEnvironments)); } diff --git a/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueComputeEnvironmentOrder.java b/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueComputeEnvironmentOrder.java new file mode 100644 index 00000000000..dbb5d53c7d6 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/batch/outputs/JobQueueComputeEnvironmentOrder.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.batch.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 JobQueueComputeEnvironmentOrder { + /** + * @return The Amazon Resource Name (ARN) of the compute environment. + * + */ + private String computeEnvironment; + /** + * @return The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + */ + private Integer order; + + private JobQueueComputeEnvironmentOrder() {} + /** + * @return The Amazon Resource Name (ARN) of the compute environment. + * + */ + public String computeEnvironment() { + return this.computeEnvironment; + } + /** + * @return The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + * + */ + public Integer order() { + return this.order; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(JobQueueComputeEnvironmentOrder defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String computeEnvironment; + private Integer order; + public Builder() {} + public Builder(JobQueueComputeEnvironmentOrder defaults) { + Objects.requireNonNull(defaults); + this.computeEnvironment = defaults.computeEnvironment; + this.order = defaults.order; + } + + @CustomType.Setter + public Builder computeEnvironment(String computeEnvironment) { + if (computeEnvironment == null) { + throw new MissingRequiredPropertyException("JobQueueComputeEnvironmentOrder", "computeEnvironment"); + } + this.computeEnvironment = computeEnvironment; + return this; + } + @CustomType.Setter + public Builder order(Integer order) { + if (order == null) { + throw new MissingRequiredPropertyException("JobQueueComputeEnvironmentOrder", "order"); + } + this.order = order; + return this; + } + public JobQueueComputeEnvironmentOrder build() { + final var _resultValue = new JobQueueComputeEnvironmentOrder(); + _resultValue.computeEnvironment = computeEnvironment; + _resultValue.order = order; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeature.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeature.java index 88d64b02920..ec31e4689ea 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeature.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeature.java @@ -99,14 +99,14 @@ public Output detectorId() { return this.detectorId; } /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ @Export(name="name", refs={String.class}, tree="[0]") private Output name; /** - * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ public Output name() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeatureArgs.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeatureArgs.java index 6ce9ca3ca91..b261753b8e7 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeatureArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/DetectorFeatureArgs.java @@ -49,14 +49,14 @@ public Output detectorId() { } /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ @Import(name="name") private @Nullable Output name; /** - * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ public Optional> name() { @@ -158,7 +158,7 @@ public Builder detectorId(String detectorId) { } /** - * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * * @return builder * @@ -169,7 +169,7 @@ public Builder name(@Nullable Output name) { } /** - * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureAdditionalConfigurationArgs.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureAdditionalConfigurationArgs.java index c7ac46eb0db..b397a6c6f07 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureAdditionalConfigurationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureAdditionalConfigurationArgs.java @@ -15,14 +15,14 @@ public final class DetectorFeatureAdditionalConfigurationArgs extends com.pulumi public static final DetectorFeatureAdditionalConfigurationArgs Empty = new DetectorFeatureAdditionalConfigurationArgs(); /** - * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * */ @Import(name="name", required=true) private Output name; /** - * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * */ public Output name() { @@ -70,7 +70,7 @@ public Builder(DetectorFeatureAdditionalConfigurationArgs defaults) { } /** - * @param name The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * @param name The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * * @return builder * @@ -81,7 +81,7 @@ public Builder name(Output name) { } /** - * @param name The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * @param name The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureState.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureState.java index a0e1984402e..864db6e3003 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/inputs/DetectorFeatureState.java @@ -48,14 +48,14 @@ public Optional> detectorId() { } /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ @Import(name="name") private @Nullable Output name; /** - * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @return The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * */ public Optional> name() { @@ -157,7 +157,7 @@ public Builder detectorId(String detectorId) { } /** - * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * * @return builder * @@ -168,7 +168,7 @@ public Builder name(@Nullable Output name) { } /** - * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * @param name The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/guardduty/outputs/DetectorFeatureAdditionalConfiguration.java b/sdk/java/src/main/java/com/pulumi/aws/guardduty/outputs/DetectorFeatureAdditionalConfiguration.java index a9fceb41f45..861296f123b 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/guardduty/outputs/DetectorFeatureAdditionalConfiguration.java +++ b/sdk/java/src/main/java/com/pulumi/aws/guardduty/outputs/DetectorFeatureAdditionalConfiguration.java @@ -11,7 +11,7 @@ @CustomType public final class DetectorFeatureAdditionalConfiguration { /** - * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * */ private String name; @@ -23,7 +23,7 @@ public final class DetectorFeatureAdditionalConfiguration { private DetectorFeatureAdditionalConfiguration() {} /** - * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * @return The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. * */ public String name() { diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/Policy.java b/sdk/java/src/main/java/com/pulumi/aws/iot/Policy.java index a609ebf001d..9c19835be00 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/Policy.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/Policy.java @@ -11,6 +11,8 @@ 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; /** @@ -128,6 +130,38 @@ public Output name() { public Output policy() { return this.policy; } + /** + * 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; + } /** * diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/PolicyArgs.java b/sdk/java/src/main/java/com/pulumi/aws/iot/PolicyArgs.java index fb0c476ef07..97900c24f64 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/PolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/PolicyArgs.java @@ -7,6 +7,7 @@ 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; @@ -46,11 +47,27 @@ public Output policy() { return this.policy; } + /** + * 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); + } + private PolicyArgs() {} private PolicyArgs(PolicyArgs $) { this.name = $.name; this.policy = $.policy; + this.tags = $.tags; } public static Builder builder() { @@ -113,6 +130,27 @@ public Builder policy(String policy) { return policy(Output.of(policy)); } + /** + * @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 PolicyArgs build() { if ($.policy == null) { throw new MissingRequiredPropertyException("PolicyArgs", "policy"); diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAlias.java b/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAlias.java index 7cd71bc6510..1541c85a18c 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAlias.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAlias.java @@ -12,6 +12,7 @@ import com.pulumi.core.internal.Codegen; import java.lang.Integer; import java.lang.String; +import java.util.Map; import java.util.Optional; import javax.annotation.Nullable; @@ -134,6 +135,38 @@ public Output> credentialDuration() { public Output roleArn() { return this.roleArn; } + /** + * 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; + } /** * diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAliasArgs.java b/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAliasArgs.java index fc34aaa6dcf..df86cd6fbb6 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAliasArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/RoleAliasArgs.java @@ -8,6 +8,7 @@ import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.Integer; import java.lang.String; +import java.util.Map; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -62,12 +63,28 @@ public Output roleArn() { return this.roleArn; } + /** + * 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); + } + private RoleAliasArgs() {} private RoleAliasArgs(RoleAliasArgs $) { this.alias = $.alias; this.credentialDuration = $.credentialDuration; this.roleArn = $.roleArn; + this.tags = $.tags; } public static Builder builder() { @@ -151,6 +168,27 @@ public Builder roleArn(String roleArn) { return roleArn(Output.of(roleArn)); } + /** + * @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 RoleAliasArgs build() { if ($.alias == null) { throw new MissingRequiredPropertyException("RoleAliasArgs", "alias"); diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/PolicyState.java b/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/PolicyState.java index 869ec23bda5..8335c10241c 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/PolicyState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/PolicyState.java @@ -6,6 +6,7 @@ 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; @@ -75,6 +76,44 @@ public Optional> policy() { return Optional.ofNullable(this.policy); } + /** + * 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); + } + private PolicyState() {} private PolicyState(PolicyState $) { @@ -82,6 +121,8 @@ private PolicyState(PolicyState $) { this.defaultVersionId = $.defaultVersionId; this.name = $.name; this.policy = $.policy; + this.tags = $.tags; + this.tagsAll = $.tagsAll; } public static Builder builder() { @@ -186,6 +227,56 @@ public Builder policy(String policy) { return policy(Output.of(policy)); } + /** + * @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 PolicyState build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/RoleAliasState.java b/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/RoleAliasState.java index 1fdcdfe8ed3..8b0b2b3e3ac 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/RoleAliasState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/iot/inputs/RoleAliasState.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import java.lang.Integer; import java.lang.String; +import java.util.Map; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -76,6 +77,44 @@ public Optional> roleArn() { return Optional.ofNullable(this.roleArn); } + /** + * 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); + } + private RoleAliasState() {} private RoleAliasState(RoleAliasState $) { @@ -83,6 +122,8 @@ private RoleAliasState(RoleAliasState $) { this.arn = $.arn; this.credentialDuration = $.credentialDuration; this.roleArn = $.roleArn; + this.tags = $.tags; + this.tagsAll = $.tagsAll; } public static Builder builder() { @@ -187,6 +228,56 @@ public Builder roleArn(String roleArn) { return roleArn(Output.of(roleArn)); } + /** + * @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 RoleAliasState build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/aws/opensearch/inputs/DomainAutoTuneOptionsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/opensearch/inputs/DomainAutoTuneOptionsArgs.java index 1335aa182b3..551d3558904 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/opensearch/inputs/DomainAutoTuneOptionsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/opensearch/inputs/DomainAutoTuneOptionsArgs.java @@ -7,6 +7,7 @@ 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.List; import java.util.Objects; @@ -36,6 +37,8 @@ public Output desiredState() { /** * Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. + * */ @Import(name="maintenanceSchedules") private @Nullable Output> maintenanceSchedules; @@ -43,6 +46,8 @@ public Output desiredState() { /** * @return Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. + * */ public Optional>> maintenanceSchedules() { return Optional.ofNullable(this.maintenanceSchedules); @@ -63,12 +68,28 @@ public Optional> rollbackOnDisable() { return Optional.ofNullable(this.rollbackOnDisable); } + /** + * Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + * + */ + @Import(name="useOffPeakWindow") + private @Nullable Output useOffPeakWindow; + + /** + * @return Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + * + */ + public Optional> useOffPeakWindow() { + return Optional.ofNullable(this.useOffPeakWindow); + } + private DomainAutoTuneOptionsArgs() {} private DomainAutoTuneOptionsArgs(DomainAutoTuneOptionsArgs $) { this.desiredState = $.desiredState; this.maintenanceSchedules = $.maintenanceSchedules; this.rollbackOnDisable = $.rollbackOnDisable; + this.useOffPeakWindow = $.useOffPeakWindow; } public static Builder builder() { @@ -113,6 +134,8 @@ public Builder desiredState(String desiredState) { /** * @param maintenanceSchedules Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. + * * @return builder * */ @@ -124,6 +147,8 @@ public Builder maintenanceSchedules(@Nullable Output useOffPeakWindow) { + $.useOffPeakWindow = useOffPeakWindow; + return this; + } + + /** + * @param useOffPeakWindow Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + * + * @return builder + * + */ + public Builder useOffPeakWindow(Boolean useOffPeakWindow) { + return useOffPeakWindow(Output.of(useOffPeakWindow)); + } + public DomainAutoTuneOptionsArgs build() { if ($.desiredState == null) { throw new MissingRequiredPropertyException("DomainAutoTuneOptionsArgs", "desiredState"); diff --git a/sdk/java/src/main/java/com/pulumi/aws/opensearch/outputs/DomainAutoTuneOptions.java b/sdk/java/src/main/java/com/pulumi/aws/opensearch/outputs/DomainAutoTuneOptions.java index baf93c4e3dc..a111321d545 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/opensearch/outputs/DomainAutoTuneOptions.java +++ b/sdk/java/src/main/java/com/pulumi/aws/opensearch/outputs/DomainAutoTuneOptions.java @@ -6,6 +6,7 @@ import com.pulumi.aws.opensearch.outputs.DomainAutoTuneOptionsMaintenanceSchedule; import com.pulumi.core.annotations.CustomType; import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.Boolean; import java.lang.String; import java.util.List; import java.util.Objects; @@ -22,6 +23,8 @@ public final class DomainAutoTuneOptions { /** * @return Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. + * */ private @Nullable List maintenanceSchedules; /** @@ -29,6 +32,11 @@ public final class DomainAutoTuneOptions { * */ private @Nullable String rollbackOnDisable; + /** + * @return Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + * + */ + private @Nullable Boolean useOffPeakWindow; private DomainAutoTuneOptions() {} /** @@ -41,6 +49,8 @@ public String desiredState() { /** * @return Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. + * */ public List maintenanceSchedules() { return this.maintenanceSchedules == null ? List.of() : this.maintenanceSchedules; @@ -52,6 +62,13 @@ public List maintenanceSchedules() { public Optional rollbackOnDisable() { return Optional.ofNullable(this.rollbackOnDisable); } + /** + * @return Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + * + */ + public Optional useOffPeakWindow() { + return Optional.ofNullable(this.useOffPeakWindow); + } public static Builder builder() { return new Builder(); @@ -65,12 +82,14 @@ public static final class Builder { private String desiredState; private @Nullable List maintenanceSchedules; private @Nullable String rollbackOnDisable; + private @Nullable Boolean useOffPeakWindow; public Builder() {} public Builder(DomainAutoTuneOptions defaults) { Objects.requireNonNull(defaults); this.desiredState = defaults.desiredState; this.maintenanceSchedules = defaults.maintenanceSchedules; this.rollbackOnDisable = defaults.rollbackOnDisable; + this.useOffPeakWindow = defaults.useOffPeakWindow; } @CustomType.Setter @@ -96,11 +115,18 @@ public Builder rollbackOnDisable(@Nullable String rollbackOnDisable) { this.rollbackOnDisable = rollbackOnDisable; return this; } + @CustomType.Setter + public Builder useOffPeakWindow(@Nullable Boolean useOffPeakWindow) { + + this.useOffPeakWindow = useOffPeakWindow; + return this; + } public DomainAutoTuneOptions build() { final var _resultValue = new DomainAutoTuneOptions(); _resultValue.desiredState = desiredState; _resultValue.maintenanceSchedules = maintenanceSchedules; _resultValue.rollbackOnDisable = rollbackOnDisable; + _resultValue.useOffPeakWindow = useOffPeakWindow; return _resultValue; } } 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 3db3311a0aa..eb280069af6 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 @@ -1221,14 +1221,14 @@ public Output storageEncrypted() { return this.storageEncrypted; } /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ @Export(name="storageType", refs={String.class}, tree="[0]") private Output storageType; /** - * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ public Output storageType() { 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 b6cd63ade3f..645d4f993f0 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 @@ -767,14 +767,14 @@ public Optional> storageEncrypted() { } /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ @Import(name="storageType") private @Nullable Output storageType; /** - * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ public Optional> storageType() { @@ -1999,7 +1999,7 @@ public Builder storageEncrypted(Boolean storageEncrypted) { } /** - * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * * @return builder * @@ -2010,7 +2010,7 @@ public Builder storageType(@Nullable Output storageType) { } /** - * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * * @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 7437a187a81..91165dec301 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 @@ -270,7 +270,7 @@ public Output endpoint() { } /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ @Export(name="engine", refs={String.class}, tree="[0]") @@ -278,7 +278,7 @@ public Output endpoint() { /** * @return Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ public Output engine() { 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 128eb56b085..e6ceb37e208 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 @@ -158,7 +158,7 @@ public Optional> dbSubnetGroupName() { /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ @Import(name="engine", required=true) @@ -166,7 +166,7 @@ public Optional> dbSubnetGroupName() { /** * @return Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ public Output engine() { @@ -621,7 +621,7 @@ public Builder dbSubnetGroupName(String dbSubnetGroupName) { /** * @param engine Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * * @return builder * @@ -633,7 +633,7 @@ public Builder engine(Output engine) { /** * @param engine Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * * @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 3829810f30b..e375f7e94bc 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 @@ -202,7 +202,7 @@ public Optional> endpoint() { /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ @Import(name="engine") @@ -210,7 +210,7 @@ public Optional> endpoint() { /** * @return Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * */ public Optional> engine() { @@ -851,7 +851,7 @@ public Builder endpoint(String endpoint) { /** * @param engine Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * * @return builder * @@ -863,7 +863,7 @@ public Builder engine(@Nullable Output engine) { /** * @param engine Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). * * @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 9d210a6e608..34a71ae9c38 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 @@ -874,14 +874,14 @@ public Optional> storageEncrypted() { } /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ @Import(name="storageType") private @Nullable Output storageType; /** - * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @return (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * */ public Optional> storageType() { @@ -2296,7 +2296,7 @@ public Builder storageEncrypted(Boolean storageEncrypted) { } /** - * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * * @return builder * @@ -2307,7 +2307,7 @@ public Builder storageType(@Nullable Output storageType) { } /** - * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * @param storageType (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionArgs.java index ff45cb87293..a9144b1e869 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionArgs.java @@ -20,14 +20,14 @@ public final class GetEngineVersionArgs extends com.pulumi.resources.InvokeArgs public static final GetEngineVersionArgs Empty = new GetEngineVersionArgs(); /** - * When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * */ @Import(name="defaultOnly") private @Nullable Output defaultOnly; /** - * @return When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * @return Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * */ public Optional> defaultOnly() { @@ -54,14 +54,14 @@ public Output engine() { } /** - * One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * */ @Import(name="filters") private @Nullable Output> filters; /** - * @return One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @return One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * */ public Optional>> filters() { @@ -69,14 +69,44 @@ public Optional>> filters() { } /** - * When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + */ + @Import(name="hasMajorTarget") + private @Nullable Output hasMajorTarget; + + /** + * @return Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + */ + public Optional> hasMajorTarget() { + return Optional.ofNullable(this.hasMajorTarget); + } + + /** + * Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + */ + @Import(name="hasMinorTarget") + private @Nullable Output hasMinorTarget; + + /** + * @return Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + */ + public Optional> hasMinorTarget() { + return Optional.ofNullable(this.hasMinorTarget); + } + + /** + * Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * */ @Import(name="includeAll") private @Nullable Output includeAll; /** - * @return When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * @return Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * */ public Optional> includeAll() { @@ -84,14 +114,14 @@ public Optional> includeAll() { } /** - * When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * */ @Import(name="latest") private @Nullable Output latest; /** - * @return When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * @return Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * */ public Optional> latest() { @@ -114,14 +144,14 @@ public Optional> parameterGroupFamily() { } /** - * Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * */ @Import(name="preferredMajorTargets") private @Nullable Output> preferredMajorTargets; /** - * @return Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * */ public Optional>> preferredMajorTargets() { @@ -129,14 +159,14 @@ public Optional>> preferredMajorTargets() { } /** - * Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * */ @Import(name="preferredUpgradeTargets") private @Nullable Output> preferredUpgradeTargets; /** - * @return Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * */ public Optional>> preferredUpgradeTargets() { @@ -144,14 +174,14 @@ public Optional>> preferredUpgradeTargets() { } /** - * Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * */ @Import(name="preferredVersions") private @Nullable Output> preferredVersions; /** - * @return Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * */ public Optional>> preferredVersions() { @@ -171,6 +201,8 @@ private GetEngineVersionArgs(GetEngineVersionArgs $) { this.defaultOnly = $.defaultOnly; this.engine = $.engine; this.filters = $.filters; + this.hasMajorTarget = $.hasMajorTarget; + this.hasMinorTarget = $.hasMinorTarget; this.includeAll = $.includeAll; this.latest = $.latest; this.parameterGroupFamily = $.parameterGroupFamily; @@ -199,7 +231,7 @@ public Builder(GetEngineVersionArgs defaults) { } /** - * @param defaultOnly When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * @param defaultOnly Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * * @return builder * @@ -210,7 +242,7 @@ public Builder defaultOnly(@Nullable Output defaultOnly) { } /** - * @param defaultOnly When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * @param defaultOnly Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * * @return builder * @@ -245,7 +277,7 @@ public Builder engine(String engine) { } /** - * @param filters One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @param filters One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * * @return builder * @@ -256,7 +288,7 @@ public Builder filters(@Nullable Output> filter } /** - * @param filters One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @param filters One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * * @return builder * @@ -266,7 +298,7 @@ public Builder filters(List filters) { } /** - * @param filters One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @param filters One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * * @return builder * @@ -276,7 +308,49 @@ public Builder filters(GetEngineVersionFilterArgs... filters) { } /** - * @param includeAll When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * @param hasMajorTarget Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMajorTarget(@Nullable Output hasMajorTarget) { + $.hasMajorTarget = hasMajorTarget; + return this; + } + + /** + * @param hasMajorTarget Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMajorTarget(Boolean hasMajorTarget) { + return hasMajorTarget(Output.of(hasMajorTarget)); + } + + /** + * @param hasMinorTarget Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMinorTarget(@Nullable Output hasMinorTarget) { + $.hasMinorTarget = hasMinorTarget; + return this; + } + + /** + * @param hasMinorTarget Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMinorTarget(Boolean hasMinorTarget) { + return hasMinorTarget(Output.of(hasMinorTarget)); + } + + /** + * @param includeAll Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * * @return builder * @@ -287,7 +361,7 @@ public Builder includeAll(@Nullable Output includeAll) { } /** - * @param includeAll When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * @param includeAll Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * * @return builder * @@ -297,7 +371,7 @@ public Builder includeAll(Boolean includeAll) { } /** - * @param latest When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * @param latest Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * * @return builder * @@ -308,7 +382,7 @@ public Builder latest(@Nullable Output latest) { } /** - * @param latest When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * @param latest Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * * @return builder * @@ -339,7 +413,7 @@ public Builder parameterGroupFamily(String parameterGroupFamily) { } /** - * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * * @return builder * @@ -350,7 +424,7 @@ public Builder preferredMajorTargets(@Nullable Output> preferredMaj } /** - * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * * @return builder * @@ -360,7 +434,7 @@ public Builder preferredMajorTargets(List preferredMajorTargets) { } /** - * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * * @return builder * @@ -370,7 +444,7 @@ public Builder preferredMajorTargets(String... preferredMajorTargets) { } /** - * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * * @return builder * @@ -381,7 +455,7 @@ public Builder preferredUpgradeTargets(@Nullable Output> preferredU } /** - * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * * @return builder * @@ -391,7 +465,7 @@ public Builder preferredUpgradeTargets(List preferredUpgradeTargets) { } /** - * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * * @return builder * @@ -401,7 +475,7 @@ public Builder preferredUpgradeTargets(String... preferredUpgradeTargets) { } /** - * @param preferredVersions Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredVersions Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * * @return builder * @@ -412,7 +486,7 @@ public Builder preferredVersions(@Nullable Output> preferredVersion } /** - * @param preferredVersions Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredVersions Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * * @return builder * @@ -422,7 +496,7 @@ public Builder preferredVersions(List preferredVersions) { } /** - * @param preferredVersions Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredVersions Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionPlainArgs.java b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionPlainArgs.java index 967e60d8b53..f9577fe4841 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionPlainArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/rds/inputs/GetEngineVersionPlainArgs.java @@ -19,14 +19,14 @@ public final class GetEngineVersionPlainArgs extends com.pulumi.resources.Invoke public static final GetEngineVersionPlainArgs Empty = new GetEngineVersionPlainArgs(); /** - * When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * */ @Import(name="defaultOnly") private @Nullable Boolean defaultOnly; /** - * @return When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * @return Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * */ public Optional defaultOnly() { @@ -53,14 +53,14 @@ public String engine() { } /** - * One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * */ @Import(name="filters") private @Nullable List filters; /** - * @return One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @return One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * */ public Optional> filters() { @@ -68,14 +68,44 @@ public Optional> filters() { } /** - * When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + */ + @Import(name="hasMajorTarget") + private @Nullable Boolean hasMajorTarget; + + /** + * @return Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + */ + public Optional hasMajorTarget() { + return Optional.ofNullable(this.hasMajorTarget); + } + + /** + * Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + */ + @Import(name="hasMinorTarget") + private @Nullable Boolean hasMinorTarget; + + /** + * @return Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + */ + public Optional hasMinorTarget() { + return Optional.ofNullable(this.hasMinorTarget); + } + + /** + * Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * */ @Import(name="includeAll") private @Nullable Boolean includeAll; /** - * @return When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * @return Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * */ public Optional includeAll() { @@ -83,14 +113,14 @@ public Optional includeAll() { } /** - * When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * */ @Import(name="latest") private @Nullable Boolean latest; /** - * @return When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * @return Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * */ public Optional latest() { @@ -113,14 +143,14 @@ public Optional parameterGroupFamily() { } /** - * Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * */ @Import(name="preferredMajorTargets") private @Nullable List preferredMajorTargets; /** - * @return Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * */ public Optional> preferredMajorTargets() { @@ -128,14 +158,14 @@ public Optional> preferredMajorTargets() { } /** - * Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * */ @Import(name="preferredUpgradeTargets") private @Nullable List preferredUpgradeTargets; /** - * @return Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * */ public Optional> preferredUpgradeTargets() { @@ -143,14 +173,14 @@ public Optional> preferredUpgradeTargets() { } /** - * Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * */ @Import(name="preferredVersions") private @Nullable List preferredVersions; /** - * @return Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @return Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * */ public Optional> preferredVersions() { @@ -170,6 +200,8 @@ private GetEngineVersionPlainArgs(GetEngineVersionPlainArgs $) { this.defaultOnly = $.defaultOnly; this.engine = $.engine; this.filters = $.filters; + this.hasMajorTarget = $.hasMajorTarget; + this.hasMinorTarget = $.hasMinorTarget; this.includeAll = $.includeAll; this.latest = $.latest; this.parameterGroupFamily = $.parameterGroupFamily; @@ -198,7 +230,7 @@ public Builder(GetEngineVersionPlainArgs defaults) { } /** - * @param defaultOnly When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * @param defaultOnly Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. * * @return builder * @@ -222,7 +254,7 @@ public Builder engine(String engine) { } /** - * @param filters One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @param filters One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * * @return builder * @@ -233,7 +265,7 @@ public Builder filters(@Nullable List filters) { } /** - * @param filters One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * @param filters One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). * * @return builder * @@ -243,7 +275,29 @@ public Builder filters(GetEngineVersionFilter... filters) { } /** - * @param includeAll When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * @param hasMajorTarget Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMajorTarget(@Nullable Boolean hasMajorTarget) { + $.hasMajorTarget = hasMajorTarget; + return this; + } + + /** + * @param hasMinorTarget Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + * + * @return builder + * + */ + public Builder hasMinorTarget(@Nullable Boolean hasMinorTarget) { + $.hasMinorTarget = hasMinorTarget; + return this; + } + + /** + * @param includeAll Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. * * @return builder * @@ -254,7 +308,7 @@ public Builder includeAll(@Nullable Boolean includeAll) { } /** - * @param latest When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * @param latest Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. * * @return builder * @@ -276,7 +330,7 @@ public Builder parameterGroupFamily(@Nullable String parameterGroupFamily) { } /** - * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * * @return builder * @@ -287,7 +341,7 @@ public Builder preferredMajorTargets(@Nullable List preferredMajorTarget } /** - * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredMajorTargets Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. * * @return builder * @@ -297,7 +351,7 @@ public Builder preferredMajorTargets(String... preferredMajorTargets) { } /** - * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * * @return builder * @@ -308,7 +362,7 @@ public Builder preferredUpgradeTargets(@Nullable List preferredUpgradeTa } /** - * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredUpgradeTargets Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. * * @return builder * @@ -318,7 +372,7 @@ public Builder preferredUpgradeTargets(String... preferredUpgradeTargets) { } /** - * @param preferredVersions Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredVersions Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * * @return builder * @@ -329,7 +383,7 @@ public Builder preferredVersions(@Nullable List preferredVersions) { } /** - * @param preferredVersions Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + * @param preferredVersions Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. * * @return builder * 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 ab92fcad6ef..defd8b5c903 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 @@ -16,23 +16,25 @@ @CustomType public final class GetEngineVersionResult { /** - * @return The default character set for new instances of this engine version. + * @return Default character set for new instances of the engine version. * */ private String defaultCharacterSet; private @Nullable Boolean defaultOnly; private String engine; /** - * @return Description of the database engine. + * @return Description of the engine. * */ private String engineDescription; /** - * @return Set of log types that the database engine has available for export to CloudWatch Logs. + * @return Set of log types that the engine version has available for export to CloudWatch Logs. * */ private List exportableLogTypes; private @Nullable List filters; + private @Nullable Boolean hasMajorTarget; + private @Nullable Boolean hasMinorTarget; /** * @return The provider-assigned unique ID for this managed resource. * @@ -45,70 +47,80 @@ public final class GetEngineVersionResult { private @Nullable List preferredUpgradeTargets; private @Nullable List preferredVersions; /** - * @return Status of the database engine version, either available or deprecated. + * @return Status of the engine version, either `available` or `deprecated`. * */ private String status; /** - * @return Set of the character sets supported by this engine. + * @return Set of character sets supported by th engine version. * */ private List supportedCharacterSets; /** - * @return Set of features supported by the database engine. + * @return Set of features supported by the engine version. * */ private List supportedFeatureNames; /** - * @return Set of the supported database engine modes. + * @return Set of supported engine version modes. * */ private List supportedModes; /** - * @return Set of the time zones supported by this engine. + * @return Set of the time zones supported by the engine version. * */ private List supportedTimezones; /** - * @return Indicates whether you can use Aurora global databases with a specific database engine version. + * @return Whether you can use Aurora global databases with the engine version. * */ private Boolean supportsGlobalDatabases; /** - * @return Indicates whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. + * @return Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. * */ private Boolean supportsLogExportsToCloudwatch; /** - * @return Indicates whether you can use Aurora parallel query with a specific database engine version. + * @return Whether you can use Aurora parallel query with the engine version. * */ private Boolean supportsParallelQuery; /** - * @return Indicates whether the database engine version supports read replicas. + * @return Whether the engine version supports read replicas. * */ private Boolean supportsReadReplica; /** - * @return Set of engine versions that this database engine version can be upgraded to. + * @return Set of versions that are valid major version upgrades for the engine version. + * + */ + private List validMajorTargets; + /** + * @return Set of versions that are valid minor version upgrades for the engine version. + * + */ + private List validMinorTargets; + /** + * @return Set of versions that are valid major or minor upgrades for the engine version. * */ private List validUpgradeTargets; private String version; /** - * @return Version of the database engine. + * @return Complete engine version. * */ private String versionActual; /** - * @return Description of the database engine version. + * @return Description of the engine version. * */ private String versionDescription; private GetEngineVersionResult() {} /** - * @return The default character set for new instances of this engine version. + * @return Default character set for new instances of the engine version. * */ public String defaultCharacterSet() { @@ -121,14 +133,14 @@ public String engine() { return this.engine; } /** - * @return Description of the database engine. + * @return Description of the engine. * */ public String engineDescription() { return this.engineDescription; } /** - * @return Set of log types that the database engine has available for export to CloudWatch Logs. + * @return Set of log types that the engine version has available for export to CloudWatch Logs. * */ public List exportableLogTypes() { @@ -137,6 +149,12 @@ public List exportableLogTypes() { public List filters() { return this.filters == null ? List.of() : this.filters; } + public Optional hasMajorTarget() { + return Optional.ofNullable(this.hasMajorTarget); + } + public Optional hasMinorTarget() { + return Optional.ofNullable(this.hasMinorTarget); + } /** * @return The provider-assigned unique ID for this managed resource. * @@ -163,70 +181,84 @@ public List preferredVersions() { return this.preferredVersions == null ? List.of() : this.preferredVersions; } /** - * @return Status of the database engine version, either available or deprecated. + * @return Status of the engine version, either `available` or `deprecated`. * */ public String status() { return this.status; } /** - * @return Set of the character sets supported by this engine. + * @return Set of character sets supported by th engine version. * */ public List supportedCharacterSets() { return this.supportedCharacterSets; } /** - * @return Set of features supported by the database engine. + * @return Set of features supported by the engine version. * */ public List supportedFeatureNames() { return this.supportedFeatureNames; } /** - * @return Set of the supported database engine modes. + * @return Set of supported engine version modes. * */ public List supportedModes() { return this.supportedModes; } /** - * @return Set of the time zones supported by this engine. + * @return Set of the time zones supported by the engine version. * */ public List supportedTimezones() { return this.supportedTimezones; } /** - * @return Indicates whether you can use Aurora global databases with a specific database engine version. + * @return Whether you can use Aurora global databases with the engine version. * */ public Boolean supportsGlobalDatabases() { return this.supportsGlobalDatabases; } /** - * @return Indicates whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. + * @return Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. * */ public Boolean supportsLogExportsToCloudwatch() { return this.supportsLogExportsToCloudwatch; } /** - * @return Indicates whether you can use Aurora parallel query with a specific database engine version. + * @return Whether you can use Aurora parallel query with the engine version. * */ public Boolean supportsParallelQuery() { return this.supportsParallelQuery; } /** - * @return Indicates whether the database engine version supports read replicas. + * @return Whether the engine version supports read replicas. * */ public Boolean supportsReadReplica() { return this.supportsReadReplica; } /** - * @return Set of engine versions that this database engine version can be upgraded to. + * @return Set of versions that are valid major version upgrades for the engine version. + * + */ + public List validMajorTargets() { + return this.validMajorTargets; + } + /** + * @return Set of versions that are valid minor version upgrades for the engine version. + * + */ + public List validMinorTargets() { + return this.validMinorTargets; + } + /** + * @return Set of versions that are valid major or minor upgrades for the engine version. * */ public List validUpgradeTargets() { @@ -236,14 +268,14 @@ public String version() { return this.version; } /** - * @return Version of the database engine. + * @return Complete engine version. * */ public String versionActual() { return this.versionActual; } /** - * @return Description of the database engine version. + * @return Description of the engine version. * */ public String versionDescription() { @@ -265,6 +297,8 @@ public static final class Builder { private String engineDescription; private List exportableLogTypes; private @Nullable List filters; + private @Nullable Boolean hasMajorTarget; + private @Nullable Boolean hasMinorTarget; private String id; private @Nullable Boolean includeAll; private @Nullable Boolean latest; @@ -281,6 +315,8 @@ public static final class Builder { private Boolean supportsLogExportsToCloudwatch; private Boolean supportsParallelQuery; private Boolean supportsReadReplica; + private List validMajorTargets; + private List validMinorTargets; private List validUpgradeTargets; private String version; private String versionActual; @@ -294,6 +330,8 @@ public Builder(GetEngineVersionResult defaults) { this.engineDescription = defaults.engineDescription; this.exportableLogTypes = defaults.exportableLogTypes; this.filters = defaults.filters; + this.hasMajorTarget = defaults.hasMajorTarget; + this.hasMinorTarget = defaults.hasMinorTarget; this.id = defaults.id; this.includeAll = defaults.includeAll; this.latest = defaults.latest; @@ -310,6 +348,8 @@ public Builder(GetEngineVersionResult defaults) { this.supportsLogExportsToCloudwatch = defaults.supportsLogExportsToCloudwatch; this.supportsParallelQuery = defaults.supportsParallelQuery; this.supportsReadReplica = defaults.supportsReadReplica; + this.validMajorTargets = defaults.validMajorTargets; + this.validMinorTargets = defaults.validMinorTargets; this.validUpgradeTargets = defaults.validUpgradeTargets; this.version = defaults.version; this.versionActual = defaults.versionActual; @@ -367,6 +407,18 @@ public Builder filters(GetEngineVersionFilter... filters) { return filters(List.of(filters)); } @CustomType.Setter + public Builder hasMajorTarget(@Nullable Boolean hasMajorTarget) { + + this.hasMajorTarget = hasMajorTarget; + return this; + } + @CustomType.Setter + public Builder hasMinorTarget(@Nullable Boolean hasMinorTarget) { + + this.hasMinorTarget = hasMinorTarget; + return this; + } + @CustomType.Setter public Builder id(String id) { if (id == null) { throw new MissingRequiredPropertyException("GetEngineVersionResult", "id"); @@ -506,6 +558,28 @@ public Builder supportsReadReplica(Boolean supportsReadReplica) { return this; } @CustomType.Setter + public Builder validMajorTargets(List validMajorTargets) { + if (validMajorTargets == null) { + throw new MissingRequiredPropertyException("GetEngineVersionResult", "validMajorTargets"); + } + this.validMajorTargets = validMajorTargets; + return this; + } + public Builder validMajorTargets(String... validMajorTargets) { + return validMajorTargets(List.of(validMajorTargets)); + } + @CustomType.Setter + public Builder validMinorTargets(List validMinorTargets) { + if (validMinorTargets == null) { + throw new MissingRequiredPropertyException("GetEngineVersionResult", "validMinorTargets"); + } + this.validMinorTargets = validMinorTargets; + return this; + } + public Builder validMinorTargets(String... validMinorTargets) { + return validMinorTargets(List.of(validMinorTargets)); + } + @CustomType.Setter public Builder validUpgradeTargets(List validUpgradeTargets) { if (validUpgradeTargets == null) { throw new MissingRequiredPropertyException("GetEngineVersionResult", "validUpgradeTargets"); @@ -548,6 +622,8 @@ public GetEngineVersionResult build() { _resultValue.engineDescription = engineDescription; _resultValue.exportableLogTypes = exportableLogTypes; _resultValue.filters = filters; + _resultValue.hasMajorTarget = hasMajorTarget; + _resultValue.hasMinorTarget = hasMinorTarget; _resultValue.id = id; _resultValue.includeAll = includeAll; _resultValue.latest = latest; @@ -564,6 +640,8 @@ public GetEngineVersionResult build() { _resultValue.supportsLogExportsToCloudwatch = supportsLogExportsToCloudwatch; _resultValue.supportsParallelQuery = supportsParallelQuery; _resultValue.supportsReadReplica = supportsReadReplica; + _resultValue.validMajorTargets = validMajorTargets; + _resultValue.validMinorTargets = validMinorTargets; _resultValue.validUpgradeTargets = validUpgradeTargets; _resultValue.version = version; _resultValue.versionActual = versionActual; diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObject.java b/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObject.java index 3bbfd46eea5..095544e7564 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObject.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObject.java @@ -316,6 +316,20 @@ public class BucketObject extends com.pulumi.resources.CustomResource { public Output> acl() { return Codegen.optional(this.acl); } + /** + * ARN of the object. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return ARN of the object. + * + */ + public Output arn() { + return this.arn; + } /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObjectv2.java b/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObjectv2.java index af80a59f2d3..2f246ad139c 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObjectv2.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/BucketObjectv2.java @@ -374,6 +374,20 @@ public class BucketObjectv2 extends com.pulumi.resources.CustomResource { public Output acl() { return this.acl; } + /** + * ARN of the object. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return ARN of the object. + * + */ + public Output arn() { + return this.arn; + } /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * 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 104fe5781ed..3d11715c2fa 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 @@ -79,6 +79,20 @@ public class ObjectCopy extends com.pulumi.resources.CustomResource { public Output acl() { return this.acl; } + /** + * ARN of the object. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return ARN of the object. + * + */ + public Output arn() { + return this.arn; + } /** * Name of the bucket to put the file in. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectState.java b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectState.java index 00f8671884e..3c6d7dd0298 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectState.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectState.java @@ -33,6 +33,21 @@ public Optional> acl() { return Optional.ofNullable(this.acl); } + /** + * ARN of the object. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return ARN of the object. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * @@ -428,6 +443,7 @@ private BucketObjectState() {} private BucketObjectState(BucketObjectState $) { this.acl = $.acl; + this.arn = $.arn; this.bucket = $.bucket; this.bucketKeyEnabled = $.bucketKeyEnabled; this.cacheControl = $.cacheControl; @@ -494,6 +510,27 @@ public Builder acl(String acl) { return acl(Output.of(acl)); } + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + /** * @param bucket Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectv2State.java b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectv2State.java index 3f511a0b950..b559559f207 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectv2State.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/inputs/BucketObjectv2State.java @@ -34,6 +34,21 @@ public Optional> acl() { return Optional.ofNullable(this.acl); } + /** + * ARN of the object. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return ARN of the object. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * @@ -523,6 +538,7 @@ private BucketObjectv2State() {} private BucketObjectv2State(BucketObjectv2State $) { this.acl = $.acl; + this.arn = $.arn; this.bucket = $.bucket; this.bucketKeyEnabled = $.bucketKeyEnabled; this.cacheControl = $.cacheControl; @@ -595,6 +611,27 @@ public Builder acl(String acl) { return acl(Output.of(acl)); } + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + /** * @param bucket Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. * 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 df90ceb5dff..a312be9b678 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 @@ -34,6 +34,21 @@ public Optional> acl() { return Optional.ofNullable(this.acl); } + /** + * ARN of the object. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return ARN of the object. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + /** * Name of the bucket to put the file in. * @@ -777,6 +792,7 @@ private ObjectCopyState() {} private ObjectCopyState(ObjectCopyState $) { this.acl = $.acl; + this.arn = $.arn; this.bucket = $.bucket; this.bucketKeyEnabled = $.bucketKeyEnabled; this.cacheControl = $.cacheControl; @@ -867,6 +883,27 @@ public Builder acl(String acl) { return acl(Output.of(acl)); } + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn ARN of the object. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + /** * @param bucket Name of the bucket to put the file in. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetBucketObjectResult.java b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetBucketObjectResult.java index e8f7d3c5f7a..0c6fef755c9 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetBucketObjectResult.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetBucketObjectResult.java @@ -15,6 +15,7 @@ @CustomType public final class GetBucketObjectResult { + private String arn; /** * @return Object data (see **limitations above** to understand cases in which this field is actually available) * @@ -141,6 +142,9 @@ public final class GetBucketObjectResult { private String websiteRedirectLocation; private GetBucketObjectResult() {} + public String arn() { + return this.arn; + } /** * @return Object data (see **limitations above** to understand cases in which this field is actually available) * @@ -327,6 +331,7 @@ public static Builder builder(GetBucketObjectResult defaults) { } @CustomType.Builder public static final class Builder { + private String arn; private String body; private String bucket; private Boolean bucketKeyEnabled; @@ -356,6 +361,7 @@ public static final class Builder { public Builder() {} public Builder(GetBucketObjectResult defaults) { Objects.requireNonNull(defaults); + this.arn = defaults.arn; this.body = defaults.body; this.bucket = defaults.bucket; this.bucketKeyEnabled = defaults.bucketKeyEnabled; @@ -384,6 +390,14 @@ public Builder(GetBucketObjectResult defaults) { this.websiteRedirectLocation = defaults.websiteRedirectLocation; } + @CustomType.Setter + public Builder arn(String arn) { + if (arn == null) { + throw new MissingRequiredPropertyException("GetBucketObjectResult", "arn"); + } + this.arn = arn; + return this; + } @CustomType.Setter public Builder body(String body) { if (body == null) { @@ -592,6 +606,7 @@ public Builder websiteRedirectLocation(String websiteRedirectLocation) { } public GetBucketObjectResult build() { final var _resultValue = new GetBucketObjectResult(); + _resultValue.arn = arn; _resultValue.body = body; _resultValue.bucket = bucket; _resultValue.bucketKeyEnabled = bucketKeyEnabled; diff --git a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetObjectResult.java b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetObjectResult.java index aefecafa9b8..584937feb80 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetObjectResult.java +++ b/sdk/java/src/main/java/com/pulumi/aws/s3/outputs/GetObjectResult.java @@ -15,6 +15,11 @@ @CustomType public final class GetObjectResult { + /** + * @return ARN of the object. + * + */ + private String arn; /** * @return Object data (see **limitations above** to understand cases in which this field is actually available) * @@ -156,6 +161,13 @@ public final class GetObjectResult { private String websiteRedirectLocation; private GetObjectResult() {} + /** + * @return ARN of the object. + * + */ + public String arn() { + return this.arn; + } /** * @return Object data (see **limitations above** to understand cases in which this field is actually available) * @@ -367,6 +379,7 @@ public static Builder builder(GetObjectResult defaults) { } @CustomType.Builder public static final class Builder { + private String arn; private String body; private String bucket; private Boolean bucketKeyEnabled; @@ -401,6 +414,7 @@ public static final class Builder { public Builder() {} public Builder(GetObjectResult defaults) { Objects.requireNonNull(defaults); + this.arn = defaults.arn; this.body = defaults.body; this.bucket = defaults.bucket; this.bucketKeyEnabled = defaults.bucketKeyEnabled; @@ -434,6 +448,14 @@ public Builder(GetObjectResult defaults) { this.websiteRedirectLocation = defaults.websiteRedirectLocation; } + @CustomType.Setter + public Builder arn(String arn) { + if (arn == null) { + throw new MissingRequiredPropertyException("GetObjectResult", "arn"); + } + this.arn = arn; + return this; + } @CustomType.Setter public Builder body(String body) { if (body == null) { @@ -680,6 +702,7 @@ public Builder websiteRedirectLocation(String websiteRedirectLocation) { } public GetObjectResult build() { final var _resultValue = new GetObjectResult(); + _resultValue.arn = arn; _resultValue.body = body; _resultValue.bucket = bucket; _resultValue.bucketKeyEnabled = bucketKeyEnabled; diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/Subscriber.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/Subscriber.java new file mode 100644 index 00000000000..af89e5aed97 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/Subscriber.java @@ -0,0 +1,330 @@ +// *** 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.securitylake; + +import com.pulumi.aws.Utilities; +import com.pulumi.aws.securitylake.SubscriberArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberState; +import com.pulumi.aws.securitylake.outputs.SubscriberSource; +import com.pulumi.aws.securitylake.outputs.SubscriberSubscriberIdentity; +import com.pulumi.aws.securitylake.outputs.SubscriberTimeouts; +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 Security Lake Subscriber. + * + * ## Example Usage + * + * <!--Start PulumiCodeChooser --> + * ```java + * package generated_program; + * + * import com.pulumi.Context; + * import com.pulumi.Pulumi; + * import com.pulumi.core.Output; + * import com.pulumi.aws.securitylake.Subscriber; + * import com.pulumi.aws.securitylake.SubscriberArgs; + * import com.pulumi.aws.securitylake.inputs.SubscriberSourceArgs; + * import com.pulumi.aws.securitylake.inputs.SubscriberSourceAwsLogSourceResourceArgs; + * import com.pulumi.aws.securitylake.inputs.SubscriberSubscriberIdentityArgs; + * 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 Subscriber("example", SubscriberArgs.builder() + * .subscriberName("example-name") + * .sourceVersion("1.0") + * .accessType("S3") + * .source(SubscriberSourceArgs.builder() + * .awsLogSourceResource(SubscriberSourceAwsLogSourceResourceArgs.builder() + * .sourceName("ROUTE53") + * .sourceVersion("1.0") + * .build()) + * .build()) + * .subscriberIdentity(SubscriberSubscriberIdentityArgs.builder() + * .externalId("example") + * .principal("1234567890") + * .build()) + * .build()); + * + * } + * } + * ``` + * <!--End PulumiCodeChooser --> + * + * ## Import + * + * Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: + * + * ```sh + * $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 + * ``` + * + */ +@ResourceType(type="aws:securitylake/subscriber:Subscriber") +public class Subscriber extends com.pulumi.resources.CustomResource { + @Export(name="accessType", refs={String.class}, tree="[0]") + private Output accessType; + + public Output accessType() { + return this.accessType; + } + /** + * ARN of the Data Lake. + * + */ + @Export(name="arn", refs={String.class}, tree="[0]") + private Output arn; + + /** + * @return ARN of the Data Lake. + * + */ + public Output arn() { + return this.arn; + } + /** + * The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + */ + @Export(name="resourceShareArn", refs={String.class}, tree="[0]") + private Output resourceShareArn; + + /** + * @return The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + */ + public Output resourceShareArn() { + return this.resourceShareArn; + } + /** + * The name of the resource share. + * + */ + @Export(name="resourceShareName", refs={String.class}, tree="[0]") + private Output resourceShareName; + + /** + * @return The name of the resource share. + * + */ + public Output resourceShareName() { + return this.resourceShareName; + } + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + @Export(name="roleArn", refs={String.class}, tree="[0]") + private Output roleArn; + + /** + * @return The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + public Output roleArn() { + return this.roleArn; + } + /** + * The ARN for the Amazon Security Lake Amazon S3 bucket. + * + */ + @Export(name="s3BucketArn", refs={String.class}, tree="[0]") + private Output s3BucketArn; + + /** + * @return The ARN for the Amazon Security Lake Amazon S3 bucket. + * + */ + public Output s3BucketArn() { + return this.s3BucketArn; + } + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + @Export(name="source", refs={SubscriberSource.class}, tree="[0]") + private Output source; + + /** + * @return The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + public Output> source() { + return Codegen.optional(this.source); + } + /** + * The description for your subscriber account in Security Lake. + * + */ + @Export(name="subscriberDescription", refs={String.class}, tree="[0]") + private Output subscriberDescription; + + /** + * @return The description for your subscriber account in Security Lake. + * + */ + public Output> subscriberDescription() { + return Codegen.optional(this.subscriberDescription); + } + /** + * The subscriber endpoint to which exception messages are posted. + * + */ + @Export(name="subscriberEndpoint", refs={String.class}, tree="[0]") + private Output subscriberEndpoint; + + /** + * @return The subscriber endpoint to which exception messages are posted. + * + */ + public Output subscriberEndpoint() { + return this.subscriberEndpoint; + } + /** + * The AWS identity used to access your data. + * + */ + @Export(name="subscriberIdentity", refs={SubscriberSubscriberIdentity.class}, tree="[0]") + private Output subscriberIdentity; + + /** + * @return The AWS identity used to access your data. + * + */ + public Output> subscriberIdentity() { + return Codegen.optional(this.subscriberIdentity); + } + /** + * The name of your Security Lake subscriber account. + * + */ + @Export(name="subscriberName", refs={String.class}, tree="[0]") + private Output subscriberName; + + /** + * @return The name of your Security Lake subscriber account. + * + */ + public Output> subscriberName() { + return Codegen.optional(this.subscriberName); + } + /** + * The subscriber status of the Amazon Security Lake subscriber account. + * + */ + @Export(name="subscriberStatus", refs={String.class}, tree="[0]") + private Output subscriberStatus; + + /** + * @return The subscriber status of the Amazon Security Lake subscriber account. + * + */ + public Output subscriberStatus() { + return this.subscriberStatus; + } + /** + * 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. + * + */ + @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") + private Output> tags; + + /** + * @return 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. + * + */ + 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; + } + @Export(name="timeouts", refs={SubscriberTimeouts.class}, tree="[0]") + private Output timeouts; + + public Output> timeouts() { + return Codegen.optional(this.timeouts); + } + + /** + * + * @param name The _unique_ name of the resulting resource. + */ + public Subscriber(String name) { + this(name, SubscriberArgs.Empty); + } + /** + * + * @param name The _unique_ name of the resulting resource. + * @param args The arguments to use to populate this resource's properties. + */ + public Subscriber(String name, @Nullable SubscriberArgs 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 Subscriber(String name, @Nullable SubscriberArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:securitylake/subscriber:Subscriber", name, args == null ? SubscriberArgs.Empty : args, makeResourceOptions(options, Codegen.empty())); + } + + private Subscriber(String name, Output id, @Nullable SubscriberState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + super("aws:securitylake/subscriber:Subscriber", name, state, makeResourceOptions(options, id)); + } + + 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 Subscriber get(String name, Output id, @Nullable SubscriberState state, @Nullable com.pulumi.resources.CustomResourceOptions options) { + return new Subscriber(name, id, state, options); + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/SubscriberArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/SubscriberArgs.java new file mode 100644 index 00000000000..9de09192edd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/SubscriberArgs.java @@ -0,0 +1,269 @@ +// *** 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.securitylake; + +import com.pulumi.aws.securitylake.inputs.SubscriberSourceArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberSubscriberIdentityArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberTimeoutsArgs; +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 SubscriberArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberArgs Empty = new SubscriberArgs(); + + @Import(name="accessType") + private @Nullable Output accessType; + + public Optional> accessType() { + return Optional.ofNullable(this.accessType); + } + + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + @Import(name="source") + private @Nullable Output source; + + /** + * @return The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + public Optional> source() { + return Optional.ofNullable(this.source); + } + + /** + * The description for your subscriber account in Security Lake. + * + */ + @Import(name="subscriberDescription") + private @Nullable Output subscriberDescription; + + /** + * @return The description for your subscriber account in Security Lake. + * + */ + public Optional> subscriberDescription() { + return Optional.ofNullable(this.subscriberDescription); + } + + /** + * The AWS identity used to access your data. + * + */ + @Import(name="subscriberIdentity") + private @Nullable Output subscriberIdentity; + + /** + * @return The AWS identity used to access your data. + * + */ + public Optional> subscriberIdentity() { + return Optional.ofNullable(this.subscriberIdentity); + } + + /** + * The name of your Security Lake subscriber account. + * + */ + @Import(name="subscriberName") + private @Nullable Output subscriberName; + + /** + * @return The name of your Security Lake subscriber account. + * + */ + public Optional> subscriberName() { + return Optional.ofNullable(this.subscriberName); + } + + /** + * 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. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return 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. + * + */ + public Optional>> tags() { + return Optional.ofNullable(this.tags); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + private SubscriberArgs() {} + + private SubscriberArgs(SubscriberArgs $) { + this.accessType = $.accessType; + this.source = $.source; + this.subscriberDescription = $.subscriberDescription; + this.subscriberIdentity = $.subscriberIdentity; + this.subscriberName = $.subscriberName; + this.tags = $.tags; + this.timeouts = $.timeouts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberArgs $; + + public Builder() { + $ = new SubscriberArgs(); + } + + public Builder(SubscriberArgs defaults) { + $ = new SubscriberArgs(Objects.requireNonNull(defaults)); + } + + public Builder accessType(@Nullable Output accessType) { + $.accessType = accessType; + return this; + } + + public Builder accessType(String accessType) { + return accessType(Output.of(accessType)); + } + + /** + * @param source The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder source(@Nullable Output source) { + $.source = source; + return this; + } + + /** + * @param source The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder source(SubscriberSourceArgs source) { + return source(Output.of(source)); + } + + /** + * @param subscriberDescription The description for your subscriber account in Security Lake. + * + * @return builder + * + */ + public Builder subscriberDescription(@Nullable Output subscriberDescription) { + $.subscriberDescription = subscriberDescription; + return this; + } + + /** + * @param subscriberDescription The description for your subscriber account in Security Lake. + * + * @return builder + * + */ + public Builder subscriberDescription(String subscriberDescription) { + return subscriberDescription(Output.of(subscriberDescription)); + } + + /** + * @param subscriberIdentity The AWS identity used to access your data. + * + * @return builder + * + */ + public Builder subscriberIdentity(@Nullable Output subscriberIdentity) { + $.subscriberIdentity = subscriberIdentity; + return this; + } + + /** + * @param subscriberIdentity The AWS identity used to access your data. + * + * @return builder + * + */ + public Builder subscriberIdentity(SubscriberSubscriberIdentityArgs subscriberIdentity) { + return subscriberIdentity(Output.of(subscriberIdentity)); + } + + /** + * @param subscriberName The name of your Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberName(@Nullable Output subscriberName) { + $.subscriberName = subscriberName; + return this; + } + + /** + * @param subscriberName The name of your Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberName(String subscriberName) { + return subscriberName(Output.of(subscriberName)); + } + + /** + * @param 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. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param 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. + * + * @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(SubscriberTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + public SubscriberArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceArgs.java new file mode 100644 index 00000000000..1b6903e7a28 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceArgs.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.securitylake.inputs; + +import com.pulumi.aws.securitylake.inputs.SubscriberSourceAwsLogSourceResourceArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberSourceCustomLogSourceResourceArgs; +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 SubscriberSourceArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSourceArgs Empty = new SubscriberSourceArgs(); + + /** + * Amazon Security Lake supports log and event collection for natively supported AWS services. + * + */ + @Import(name="awsLogSourceResource") + private @Nullable Output awsLogSourceResource; + + /** + * @return Amazon Security Lake supports log and event collection for natively supported AWS services. + * + */ + public Optional> awsLogSourceResource() { + return Optional.ofNullable(this.awsLogSourceResource); + } + + /** + * Amazon Security Lake supports custom source types. + * + */ + @Import(name="customLogSourceResource") + private @Nullable Output customLogSourceResource; + + /** + * @return Amazon Security Lake supports custom source types. + * + */ + public Optional> customLogSourceResource() { + return Optional.ofNullable(this.customLogSourceResource); + } + + private SubscriberSourceArgs() {} + + private SubscriberSourceArgs(SubscriberSourceArgs $) { + this.awsLogSourceResource = $.awsLogSourceResource; + this.customLogSourceResource = $.customLogSourceResource; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSourceArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSourceArgs $; + + public Builder() { + $ = new SubscriberSourceArgs(); + } + + public Builder(SubscriberSourceArgs defaults) { + $ = new SubscriberSourceArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param awsLogSourceResource Amazon Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder awsLogSourceResource(@Nullable Output awsLogSourceResource) { + $.awsLogSourceResource = awsLogSourceResource; + return this; + } + + /** + * @param awsLogSourceResource Amazon Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder awsLogSourceResource(SubscriberSourceAwsLogSourceResourceArgs awsLogSourceResource) { + return awsLogSourceResource(Output.of(awsLogSourceResource)); + } + + /** + * @param customLogSourceResource Amazon Security Lake supports custom source types. + * + * @return builder + * + */ + public Builder customLogSourceResource(@Nullable Output customLogSourceResource) { + $.customLogSourceResource = customLogSourceResource; + return this; + } + + /** + * @param customLogSourceResource Amazon Security Lake supports custom source types. + * + * @return builder + * + */ + public Builder customLogSourceResource(SubscriberSourceCustomLogSourceResourceArgs customLogSourceResource) { + return customLogSourceResource(Output.of(customLogSourceResource)); + } + + public SubscriberSourceArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceAwsLogSourceResourceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceAwsLogSourceResourceArgs.java new file mode 100644 index 00000000000..ad00be19cd5 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceAwsLogSourceResourceArgs.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.securitylake.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 SubscriberSourceAwsLogSourceResourceArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSourceAwsLogSourceResourceArgs Empty = new SubscriberSourceAwsLogSourceResourceArgs(); + + /** + * The name for a third-party custom source. This must be a Regionally unique value. + * + */ + @Import(name="sourceName") + private @Nullable Output sourceName; + + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional> sourceName() { + return Optional.ofNullable(this.sourceName); + } + + /** + * The version for a third-party custom source. This must be a Regionally unique value. + * + */ + @Import(name="sourceVersion") + private @Nullable Output sourceVersion; + + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional> sourceVersion() { + return Optional.ofNullable(this.sourceVersion); + } + + private SubscriberSourceAwsLogSourceResourceArgs() {} + + private SubscriberSourceAwsLogSourceResourceArgs(SubscriberSourceAwsLogSourceResourceArgs $) { + this.sourceName = $.sourceName; + this.sourceVersion = $.sourceVersion; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSourceAwsLogSourceResourceArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSourceAwsLogSourceResourceArgs $; + + public Builder() { + $ = new SubscriberSourceAwsLogSourceResourceArgs(); + } + + public Builder(SubscriberSourceAwsLogSourceResourceArgs defaults) { + $ = new SubscriberSourceAwsLogSourceResourceArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param sourceName The name for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceName(@Nullable Output sourceName) { + $.sourceName = sourceName; + return this; + } + + /** + * @param sourceName The name for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceName(String sourceName) { + return sourceName(Output.of(sourceName)); + } + + /** + * @param sourceVersion The version for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceVersion(@Nullable Output sourceVersion) { + $.sourceVersion = sourceVersion; + return this; + } + + /** + * @param sourceVersion The version for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceVersion(String sourceVersion) { + return sourceVersion(Output.of(sourceVersion)); + } + + public SubscriberSourceAwsLogSourceResourceArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceArgs.java new file mode 100644 index 00000000000..0a5cd743f09 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceArgs.java @@ -0,0 +1,191 @@ +// *** 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.securitylake.inputs; + +import com.pulumi.aws.securitylake.inputs.SubscriberSourceCustomLogSourceResourceAttributeArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberSourceCustomLogSourceResourceProviderArgs; +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 SubscriberSourceCustomLogSourceResourceArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSourceCustomLogSourceResourceArgs Empty = new SubscriberSourceCustomLogSourceResourceArgs(); + + /** + * The attributes of a third-party custom source. + * + */ + @Import(name="attributes") + private @Nullable Output> attributes; + + /** + * @return The attributes of a third-party custom source. + * + */ + public Optional>> attributes() { + return Optional.ofNullable(this.attributes); + } + + @Import(name="providers") + private @Nullable Output> providers; + + public Optional>> providers() { + return Optional.ofNullable(this.providers); + } + + /** + * The name for a third-party custom source. This must be a Regionally unique value. + * + */ + @Import(name="sourceName") + private @Nullable Output sourceName; + + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional> sourceName() { + return Optional.ofNullable(this.sourceName); + } + + /** + * The version for a third-party custom source. This must be a Regionally unique value. + * + */ + @Import(name="sourceVersion") + private @Nullable Output sourceVersion; + + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional> sourceVersion() { + return Optional.ofNullable(this.sourceVersion); + } + + private SubscriberSourceCustomLogSourceResourceArgs() {} + + private SubscriberSourceCustomLogSourceResourceArgs(SubscriberSourceCustomLogSourceResourceArgs $) { + this.attributes = $.attributes; + this.providers = $.providers; + this.sourceName = $.sourceName; + this.sourceVersion = $.sourceVersion; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSourceCustomLogSourceResourceArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSourceCustomLogSourceResourceArgs $; + + public Builder() { + $ = new SubscriberSourceCustomLogSourceResourceArgs(); + } + + public Builder(SubscriberSourceCustomLogSourceResourceArgs defaults) { + $ = new SubscriberSourceCustomLogSourceResourceArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param attributes The attributes of a third-party custom source. + * + * @return builder + * + */ + public Builder attributes(@Nullable Output> attributes) { + $.attributes = attributes; + return this; + } + + /** + * @param attributes The attributes of a third-party custom source. + * + * @return builder + * + */ + public Builder attributes(List attributes) { + return attributes(Output.of(attributes)); + } + + /** + * @param attributes The attributes of a third-party custom source. + * + * @return builder + * + */ + public Builder attributes(SubscriberSourceCustomLogSourceResourceAttributeArgs... attributes) { + return attributes(List.of(attributes)); + } + + public Builder providers(@Nullable Output> providers) { + $.providers = providers; + return this; + } + + public Builder providers(List providers) { + return providers(Output.of(providers)); + } + + public Builder providers(SubscriberSourceCustomLogSourceResourceProviderArgs... providers) { + return providers(List.of(providers)); + } + + /** + * @param sourceName The name for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceName(@Nullable Output sourceName) { + $.sourceName = sourceName; + return this; + } + + /** + * @param sourceName The name for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceName(String sourceName) { + return sourceName(Output.of(sourceName)); + } + + /** + * @param sourceVersion The version for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceVersion(@Nullable Output sourceVersion) { + $.sourceVersion = sourceVersion; + return this; + } + + /** + * @param sourceVersion The version for a third-party custom source. This must be a Regionally unique value. + * + * @return builder + * + */ + public Builder sourceVersion(String sourceVersion) { + return sourceVersion(Output.of(sourceVersion)); + } + + public SubscriberSourceCustomLogSourceResourceArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.java new file mode 100644 index 00000000000..71a192a32da --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceAttributeArgs.java @@ -0,0 +1,165 @@ +// *** 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.securitylake.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 SubscriberSourceCustomLogSourceResourceAttributeArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSourceCustomLogSourceResourceAttributeArgs Empty = new SubscriberSourceCustomLogSourceResourceAttributeArgs(); + + /** + * The ARN of the AWS Glue crawler. + * + */ + @Import(name="crawlerArn", required=true) + private Output crawlerArn; + + /** + * @return The ARN of the AWS Glue crawler. + * + */ + public Output crawlerArn() { + return this.crawlerArn; + } + + /** + * The ARN of the AWS Glue database where results are written. + * + */ + @Import(name="databaseArn", required=true) + private Output databaseArn; + + /** + * @return The ARN of the AWS Glue database where results are written. + * + */ + public Output databaseArn() { + return this.databaseArn; + } + + /** + * The ARN of the AWS Glue table. + * + */ + @Import(name="tableArn", required=true) + private Output tableArn; + + /** + * @return The ARN of the AWS Glue table. + * + */ + public Output tableArn() { + return this.tableArn; + } + + private SubscriberSourceCustomLogSourceResourceAttributeArgs() {} + + private SubscriberSourceCustomLogSourceResourceAttributeArgs(SubscriberSourceCustomLogSourceResourceAttributeArgs $) { + this.crawlerArn = $.crawlerArn; + this.databaseArn = $.databaseArn; + this.tableArn = $.tableArn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSourceCustomLogSourceResourceAttributeArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSourceCustomLogSourceResourceAttributeArgs $; + + public Builder() { + $ = new SubscriberSourceCustomLogSourceResourceAttributeArgs(); + } + + public Builder(SubscriberSourceCustomLogSourceResourceAttributeArgs defaults) { + $ = new SubscriberSourceCustomLogSourceResourceAttributeArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param crawlerArn The ARN of the AWS Glue crawler. + * + * @return builder + * + */ + public Builder crawlerArn(Output crawlerArn) { + $.crawlerArn = crawlerArn; + return this; + } + + /** + * @param crawlerArn The ARN of the AWS Glue crawler. + * + * @return builder + * + */ + public Builder crawlerArn(String crawlerArn) { + return crawlerArn(Output.of(crawlerArn)); + } + + /** + * @param databaseArn The ARN of the AWS Glue database where results are written. + * + * @return builder + * + */ + public Builder databaseArn(Output databaseArn) { + $.databaseArn = databaseArn; + return this; + } + + /** + * @param databaseArn The ARN of the AWS Glue database where results are written. + * + * @return builder + * + */ + public Builder databaseArn(String databaseArn) { + return databaseArn(Output.of(databaseArn)); + } + + /** + * @param tableArn The ARN of the AWS Glue table. + * + * @return builder + * + */ + public Builder tableArn(Output tableArn) { + $.tableArn = tableArn; + return this; + } + + /** + * @param tableArn The ARN of the AWS Glue table. + * + * @return builder + * + */ + public Builder tableArn(String tableArn) { + return tableArn(Output.of(tableArn)); + } + + public SubscriberSourceCustomLogSourceResourceAttributeArgs build() { + if ($.crawlerArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttributeArgs", "crawlerArn"); + } + if ($.databaseArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttributeArgs", "databaseArn"); + } + if ($.tableArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttributeArgs", "tableArn"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.java new file mode 100644 index 00000000000..26bee735094 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSourceCustomLogSourceResourceProviderArgs.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.securitylake.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 SubscriberSourceCustomLogSourceResourceProviderArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSourceCustomLogSourceResourceProviderArgs Empty = new SubscriberSourceCustomLogSourceResourceProviderArgs(); + + /** + * The location of the partition in the Amazon S3 bucket for Security Lake. + * + */ + @Import(name="location", required=true) + private Output location; + + /** + * @return The location of the partition in the Amazon S3 bucket for Security Lake. + * + */ + public Output location() { + return this.location; + } + + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + @Import(name="roleArn", required=true) + private Output roleArn; + + /** + * @return The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + public Output roleArn() { + return this.roleArn; + } + + private SubscriberSourceCustomLogSourceResourceProviderArgs() {} + + private SubscriberSourceCustomLogSourceResourceProviderArgs(SubscriberSourceCustomLogSourceResourceProviderArgs $) { + this.location = $.location; + this.roleArn = $.roleArn; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSourceCustomLogSourceResourceProviderArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSourceCustomLogSourceResourceProviderArgs $; + + public Builder() { + $ = new SubscriberSourceCustomLogSourceResourceProviderArgs(); + } + + public Builder(SubscriberSourceCustomLogSourceResourceProviderArgs defaults) { + $ = new SubscriberSourceCustomLogSourceResourceProviderArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param location The location of the partition in the Amazon S3 bucket for Security Lake. + * + * @return builder + * + */ + public Builder location(Output location) { + $.location = location; + return this; + } + + /** + * @param location The location of the partition in the Amazon S3 bucket for Security Lake. + * + * @return builder + * + */ + public Builder location(String location) { + return location(Output.of(location)); + } + + /** + * @param roleArn The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + * @return builder + * + */ + public Builder roleArn(Output roleArn) { + $.roleArn = roleArn; + return this; + } + + /** + * @param roleArn The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + * @return builder + * + */ + public Builder roleArn(String roleArn) { + return roleArn(Output.of(roleArn)); + } + + public SubscriberSourceCustomLogSourceResourceProviderArgs build() { + if ($.location == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceProviderArgs", "location"); + } + if ($.roleArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceProviderArgs", "roleArn"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberState.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberState.java new file mode 100644 index 00000000000..71679ea0f08 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberState.java @@ -0,0 +1,581 @@ +// *** 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.securitylake.inputs; + +import com.pulumi.aws.securitylake.inputs.SubscriberSourceArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberSubscriberIdentityArgs; +import com.pulumi.aws.securitylake.inputs.SubscriberTimeoutsArgs; +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 SubscriberState extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberState Empty = new SubscriberState(); + + @Import(name="accessType") + private @Nullable Output accessType; + + public Optional> accessType() { + return Optional.ofNullable(this.accessType); + } + + /** + * ARN of the Data Lake. + * + */ + @Import(name="arn") + private @Nullable Output arn; + + /** + * @return ARN of the Data Lake. + * + */ + public Optional> arn() { + return Optional.ofNullable(this.arn); + } + + /** + * The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + */ + @Import(name="resourceShareArn") + private @Nullable Output resourceShareArn; + + /** + * @return The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + */ + public Optional> resourceShareArn() { + return Optional.ofNullable(this.resourceShareArn); + } + + /** + * The name of the resource share. + * + */ + @Import(name="resourceShareName") + private @Nullable Output resourceShareName; + + /** + * @return The name of the resource share. + * + */ + public Optional> resourceShareName() { + return Optional.ofNullable(this.resourceShareName); + } + + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + @Import(name="roleArn") + private @Nullable Output roleArn; + + /** + * @return The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + public Optional> roleArn() { + return Optional.ofNullable(this.roleArn); + } + + /** + * The ARN for the Amazon Security Lake Amazon S3 bucket. + * + */ + @Import(name="s3BucketArn") + private @Nullable Output s3BucketArn; + + /** + * @return The ARN for the Amazon Security Lake Amazon S3 bucket. + * + */ + public Optional> s3BucketArn() { + return Optional.ofNullable(this.s3BucketArn); + } + + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + @Import(name="source") + private @Nullable Output source; + + /** + * @return The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + */ + public Optional> source() { + return Optional.ofNullable(this.source); + } + + /** + * The description for your subscriber account in Security Lake. + * + */ + @Import(name="subscriberDescription") + private @Nullable Output subscriberDescription; + + /** + * @return The description for your subscriber account in Security Lake. + * + */ + public Optional> subscriberDescription() { + return Optional.ofNullable(this.subscriberDescription); + } + + /** + * The subscriber endpoint to which exception messages are posted. + * + */ + @Import(name="subscriberEndpoint") + private @Nullable Output subscriberEndpoint; + + /** + * @return The subscriber endpoint to which exception messages are posted. + * + */ + public Optional> subscriberEndpoint() { + return Optional.ofNullable(this.subscriberEndpoint); + } + + /** + * The AWS identity used to access your data. + * + */ + @Import(name="subscriberIdentity") + private @Nullable Output subscriberIdentity; + + /** + * @return The AWS identity used to access your data. + * + */ + public Optional> subscriberIdentity() { + return Optional.ofNullable(this.subscriberIdentity); + } + + /** + * The name of your Security Lake subscriber account. + * + */ + @Import(name="subscriberName") + private @Nullable Output subscriberName; + + /** + * @return The name of your Security Lake subscriber account. + * + */ + public Optional> subscriberName() { + return Optional.ofNullable(this.subscriberName); + } + + /** + * The subscriber status of the Amazon Security Lake subscriber account. + * + */ + @Import(name="subscriberStatus") + private @Nullable Output subscriberStatus; + + /** + * @return The subscriber status of the Amazon Security Lake subscriber account. + * + */ + public Optional> subscriberStatus() { + return Optional.ofNullable(this.subscriberStatus); + } + + /** + * 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. + * + */ + @Import(name="tags") + private @Nullable Output> tags; + + /** + * @return 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. + * + */ + 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); + } + + @Import(name="timeouts") + private @Nullable Output timeouts; + + public Optional> timeouts() { + return Optional.ofNullable(this.timeouts); + } + + private SubscriberState() {} + + private SubscriberState(SubscriberState $) { + this.accessType = $.accessType; + this.arn = $.arn; + this.resourceShareArn = $.resourceShareArn; + this.resourceShareName = $.resourceShareName; + this.roleArn = $.roleArn; + this.s3BucketArn = $.s3BucketArn; + this.source = $.source; + this.subscriberDescription = $.subscriberDescription; + this.subscriberEndpoint = $.subscriberEndpoint; + this.subscriberIdentity = $.subscriberIdentity; + this.subscriberName = $.subscriberName; + this.subscriberStatus = $.subscriberStatus; + this.tags = $.tags; + this.tagsAll = $.tagsAll; + this.timeouts = $.timeouts; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberState defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberState $; + + public Builder() { + $ = new SubscriberState(); + } + + public Builder(SubscriberState defaults) { + $ = new SubscriberState(Objects.requireNonNull(defaults)); + } + + public Builder accessType(@Nullable Output accessType) { + $.accessType = accessType; + return this; + } + + public Builder accessType(String accessType) { + return accessType(Output.of(accessType)); + } + + /** + * @param arn ARN of the Data Lake. + * + * @return builder + * + */ + public Builder arn(@Nullable Output arn) { + $.arn = arn; + return this; + } + + /** + * @param arn ARN of the Data Lake. + * + * @return builder + * + */ + public Builder arn(String arn) { + return arn(Output.of(arn)); + } + + /** + * @param resourceShareArn The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + * @return builder + * + */ + public Builder resourceShareArn(@Nullable Output resourceShareArn) { + $.resourceShareArn = resourceShareArn; + return this; + } + + /** + * @param resourceShareArn The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + * + * @return builder + * + */ + public Builder resourceShareArn(String resourceShareArn) { + return resourceShareArn(Output.of(resourceShareArn)); + } + + /** + * @param resourceShareName The name of the resource share. + * + * @return builder + * + */ + public Builder resourceShareName(@Nullable Output resourceShareName) { + $.resourceShareName = resourceShareName; + return this; + } + + /** + * @param resourceShareName The name of the resource share. + * + * @return builder + * + */ + public Builder resourceShareName(String resourceShareName) { + return resourceShareName(Output.of(resourceShareName)); + } + + /** + * @param roleArn The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + * @return builder + * + */ + public Builder roleArn(@Nullable Output roleArn) { + $.roleArn = roleArn; + return this; + } + + /** + * @param roleArn The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + * @return builder + * + */ + public Builder roleArn(String roleArn) { + return roleArn(Output.of(roleArn)); + } + + /** + * @param s3BucketArn The ARN for the Amazon Security Lake Amazon S3 bucket. + * + * @return builder + * + */ + public Builder s3BucketArn(@Nullable Output s3BucketArn) { + $.s3BucketArn = s3BucketArn; + return this; + } + + /** + * @param s3BucketArn The ARN for the Amazon Security Lake Amazon S3 bucket. + * + * @return builder + * + */ + public Builder s3BucketArn(String s3BucketArn) { + return s3BucketArn(Output.of(s3BucketArn)); + } + + /** + * @param source The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder source(@Nullable Output source) { + $.source = source; + return this; + } + + /** + * @param source The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + * + * @return builder + * + */ + public Builder source(SubscriberSourceArgs source) { + return source(Output.of(source)); + } + + /** + * @param subscriberDescription The description for your subscriber account in Security Lake. + * + * @return builder + * + */ + public Builder subscriberDescription(@Nullable Output subscriberDescription) { + $.subscriberDescription = subscriberDescription; + return this; + } + + /** + * @param subscriberDescription The description for your subscriber account in Security Lake. + * + * @return builder + * + */ + public Builder subscriberDescription(String subscriberDescription) { + return subscriberDescription(Output.of(subscriberDescription)); + } + + /** + * @param subscriberEndpoint The subscriber endpoint to which exception messages are posted. + * + * @return builder + * + */ + public Builder subscriberEndpoint(@Nullable Output subscriberEndpoint) { + $.subscriberEndpoint = subscriberEndpoint; + return this; + } + + /** + * @param subscriberEndpoint The subscriber endpoint to which exception messages are posted. + * + * @return builder + * + */ + public Builder subscriberEndpoint(String subscriberEndpoint) { + return subscriberEndpoint(Output.of(subscriberEndpoint)); + } + + /** + * @param subscriberIdentity The AWS identity used to access your data. + * + * @return builder + * + */ + public Builder subscriberIdentity(@Nullable Output subscriberIdentity) { + $.subscriberIdentity = subscriberIdentity; + return this; + } + + /** + * @param subscriberIdentity The AWS identity used to access your data. + * + * @return builder + * + */ + public Builder subscriberIdentity(SubscriberSubscriberIdentityArgs subscriberIdentity) { + return subscriberIdentity(Output.of(subscriberIdentity)); + } + + /** + * @param subscriberName The name of your Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberName(@Nullable Output subscriberName) { + $.subscriberName = subscriberName; + return this; + } + + /** + * @param subscriberName The name of your Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberName(String subscriberName) { + return subscriberName(Output.of(subscriberName)); + } + + /** + * @param subscriberStatus The subscriber status of the Amazon Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberStatus(@Nullable Output subscriberStatus) { + $.subscriberStatus = subscriberStatus; + return this; + } + + /** + * @param subscriberStatus The subscriber status of the Amazon Security Lake subscriber account. + * + * @return builder + * + */ + public Builder subscriberStatus(String subscriberStatus) { + return subscriberStatus(Output.of(subscriberStatus)); + } + + /** + * @param 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. + * + * @return builder + * + */ + public Builder tags(@Nullable Output> tags) { + $.tags = tags; + return this; + } + + /** + * @param 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. + * + * @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 Builder timeouts(@Nullable Output timeouts) { + $.timeouts = timeouts; + return this; + } + + public Builder timeouts(SubscriberTimeoutsArgs timeouts) { + return timeouts(Output.of(timeouts)); + } + + public SubscriberState build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSubscriberIdentityArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSubscriberIdentityArgs.java new file mode 100644 index 00000000000..45b52fd6883 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberSubscriberIdentityArgs.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.securitylake.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 SubscriberSubscriberIdentityArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberSubscriberIdentityArgs Empty = new SubscriberSubscriberIdentityArgs(); + + /** + * The AWS Regions where Security Lake is automatically enabled. + * + */ + @Import(name="externalId", required=true) + private Output externalId; + + /** + * @return The AWS Regions where Security Lake is automatically enabled. + * + */ + public Output externalId() { + return this.externalId; + } + + /** + * Provides encryption details of Amazon Security Lake object. + * + */ + @Import(name="principal", required=true) + private Output principal; + + /** + * @return Provides encryption details of Amazon Security Lake object. + * + */ + public Output principal() { + return this.principal; + } + + private SubscriberSubscriberIdentityArgs() {} + + private SubscriberSubscriberIdentityArgs(SubscriberSubscriberIdentityArgs $) { + this.externalId = $.externalId; + this.principal = $.principal; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberSubscriberIdentityArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberSubscriberIdentityArgs $; + + public Builder() { + $ = new SubscriberSubscriberIdentityArgs(); + } + + public Builder(SubscriberSubscriberIdentityArgs defaults) { + $ = new SubscriberSubscriberIdentityArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param externalId The AWS Regions where Security Lake is automatically enabled. + * + * @return builder + * + */ + public Builder externalId(Output externalId) { + $.externalId = externalId; + return this; + } + + /** + * @param externalId The AWS Regions where Security Lake is automatically enabled. + * + * @return builder + * + */ + public Builder externalId(String externalId) { + return externalId(Output.of(externalId)); + } + + /** + * @param principal Provides encryption details of Amazon Security Lake object. + * + * @return builder + * + */ + public Builder principal(Output principal) { + $.principal = principal; + return this; + } + + /** + * @param principal Provides encryption details of Amazon Security Lake object. + * + * @return builder + * + */ + public Builder principal(String principal) { + return principal(Output.of(principal)); + } + + public SubscriberSubscriberIdentityArgs build() { + if ($.externalId == null) { + throw new MissingRequiredPropertyException("SubscriberSubscriberIdentityArgs", "externalId"); + } + if ($.principal == null) { + throw new MissingRequiredPropertyException("SubscriberSubscriberIdentityArgs", "principal"); + } + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberTimeoutsArgs.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberTimeoutsArgs.java new file mode 100644 index 00000000000..141f302cc8f --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/inputs/SubscriberTimeoutsArgs.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.securitylake.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 SubscriberTimeoutsArgs extends com.pulumi.resources.ResourceArgs { + + public static final SubscriberTimeoutsArgs Empty = new SubscriberTimeoutsArgs(); + + /** + * 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 SubscriberTimeoutsArgs() {} + + private SubscriberTimeoutsArgs(SubscriberTimeoutsArgs $) { + this.create = $.create; + this.delete = $.delete; + this.update = $.update; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(SubscriberTimeoutsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private SubscriberTimeoutsArgs $; + + public Builder() { + $ = new SubscriberTimeoutsArgs(); + } + + public Builder(SubscriberTimeoutsArgs defaults) { + $ = new SubscriberTimeoutsArgs(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 SubscriberTimeoutsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSource.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSource.java new file mode 100644 index 00000000000..57a5a5d1ae0 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSource.java @@ -0,0 +1,79 @@ +// *** 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.securitylake.outputs; + +import com.pulumi.aws.securitylake.outputs.SubscriberSourceAwsLogSourceResource; +import com.pulumi.aws.securitylake.outputs.SubscriberSourceCustomLogSourceResource; +import com.pulumi.core.annotations.CustomType; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class SubscriberSource { + /** + * @return Amazon Security Lake supports log and event collection for natively supported AWS services. + * + */ + private @Nullable SubscriberSourceAwsLogSourceResource awsLogSourceResource; + /** + * @return Amazon Security Lake supports custom source types. + * + */ + private @Nullable SubscriberSourceCustomLogSourceResource customLogSourceResource; + + private SubscriberSource() {} + /** + * @return Amazon Security Lake supports log and event collection for natively supported AWS services. + * + */ + public Optional awsLogSourceResource() { + return Optional.ofNullable(this.awsLogSourceResource); + } + /** + * @return Amazon Security Lake supports custom source types. + * + */ + public Optional customLogSourceResource() { + return Optional.ofNullable(this.customLogSourceResource); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSource defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable SubscriberSourceAwsLogSourceResource awsLogSourceResource; + private @Nullable SubscriberSourceCustomLogSourceResource customLogSourceResource; + public Builder() {} + public Builder(SubscriberSource defaults) { + Objects.requireNonNull(defaults); + this.awsLogSourceResource = defaults.awsLogSourceResource; + this.customLogSourceResource = defaults.customLogSourceResource; + } + + @CustomType.Setter + public Builder awsLogSourceResource(@Nullable SubscriberSourceAwsLogSourceResource awsLogSourceResource) { + + this.awsLogSourceResource = awsLogSourceResource; + return this; + } + @CustomType.Setter + public Builder customLogSourceResource(@Nullable SubscriberSourceCustomLogSourceResource customLogSourceResource) { + + this.customLogSourceResource = customLogSourceResource; + return this; + } + public SubscriberSource build() { + final var _resultValue = new SubscriberSource(); + _resultValue.awsLogSourceResource = awsLogSourceResource; + _resultValue.customLogSourceResource = customLogSourceResource; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceAwsLogSourceResource.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceAwsLogSourceResource.java new file mode 100644 index 00000000000..0f0aa40fdfd --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceAwsLogSourceResource.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.securitylake.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 SubscriberSourceAwsLogSourceResource { + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + private @Nullable String sourceName; + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + private @Nullable String sourceVersion; + + private SubscriberSourceAwsLogSourceResource() {} + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional sourceName() { + return Optional.ofNullable(this.sourceName); + } + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional sourceVersion() { + return Optional.ofNullable(this.sourceVersion); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSourceAwsLogSourceResource defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String sourceName; + private @Nullable String sourceVersion; + public Builder() {} + public Builder(SubscriberSourceAwsLogSourceResource defaults) { + Objects.requireNonNull(defaults); + this.sourceName = defaults.sourceName; + this.sourceVersion = defaults.sourceVersion; + } + + @CustomType.Setter + public Builder sourceName(@Nullable String sourceName) { + + this.sourceName = sourceName; + return this; + } + @CustomType.Setter + public Builder sourceVersion(@Nullable String sourceVersion) { + + this.sourceVersion = sourceVersion; + return this; + } + public SubscriberSourceAwsLogSourceResource build() { + final var _resultValue = new SubscriberSourceAwsLogSourceResource(); + _resultValue.sourceName = sourceName; + _resultValue.sourceVersion = sourceVersion; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResource.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResource.java new file mode 100644 index 00000000000..47b3c68501d --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResource.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.securitylake.outputs; + +import com.pulumi.aws.securitylake.outputs.SubscriberSourceCustomLogSourceResourceAttribute; +import com.pulumi.aws.securitylake.outputs.SubscriberSourceCustomLogSourceResourceProvider; +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.List; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class SubscriberSourceCustomLogSourceResource { + /** + * @return The attributes of a third-party custom source. + * + */ + private @Nullable List attributes; + private @Nullable List providers; + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + private @Nullable String sourceName; + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + private @Nullable String sourceVersion; + + private SubscriberSourceCustomLogSourceResource() {} + /** + * @return The attributes of a third-party custom source. + * + */ + public List attributes() { + return this.attributes == null ? List.of() : this.attributes; + } + public List providers() { + return this.providers == null ? List.of() : this.providers; + } + /** + * @return The name for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional sourceName() { + return Optional.ofNullable(this.sourceName); + } + /** + * @return The version for a third-party custom source. This must be a Regionally unique value. + * + */ + public Optional sourceVersion() { + return Optional.ofNullable(this.sourceVersion); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSourceCustomLogSourceResource defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable List attributes; + private @Nullable List providers; + private @Nullable String sourceName; + private @Nullable String sourceVersion; + public Builder() {} + public Builder(SubscriberSourceCustomLogSourceResource defaults) { + Objects.requireNonNull(defaults); + this.attributes = defaults.attributes; + this.providers = defaults.providers; + this.sourceName = defaults.sourceName; + this.sourceVersion = defaults.sourceVersion; + } + + @CustomType.Setter + public Builder attributes(@Nullable List attributes) { + + this.attributes = attributes; + return this; + } + public Builder attributes(SubscriberSourceCustomLogSourceResourceAttribute... attributes) { + return attributes(List.of(attributes)); + } + @CustomType.Setter + public Builder providers(@Nullable List providers) { + + this.providers = providers; + return this; + } + public Builder providers(SubscriberSourceCustomLogSourceResourceProvider... providers) { + return providers(List.of(providers)); + } + @CustomType.Setter + public Builder sourceName(@Nullable String sourceName) { + + this.sourceName = sourceName; + return this; + } + @CustomType.Setter + public Builder sourceVersion(@Nullable String sourceVersion) { + + this.sourceVersion = sourceVersion; + return this; + } + public SubscriberSourceCustomLogSourceResource build() { + final var _resultValue = new SubscriberSourceCustomLogSourceResource(); + _resultValue.attributes = attributes; + _resultValue.providers = providers; + _resultValue.sourceName = sourceName; + _resultValue.sourceVersion = sourceVersion; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceAttribute.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceAttribute.java new file mode 100644 index 00000000000..6e0331b8da2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceAttribute.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.securitylake.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class SubscriberSourceCustomLogSourceResourceAttribute { + /** + * @return The ARN of the AWS Glue crawler. + * + */ + private String crawlerArn; + /** + * @return The ARN of the AWS Glue database where results are written. + * + */ + private String databaseArn; + /** + * @return The ARN of the AWS Glue table. + * + */ + private String tableArn; + + private SubscriberSourceCustomLogSourceResourceAttribute() {} + /** + * @return The ARN of the AWS Glue crawler. + * + */ + public String crawlerArn() { + return this.crawlerArn; + } + /** + * @return The ARN of the AWS Glue database where results are written. + * + */ + public String databaseArn() { + return this.databaseArn; + } + /** + * @return The ARN of the AWS Glue table. + * + */ + public String tableArn() { + return this.tableArn; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSourceCustomLogSourceResourceAttribute defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String crawlerArn; + private String databaseArn; + private String tableArn; + public Builder() {} + public Builder(SubscriberSourceCustomLogSourceResourceAttribute defaults) { + Objects.requireNonNull(defaults); + this.crawlerArn = defaults.crawlerArn; + this.databaseArn = defaults.databaseArn; + this.tableArn = defaults.tableArn; + } + + @CustomType.Setter + public Builder crawlerArn(String crawlerArn) { + if (crawlerArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttribute", "crawlerArn"); + } + this.crawlerArn = crawlerArn; + return this; + } + @CustomType.Setter + public Builder databaseArn(String databaseArn) { + if (databaseArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttribute", "databaseArn"); + } + this.databaseArn = databaseArn; + return this; + } + @CustomType.Setter + public Builder tableArn(String tableArn) { + if (tableArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceAttribute", "tableArn"); + } + this.tableArn = tableArn; + return this; + } + public SubscriberSourceCustomLogSourceResourceAttribute build() { + final var _resultValue = new SubscriberSourceCustomLogSourceResourceAttribute(); + _resultValue.crawlerArn = crawlerArn; + _resultValue.databaseArn = databaseArn; + _resultValue.tableArn = tableArn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceProvider.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceProvider.java new file mode 100644 index 00000000000..d2fa821265b --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSourceCustomLogSourceResourceProvider.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.securitylake.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class SubscriberSourceCustomLogSourceResourceProvider { + /** + * @return The location of the partition in the Amazon S3 bucket for Security Lake. + * + */ + private String location; + /** + * @return The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + private String roleArn; + + private SubscriberSourceCustomLogSourceResourceProvider() {} + /** + * @return The location of the partition in the Amazon S3 bucket for Security Lake. + * + */ + public String location() { + return this.location; + } + /** + * @return The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + * + */ + public String roleArn() { + return this.roleArn; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSourceCustomLogSourceResourceProvider defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String location; + private String roleArn; + public Builder() {} + public Builder(SubscriberSourceCustomLogSourceResourceProvider defaults) { + Objects.requireNonNull(defaults); + this.location = defaults.location; + this.roleArn = defaults.roleArn; + } + + @CustomType.Setter + public Builder location(String location) { + if (location == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceProvider", "location"); + } + this.location = location; + return this; + } + @CustomType.Setter + public Builder roleArn(String roleArn) { + if (roleArn == null) { + throw new MissingRequiredPropertyException("SubscriberSourceCustomLogSourceResourceProvider", "roleArn"); + } + this.roleArn = roleArn; + return this; + } + public SubscriberSourceCustomLogSourceResourceProvider build() { + final var _resultValue = new SubscriberSourceCustomLogSourceResourceProvider(); + _resultValue.location = location; + _resultValue.roleArn = roleArn; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSubscriberIdentity.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSubscriberIdentity.java new file mode 100644 index 00000000000..e105169c819 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberSubscriberIdentity.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.securitylake.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; +import java.lang.String; +import java.util.Objects; + +@CustomType +public final class SubscriberSubscriberIdentity { + /** + * @return The AWS Regions where Security Lake is automatically enabled. + * + */ + private String externalId; + /** + * @return Provides encryption details of Amazon Security Lake object. + * + */ + private String principal; + + private SubscriberSubscriberIdentity() {} + /** + * @return The AWS Regions where Security Lake is automatically enabled. + * + */ + public String externalId() { + return this.externalId; + } + /** + * @return Provides encryption details of Amazon Security Lake object. + * + */ + public String principal() { + return this.principal; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(SubscriberSubscriberIdentity defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private String externalId; + private String principal; + public Builder() {} + public Builder(SubscriberSubscriberIdentity defaults) { + Objects.requireNonNull(defaults); + this.externalId = defaults.externalId; + this.principal = defaults.principal; + } + + @CustomType.Setter + public Builder externalId(String externalId) { + if (externalId == null) { + throw new MissingRequiredPropertyException("SubscriberSubscriberIdentity", "externalId"); + } + this.externalId = externalId; + return this; + } + @CustomType.Setter + public Builder principal(String principal) { + if (principal == null) { + throw new MissingRequiredPropertyException("SubscriberSubscriberIdentity", "principal"); + } + this.principal = principal; + return this; + } + public SubscriberSubscriberIdentity build() { + final var _resultValue = new SubscriberSubscriberIdentity(); + _resultValue.externalId = externalId; + _resultValue.principal = principal; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberTimeouts.java b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberTimeouts.java new file mode 100644 index 00000000000..b91092a6eb2 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/aws/securitylake/outputs/SubscriberTimeouts.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.securitylake.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 SubscriberTimeouts { + /** + * @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 SubscriberTimeouts() {} + /** + * @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(SubscriberTimeouts 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(SubscriberTimeouts 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 SubscriberTimeouts build() { + final var _resultValue = new SubscriberTimeouts(); + _resultValue.create = create; + _resultValue.delete = delete; + _resultValue.update = update; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/RuleGroupRuleStatementRateBasedStatementArgs.java b/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/RuleGroupRuleStatementRateBasedStatementArgs.java index 72849c67c7d..469c715f5f5 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/RuleGroupRuleStatementRateBasedStatementArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/RuleGroupRuleStatementRateBasedStatementArgs.java @@ -51,6 +51,25 @@ public Optional evaluationWindowSec; + + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + public Optional> evaluationWindowSec() { + return Optional.ofNullable(this.evaluationWindowSec); + } + /** * The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. * @@ -101,6 +120,7 @@ private RuleGroupRuleStatementRateBasedStatementArgs() {} private RuleGroupRuleStatementRateBasedStatementArgs(RuleGroupRuleStatementRateBasedStatementArgs $) { this.aggregateKeyType = $.aggregateKeyType; this.customKeys = $.customKeys; + this.evaluationWindowSec = $.evaluationWindowSec; this.forwardedIpConfig = $.forwardedIpConfig; this.limit = $.limit; this.scopeDownStatement = $.scopeDownStatement; @@ -176,6 +196,31 @@ public Builder customKeys(RuleGroupRuleStatementRateBasedStatementCustomKeyArgs. return customKeys(List.of(customKeys)); } + /** + * @param evaluationWindowSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + * @return builder + * + */ + public Builder evaluationWindowSec(@Nullable Output evaluationWindowSec) { + $.evaluationWindowSec = evaluationWindowSec; + return this; + } + + /** + * @param evaluationWindowSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + * @return builder + * + */ + public Builder evaluationWindowSec(Integer evaluationWindowSec) { + return evaluationWindowSec(Output.of(evaluationWindowSec)); + } + /** * @param forwardedIpConfig The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/WebAclRuleStatementRateBasedStatementArgs.java b/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/WebAclRuleStatementRateBasedStatementArgs.java index 6315965af11..920b609d2f5 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/WebAclRuleStatementRateBasedStatementArgs.java +++ b/sdk/java/src/main/java/com/pulumi/aws/wafv2/inputs/WebAclRuleStatementRateBasedStatementArgs.java @@ -51,6 +51,25 @@ public Optional> return Optional.ofNullable(this.customKeys); } + /** + * The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + @Import(name="evaluationWindowSec") + private @Nullable Output evaluationWindowSec; + + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + public Optional> evaluationWindowSec() { + return Optional.ofNullable(this.evaluationWindowSec); + } + /** * Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. * @@ -101,6 +120,7 @@ private WebAclRuleStatementRateBasedStatementArgs() {} private WebAclRuleStatementRateBasedStatementArgs(WebAclRuleStatementRateBasedStatementArgs $) { this.aggregateKeyType = $.aggregateKeyType; this.customKeys = $.customKeys; + this.evaluationWindowSec = $.evaluationWindowSec; this.forwardedIpConfig = $.forwardedIpConfig; this.limit = $.limit; this.scopeDownStatement = $.scopeDownStatement; @@ -176,6 +196,31 @@ public Builder customKeys(WebAclRuleStatementRateBasedStatementCustomKeyArgs... return customKeys(List.of(customKeys)); } + /** + * @param evaluationWindowSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + * @return builder + * + */ + public Builder evaluationWindowSec(@Nullable Output evaluationWindowSec) { + $.evaluationWindowSec = evaluationWindowSec; + return this; + } + + /** + * @param evaluationWindowSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + * @return builder + * + */ + public Builder evaluationWindowSec(Integer evaluationWindowSec) { + return evaluationWindowSec(Output.of(evaluationWindowSec)); + } + /** * @param forwardedIpConfig Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. * diff --git a/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/RuleGroupRuleStatementRateBasedStatement.java b/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/RuleGroupRuleStatementRateBasedStatement.java index 0b7a240c25a..eee37d3cd57 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/RuleGroupRuleStatementRateBasedStatement.java +++ b/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/RuleGroupRuleStatementRateBasedStatement.java @@ -27,6 +27,13 @@ public final class RuleGroupRuleStatementRateBasedStatement { * */ private @Nullable List customKeys; + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + private @Nullable Integer evaluationWindowSec; /** * @return The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. * @@ -58,6 +65,15 @@ public Optional aggregateKeyType() { public List customKeys() { return this.customKeys == null ? List.of() : this.customKeys; } + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + public Optional evaluationWindowSec() { + return Optional.ofNullable(this.evaluationWindowSec); + } /** * @return The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. * @@ -91,6 +107,7 @@ public static Builder builder(RuleGroupRuleStatementRateBasedStatement defaults) public static final class Builder { private @Nullable String aggregateKeyType; private @Nullable List customKeys; + private @Nullable Integer evaluationWindowSec; private @Nullable RuleGroupRuleStatementRateBasedStatementForwardedIpConfig forwardedIpConfig; private Integer limit; private @Nullable RuleGroupRuleStatementRateBasedStatementScopeDownStatement scopeDownStatement; @@ -99,6 +116,7 @@ public Builder(RuleGroupRuleStatementRateBasedStatement defaults) { Objects.requireNonNull(defaults); this.aggregateKeyType = defaults.aggregateKeyType; this.customKeys = defaults.customKeys; + this.evaluationWindowSec = defaults.evaluationWindowSec; this.forwardedIpConfig = defaults.forwardedIpConfig; this.limit = defaults.limit; this.scopeDownStatement = defaults.scopeDownStatement; @@ -120,6 +138,12 @@ public Builder customKeys(RuleGroupRuleStatementRateBasedStatementCustomKey... c return customKeys(List.of(customKeys)); } @CustomType.Setter + public Builder evaluationWindowSec(@Nullable Integer evaluationWindowSec) { + + this.evaluationWindowSec = evaluationWindowSec; + return this; + } + @CustomType.Setter public Builder forwardedIpConfig(@Nullable RuleGroupRuleStatementRateBasedStatementForwardedIpConfig forwardedIpConfig) { this.forwardedIpConfig = forwardedIpConfig; @@ -143,6 +167,7 @@ public RuleGroupRuleStatementRateBasedStatement build() { final var _resultValue = new RuleGroupRuleStatementRateBasedStatement(); _resultValue.aggregateKeyType = aggregateKeyType; _resultValue.customKeys = customKeys; + _resultValue.evaluationWindowSec = evaluationWindowSec; _resultValue.forwardedIpConfig = forwardedIpConfig; _resultValue.limit = limit; _resultValue.scopeDownStatement = scopeDownStatement; diff --git a/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/WebAclRuleStatementRateBasedStatement.java b/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/WebAclRuleStatementRateBasedStatement.java index 5da27c8db10..cda386dcba4 100644 --- a/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/WebAclRuleStatementRateBasedStatement.java +++ b/sdk/java/src/main/java/com/pulumi/aws/wafv2/outputs/WebAclRuleStatementRateBasedStatement.java @@ -27,6 +27,13 @@ public final class WebAclRuleStatementRateBasedStatement { * */ private @Nullable List customKeys; + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + private @Nullable Integer evaluationWindowSec; /** * @return Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. * @@ -58,6 +65,15 @@ public Optional aggregateKeyType() { public List customKeys() { return this.customKeys == null ? List.of() : this.customKeys; } + /** + * @return The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + * + */ + public Optional evaluationWindowSec() { + return Optional.ofNullable(this.evaluationWindowSec); + } /** * @return Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. * @@ -91,6 +107,7 @@ public static Builder builder(WebAclRuleStatementRateBasedStatement defaults) { public static final class Builder { private @Nullable String aggregateKeyType; private @Nullable List customKeys; + private @Nullable Integer evaluationWindowSec; private @Nullable WebAclRuleStatementRateBasedStatementForwardedIpConfig forwardedIpConfig; private Integer limit; private @Nullable WebAclRuleStatementRateBasedStatementScopeDownStatement scopeDownStatement; @@ -99,6 +116,7 @@ public Builder(WebAclRuleStatementRateBasedStatement defaults) { Objects.requireNonNull(defaults); this.aggregateKeyType = defaults.aggregateKeyType; this.customKeys = defaults.customKeys; + this.evaluationWindowSec = defaults.evaluationWindowSec; this.forwardedIpConfig = defaults.forwardedIpConfig; this.limit = defaults.limit; this.scopeDownStatement = defaults.scopeDownStatement; @@ -120,6 +138,12 @@ public Builder customKeys(WebAclRuleStatementRateBasedStatementCustomKey... cust return customKeys(List.of(customKeys)); } @CustomType.Setter + public Builder evaluationWindowSec(@Nullable Integer evaluationWindowSec) { + + this.evaluationWindowSec = evaluationWindowSec; + return this; + } + @CustomType.Setter public Builder forwardedIpConfig(@Nullable WebAclRuleStatementRateBasedStatementForwardedIpConfig forwardedIpConfig) { this.forwardedIpConfig = forwardedIpConfig; @@ -143,6 +167,7 @@ public WebAclRuleStatementRateBasedStatement build() { final var _resultValue = new WebAclRuleStatementRateBasedStatement(); _resultValue.aggregateKeyType = aggregateKeyType; _resultValue.customKeys = customKeys; + _resultValue.evaluationWindowSec = evaluationWindowSec; _resultValue.forwardedIpConfig = forwardedIpConfig; _resultValue.limit = limit; _resultValue.scopeDownStatement = scopeDownStatement; diff --git a/sdk/nodejs/account/index.ts b/sdk/nodejs/account/index.ts index 8536f940bdf..7101c85943e 100644 --- a/sdk/nodejs/account/index.ts +++ b/sdk/nodejs/account/index.ts @@ -15,6 +15,11 @@ export type PrimaryContact = import("./primaryContact").PrimaryContact; export const PrimaryContact: typeof import("./primaryContact").PrimaryContact = null as any; utilities.lazyLoad(exports, ["PrimaryContact"], () => require("./primaryContact")); +export { RegionArgs, RegionState } from "./region"; +export type Region = import("./region").Region; +export const Region: typeof import("./region").Region = null as any; +utilities.lazyLoad(exports, ["Region"], () => require("./region")); + const _module = { version: utilities.getVersion(), @@ -24,6 +29,8 @@ const _module = { return new AlternativeContact(name, undefined, { urn }) case "aws:account/primaryContact:PrimaryContact": return new PrimaryContact(name, undefined, { urn }) + case "aws:account/region:Region": + return new Region(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } @@ -31,3 +38,4 @@ const _module = { }; pulumi.runtime.registerResourceModule("aws", "account/alternativeContact", _module) pulumi.runtime.registerResourceModule("aws", "account/primaryContact", _module) +pulumi.runtime.registerResourceModule("aws", "account/region", _module) diff --git a/sdk/nodejs/account/region.ts b/sdk/nodejs/account/region.ts new file mode 100644 index 00000000000..c7996b436f1 --- /dev/null +++ b/sdk/nodejs/account/region.ts @@ -0,0 +1,150 @@ +// *** 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"; + +/** + * Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. + * + * ## Example Usage + * + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as aws from "@pulumi/aws"; + * + * const example = new aws.account.Region("example", { + * regionName: "ap-southeast-3", + * enabled: true, + * }); + * ``` + * + * + * ## Import + * + * Using `pulumi import`. For example: + * + * ```sh + * $ pulumi import aws:account/region:Region example ap-southeast-3 + * ``` + */ +export class Region extends pulumi.CustomResource { + /** + * Get an existing Region 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?: RegionState, opts?: pulumi.CustomResourceOptions): Region { + return new Region(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:account/region:Region'; + + /** + * Returns true if the given object is an instance of Region. 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 Region { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Region.__pulumiType; + } + + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + */ + public readonly accountId!: pulumi.Output; + /** + * Whether the region is enabled. + */ + public readonly enabled!: pulumi.Output; + /** + * The region opt status. + */ + public /*out*/ readonly optStatus!: pulumi.Output; + /** + * The region name to manage. + */ + public readonly regionName!: pulumi.Output; + + /** + * Create a Region 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: RegionArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: RegionArgs | RegionState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as RegionState | undefined; + resourceInputs["accountId"] = state ? state.accountId : undefined; + resourceInputs["enabled"] = state ? state.enabled : undefined; + resourceInputs["optStatus"] = state ? state.optStatus : undefined; + resourceInputs["regionName"] = state ? state.regionName : undefined; + } else { + const args = argsOrState as RegionArgs | undefined; + if ((!args || args.enabled === undefined) && !opts.urn) { + throw new Error("Missing required property 'enabled'"); + } + if ((!args || args.regionName === undefined) && !opts.urn) { + throw new Error("Missing required property 'regionName'"); + } + resourceInputs["accountId"] = args ? args.accountId : undefined; + resourceInputs["enabled"] = args ? args.enabled : undefined; + resourceInputs["regionName"] = args ? args.regionName : undefined; + resourceInputs["optStatus"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(Region.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Region resources. + */ +export interface RegionState { + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + */ + accountId?: pulumi.Input; + /** + * Whether the region is enabled. + */ + enabled?: pulumi.Input; + /** + * The region opt status. + */ + optStatus?: pulumi.Input; + /** + * The region name to manage. + */ + regionName?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Region resource. + */ +export interface RegionArgs { + /** + * The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + */ + accountId?: pulumi.Input; + /** + * Whether the region is enabled. + */ + enabled: pulumi.Input; + /** + * The region name to manage. + */ + regionName: pulumi.Input; +} diff --git a/sdk/nodejs/batch/jobQueue.ts b/sdk/nodejs/batch/jobQueue.ts index 324fcdacea4..a7fe5bde640 100644 --- a/sdk/nodejs/batch/jobQueue.ts +++ b/sdk/nodejs/batch/jobQueue.ts @@ -23,9 +23,15 @@ import * as utilities from "../utilities"; * name: "tf-test-batch-job-queue", * state: "ENABLED", * priority: 1, - * computeEnvironments: [ - * testEnvironment1.arn, - * testEnvironment2.arn, + * computeEnvironmentOrders: [ + * { + * order: 1, + * computeEnvironment: testEnvironment1.arn, + * }, + * { + * order: 2, + * computeEnvironment: testEnvironment2.arn, + * }, * ], * }); * ``` @@ -54,9 +60,15 @@ import * as utilities from "../utilities"; * schedulingPolicyArn: example.arn, * state: "ENABLED", * priority: 1, - * computeEnvironments: [ - * testEnvironment1.arn, - * testEnvironment2.arn, + * computeEnvironmentOrders: [ + * { + * order: 1, + * computeEnvironment: testEnvironment1.arn, + * }, + * { + * order: 2, + * computeEnvironment: testEnvironment2.arn, + * }, * ], * }); * ``` @@ -103,10 +115,15 @@ export class JobQueue extends pulumi.CustomResource { */ public /*out*/ readonly arn!: pulumi.Output; /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. */ - public readonly computeEnvironments!: pulumi.Output; + public readonly computeEnvironmentOrders!: pulumi.Output; + /** + * (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + * + * @deprecated This parameter will be replaced by `compute_environments_order`. + */ + public readonly computeEnvironments!: pulumi.Output; /** * Specifies the name of the job queue. */ @@ -150,6 +167,7 @@ export class JobQueue extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as JobQueueState | undefined; resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["computeEnvironmentOrders"] = state ? state.computeEnvironmentOrders : undefined; resourceInputs["computeEnvironments"] = state ? state.computeEnvironments : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["priority"] = state ? state.priority : undefined; @@ -160,15 +178,13 @@ export class JobQueue extends pulumi.CustomResource { resourceInputs["timeouts"] = state ? state.timeouts : undefined; } else { const args = argsOrState as JobQueueArgs | undefined; - if ((!args || args.computeEnvironments === undefined) && !opts.urn) { - throw new Error("Missing required property 'computeEnvironments'"); - } if ((!args || args.priority === undefined) && !opts.urn) { throw new Error("Missing required property 'priority'"); } if ((!args || args.state === undefined) && !opts.urn) { throw new Error("Missing required property 'state'"); } + resourceInputs["computeEnvironmentOrders"] = args ? args.computeEnvironmentOrders : undefined; resourceInputs["computeEnvironments"] = args ? args.computeEnvironments : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["priority"] = args ? args.priority : undefined; @@ -193,8 +209,13 @@ export interface JobQueueState { */ arn?: pulumi.Input; /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + */ + computeEnvironmentOrders?: pulumi.Input[]>; + /** + * (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + * + * @deprecated This parameter will be replaced by `compute_environments_order`. */ computeEnvironments?: pulumi.Input[]>; /** @@ -232,10 +253,15 @@ export interface JobQueueState { */ export interface JobQueueArgs { /** - * List of compute environment ARNs mapped to a job queue. - * The position of the compute environments in the list will dictate the order. + * The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. */ - computeEnvironments: pulumi.Input[]>; + computeEnvironmentOrders?: pulumi.Input[]>; + /** + * (Optional) This parameter is deprecated, please use `computeEnvironmentOrder` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `computeEnvironments` will always be used over `computeEnvironmentOrder`. Please adjust your HCL accordingly. + * + * @deprecated This parameter will be replaced by `compute_environments_order`. + */ + computeEnvironments?: pulumi.Input[]>; /** * Specifies the name of the job queue. */ diff --git a/sdk/nodejs/guardduty/detectorFeature.ts b/sdk/nodejs/guardduty/detectorFeature.ts index c3f3715501e..9fc9dad68af 100644 --- a/sdk/nodejs/guardduty/detectorFeature.ts +++ b/sdk/nodejs/guardduty/detectorFeature.ts @@ -69,7 +69,7 @@ export class DetectorFeature extends pulumi.CustomResource { */ public readonly detectorId!: pulumi.Output; /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. */ public readonly name!: pulumi.Output; /** @@ -125,7 +125,7 @@ export interface DetectorFeatureState { */ detectorId?: pulumi.Input; /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. */ name?: pulumi.Input; /** @@ -147,7 +147,7 @@ export interface DetectorFeatureArgs { */ detectorId: pulumi.Input; /** - * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + * The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. */ name?: pulumi.Input; /** diff --git a/sdk/nodejs/iot/policy.ts b/sdk/nodejs/iot/policy.ts index 516d0f97f8f..d6fe9a1d9c0 100644 --- a/sdk/nodejs/iot/policy.ts +++ b/sdk/nodejs/iot/policy.ts @@ -82,6 +82,16 @@ export class Policy extends pulumi.CustomResource { * The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. */ public readonly policy!: 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}>; /** * Create a Policy resource with the given unique name, arguments, and options. @@ -100,6 +110,8 @@ export class Policy extends pulumi.CustomResource { resourceInputs["defaultVersionId"] = state ? state.defaultVersionId : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["policy"] = state ? state.policy : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; } else { const args = argsOrState as PolicyArgs | undefined; if ((!args || args.policy === undefined) && !opts.urn) { @@ -107,8 +119,10 @@ export class Policy extends pulumi.CustomResource { } resourceInputs["name"] = args ? args.name : undefined; resourceInputs["policy"] = args ? args.policy : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["defaultVersionId"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(Policy.__pulumiType, name, resourceInputs, opts); @@ -135,6 +149,16 @@ export interface PolicyState { * The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. */ policy?: 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}>; } /** @@ -149,4 +173,8 @@ export interface PolicyArgs { * The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. */ policy: 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}>; } diff --git a/sdk/nodejs/iot/roleAlias.ts b/sdk/nodejs/iot/roleAlias.ts index 60589993559..ab3108aa3b6 100644 --- a/sdk/nodejs/iot/roleAlias.ts +++ b/sdk/nodejs/iot/roleAlias.ts @@ -59,6 +59,16 @@ export class RoleAlias extends pulumi.CustomResource { * The identity of the role to which the alias refers. */ public readonly roleArn!: 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}>; /** * Create a RoleAlias resource with the given unique name, arguments, and options. @@ -77,6 +87,8 @@ export class RoleAlias extends pulumi.CustomResource { resourceInputs["arn"] = state ? state.arn : undefined; resourceInputs["credentialDuration"] = state ? state.credentialDuration : undefined; resourceInputs["roleArn"] = state ? state.roleArn : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; } else { const args = argsOrState as RoleAliasArgs | undefined; if ((!args || args.alias === undefined) && !opts.urn) { @@ -88,7 +100,9 @@ export class RoleAlias extends pulumi.CustomResource { resourceInputs["alias"] = args ? args.alias : undefined; resourceInputs["credentialDuration"] = args ? args.credentialDuration : undefined; resourceInputs["roleArn"] = args ? args.roleArn : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(RoleAlias.__pulumiType, name, resourceInputs, opts); @@ -115,6 +129,16 @@ export interface RoleAliasState { * The identity of the role to which the alias refers. */ roleArn?: 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}>; } /** @@ -133,4 +157,8 @@ export interface RoleAliasArgs { * The identity of the role to which the alias refers. */ roleArn: 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}>; } diff --git a/sdk/nodejs/rds/cluster.ts b/sdk/nodejs/rds/cluster.ts index 3443d2c7267..dcf206db0c2 100644 --- a/sdk/nodejs/rds/cluster.ts +++ b/sdk/nodejs/rds/cluster.ts @@ -497,7 +497,7 @@ export class Cluster extends pulumi.CustomResource { */ public readonly storageEncrypted!: pulumi.Output; /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). */ public readonly storageType!: pulumi.Output; /** @@ -894,7 +894,7 @@ export interface ClusterState { */ storageEncrypted?: pulumi.Input; /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). */ storageType?: pulumi.Input; /** @@ -1117,7 +1117,7 @@ export interface ClusterArgs { */ storageEncrypted?: pulumi.Input; /** - * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + * (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storageType` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). */ storageType?: pulumi.Input; /** diff --git a/sdk/nodejs/rds/clusterInstance.ts b/sdk/nodejs/rds/clusterInstance.ts index 68fa9e6cf18..adbce3ac3e3 100644 --- a/sdk/nodejs/rds/clusterInstance.ts +++ b/sdk/nodejs/rds/clusterInstance.ts @@ -144,7 +144,7 @@ export class ClusterInstance extends pulumi.CustomResource { public /*out*/ readonly endpoint!: pulumi.Output; /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). */ public readonly engine!: pulumi.Output; /** @@ -386,7 +386,7 @@ export interface ClusterInstanceState { endpoint?: pulumi.Input; /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). */ engine?: pulumi.Input; /** @@ -519,7 +519,7 @@ export interface ClusterInstanceArgs { dbSubnetGroupName?: pulumi.Input; /** * Name of the database engine to be used for the RDS cluster instance. - * Valid Values: `aurora-mysql`, `aurora-postgresql`. + * Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). */ engine: pulumi.Input; /** diff --git a/sdk/nodejs/rds/getEngineVersion.ts b/sdk/nodejs/rds/getEngineVersion.ts index d5fb48f7989..c3bf0325cb3 100644 --- a/sdk/nodejs/rds/getEngineVersion.ts +++ b/sdk/nodejs/rds/getEngineVersion.ts @@ -55,6 +55,8 @@ export function getEngineVersion(args: GetEngineVersionArgs, opts?: pulumi.Invok "defaultOnly": args.defaultOnly, "engine": args.engine, "filters": args.filters, + "hasMajorTarget": args.hasMajorTarget, + "hasMinorTarget": args.hasMinorTarget, "includeAll": args.includeAll, "latest": args.latest, "parameterGroupFamily": args.parameterGroupFamily, @@ -70,7 +72,7 @@ export function getEngineVersion(args: GetEngineVersionArgs, opts?: pulumi.Invok */ export interface GetEngineVersionArgs { /** - * When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`. */ defaultOnly?: boolean; /** @@ -80,15 +82,23 @@ export interface GetEngineVersionArgs { */ engine: string; /** - * One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). */ filters?: inputs.rds.GetEngineVersionFilter[]; /** - * When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + */ + hasMajorTarget?: boolean; + /** + * Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + */ + hasMinorTarget?: boolean; + /** + * Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. */ includeAll?: boolean; /** - * When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. */ latest?: boolean; /** @@ -96,15 +106,15 @@ export interface GetEngineVersionArgs { */ parameterGroupFamily?: string; /** - * Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`. */ preferredMajorTargets?: string[]; /** - * Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`. */ preferredUpgradeTargets?: string[]; /** - * Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`. */ preferredVersions?: string[]; version?: string; @@ -115,20 +125,22 @@ export interface GetEngineVersionArgs { */ export interface GetEngineVersionResult { /** - * The default character set for new instances of this engine version. + * Default character set for new instances of the engine version. */ readonly defaultCharacterSet: string; readonly defaultOnly?: boolean; readonly engine: string; /** - * Description of the database engine. + * Description of the engine. */ readonly engineDescription: string; /** - * Set of log types that the database engine has available for export to CloudWatch Logs. + * Set of log types that the engine version has available for export to CloudWatch Logs. */ readonly exportableLogTypes: string[]; readonly filters?: outputs.rds.GetEngineVersionFilter[]; + readonly hasMajorTarget?: boolean; + readonly hasMinorTarget?: boolean; /** * The provider-assigned unique ID for this managed resource. */ @@ -140,52 +152,60 @@ export interface GetEngineVersionResult { readonly preferredUpgradeTargets?: string[]; readonly preferredVersions?: string[]; /** - * Status of the database engine version, either available or deprecated. + * Status of the engine version, either `available` or `deprecated`. */ readonly status: string; /** - * Set of the character sets supported by this engine. + * Set of character sets supported by th engine version. */ readonly supportedCharacterSets: string[]; /** - * Set of features supported by the database engine. + * Set of features supported by the engine version. */ readonly supportedFeatureNames: string[]; /** - * Set of the supported database engine modes. + * Set of supported engine version modes. */ readonly supportedModes: string[]; /** - * Set of the time zones supported by this engine. + * Set of the time zones supported by the engine version. */ readonly supportedTimezones: string[]; /** - * Indicates whether you can use Aurora global databases with a specific database engine version. + * Whether you can use Aurora global databases with the engine version. */ readonly supportsGlobalDatabases: boolean; /** - * Indicates whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. + * Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs. */ readonly supportsLogExportsToCloudwatch: boolean; /** - * Indicates whether you can use Aurora parallel query with a specific database engine version. + * Whether you can use Aurora parallel query with the engine version. */ readonly supportsParallelQuery: boolean; /** - * Indicates whether the database engine version supports read replicas. + * Whether the engine version supports read replicas. */ readonly supportsReadReplica: boolean; /** - * Set of engine versions that this database engine version can be upgraded to. + * Set of versions that are valid major version upgrades for the engine version. + */ + readonly validMajorTargets: string[]; + /** + * Set of versions that are valid minor version upgrades for the engine version. + */ + readonly validMinorTargets: string[]; + /** + * Set of versions that are valid major or minor upgrades for the engine version. */ readonly validUpgradeTargets: string[]; readonly version: string; /** - * Version of the database engine. + * Complete engine version. */ readonly versionActual: string; /** - * Description of the database engine version. + * Description of the engine version. */ readonly versionDescription: string; } @@ -239,7 +259,7 @@ export function getEngineVersionOutput(args: GetEngineVersionOutputArgs, opts?: */ export interface GetEngineVersionOutputArgs { /** - * When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + * Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`. */ defaultOnly?: pulumi.Input; /** @@ -249,15 +269,23 @@ export interface GetEngineVersionOutputArgs { */ engine: pulumi.Input; /** - * One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + * One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). */ filters?: pulumi.Input[]>; /** - * When set to `true`, the specified `version` or member of `preferredVersions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. + * Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + */ + hasMajorTarget?: pulumi.Input; + /** + * Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + */ + hasMinorTarget?: pulumi.Input; + /** + * Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. */ includeAll?: pulumi.Input; /** - * When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `defaultOnly`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + * Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. */ latest?: pulumi.Input; /** @@ -265,15 +293,15 @@ export interface GetEngineVersionOutputArgs { */ parameterGroupFamily?: pulumi.Input; /** - * Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`. */ preferredMajorTargets?: pulumi.Input[]>; /** - * Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`. */ preferredUpgradeTargets?: pulumi.Input[]>; /** - * Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferredMajorTargets`, `preferredUpgradeTargets`, and `preferredVersions`, the data source will return the default version for the engine. You can use this with other version criteria. + * Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`. */ preferredVersions?: pulumi.Input[]>; version?: pulumi.Input; diff --git a/sdk/nodejs/s3/bucketObject.ts b/sdk/nodejs/s3/bucketObject.ts index a896232bef8..070fb4fdf96 100644 --- a/sdk/nodejs/s3/bucketObject.ts +++ b/sdk/nodejs/s3/bucketObject.ts @@ -179,6 +179,10 @@ export class BucketObject extends pulumi.CustomResource { * [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. */ public readonly acl!: pulumi.Output; + /** + * ARN of the object. + */ + public /*out*/ readonly arn!: pulumi.Output; /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. */ @@ -300,6 +304,7 @@ export class BucketObject extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as BucketObjectState | undefined; resourceInputs["acl"] = state ? state.acl : undefined; + resourceInputs["arn"] = state ? state.arn : undefined; resourceInputs["bucket"] = state ? state.bucket : undefined; resourceInputs["bucketKeyEnabled"] = state ? state.bucketKeyEnabled : undefined; resourceInputs["cacheControl"] = state ? state.cacheControl : undefined; @@ -354,6 +359,7 @@ export class BucketObject extends pulumi.CustomResource { resourceInputs["storageClass"] = args ? args.storageClass : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["websiteRedirect"] = args ? args.websiteRedirect : undefined; + resourceInputs["arn"] = undefined /*out*/; resourceInputs["tagsAll"] = undefined /*out*/; resourceInputs["versionId"] = undefined /*out*/; } @@ -370,6 +376,10 @@ export interface BucketObjectState { * [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. */ acl?: pulumi.Input; + /** + * ARN of the object. + */ + arn?: pulumi.Input; /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. */ diff --git a/sdk/nodejs/s3/bucketObjectv2.ts b/sdk/nodejs/s3/bucketObjectv2.ts index 34e0d67ec82..9506eb405f1 100644 --- a/sdk/nodejs/s3/bucketObjectv2.ts +++ b/sdk/nodejs/s3/bucketObjectv2.ts @@ -211,6 +211,10 @@ export class BucketObjectv2 extends pulumi.CustomResource { * [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. */ public readonly acl!: pulumi.Output; + /** + * ARN of the object. + */ + public /*out*/ readonly arn!: pulumi.Output; /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. */ @@ -358,6 +362,7 @@ export class BucketObjectv2 extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as BucketObjectv2State | undefined; resourceInputs["acl"] = state ? state.acl : undefined; + resourceInputs["arn"] = state ? state.arn : undefined; resourceInputs["bucket"] = state ? state.bucket : undefined; resourceInputs["bucketKeyEnabled"] = state ? state.bucketKeyEnabled : undefined; resourceInputs["cacheControl"] = state ? state.cacheControl : undefined; @@ -420,6 +425,7 @@ export class BucketObjectv2 extends pulumi.CustomResource { resourceInputs["storageClass"] = args ? args.storageClass : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["websiteRedirect"] = args ? args.websiteRedirect : undefined; + resourceInputs["arn"] = undefined /*out*/; resourceInputs["checksumCrc32"] = undefined /*out*/; resourceInputs["checksumCrc32c"] = undefined /*out*/; resourceInputs["checksumSha1"] = undefined /*out*/; @@ -442,6 +448,10 @@ export interface BucketObjectv2State { * [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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. */ acl?: pulumi.Input; + /** + * ARN of the object. + */ + arn?: pulumi.Input; /** * Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. */ diff --git a/sdk/nodejs/s3/getBucketObject.ts b/sdk/nodejs/s3/getBucketObject.ts index eead4698fe0..ae2e66cc3b7 100644 --- a/sdk/nodejs/s3/getBucketObject.ts +++ b/sdk/nodejs/s3/getBucketObject.ts @@ -101,6 +101,7 @@ export interface GetBucketObjectArgs { * A collection of values returned by getBucketObject. */ export interface GetBucketObjectResult { + readonly arn: string; /** * Object data (see **limitations above** to understand cases in which this field is actually available) */ diff --git a/sdk/nodejs/s3/getObject.ts b/sdk/nodejs/s3/getObject.ts index 7fe94aa3448..998a6c32870 100644 --- a/sdk/nodejs/s3/getObject.ts +++ b/sdk/nodejs/s3/getObject.ts @@ -102,6 +102,10 @@ export interface GetObjectArgs { * A collection of values returned by getObject. */ export interface GetObjectResult { + /** + * ARN of the object. + */ + readonly arn: string; /** * Object data (see **limitations above** to understand cases in which this field is actually available) */ diff --git a/sdk/nodejs/s3/objectCopy.ts b/sdk/nodejs/s3/objectCopy.ts index 67bce36c972..b141348dd15 100644 --- a/sdk/nodejs/s3/objectCopy.ts +++ b/sdk/nodejs/s3/objectCopy.ts @@ -62,6 +62,10 @@ export class ObjectCopy extends pulumi.CustomResource { * [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`. */ public readonly acl!: pulumi.Output; + /** + * ARN of the object. + */ + public /*out*/ readonly arn!: pulumi.Output; /** * Name of the bucket to put the file in. */ @@ -274,6 +278,7 @@ export class ObjectCopy extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as ObjectCopyState | undefined; resourceInputs["acl"] = state ? state.acl : undefined; + resourceInputs["arn"] = state ? state.arn : undefined; resourceInputs["bucket"] = state ? state.bucket : undefined; resourceInputs["bucketKeyEnabled"] = state ? state.bucketKeyEnabled : undefined; resourceInputs["cacheControl"] = state ? state.cacheControl : undefined; @@ -373,6 +378,7 @@ export class ObjectCopy extends pulumi.CustomResource { resourceInputs["taggingDirective"] = args ? args.taggingDirective : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["websiteRedirect"] = args ? args.websiteRedirect : undefined; + resourceInputs["arn"] = undefined /*out*/; resourceInputs["checksumCrc32"] = undefined /*out*/; resourceInputs["checksumCrc32c"] = undefined /*out*/; resourceInputs["checksumSha1"] = undefined /*out*/; @@ -400,6 +406,10 @@ export interface ObjectCopyState { * [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`. */ acl?: pulumi.Input; + /** + * ARN of the object. + */ + arn?: pulumi.Input; /** * Name of the bucket to put the file in. */ diff --git a/sdk/nodejs/securitylake/index.ts b/sdk/nodejs/securitylake/index.ts index 86484898fbd..dcd5d191da7 100644 --- a/sdk/nodejs/securitylake/index.ts +++ b/sdk/nodejs/securitylake/index.ts @@ -20,6 +20,11 @@ export type DataLake = import("./dataLake").DataLake; export const DataLake: typeof import("./dataLake").DataLake = null as any; utilities.lazyLoad(exports, ["DataLake"], () => require("./dataLake")); +export { SubscriberArgs, SubscriberState } from "./subscriber"; +export type Subscriber = import("./subscriber").Subscriber; +export const Subscriber: typeof import("./subscriber").Subscriber = null as any; +utilities.lazyLoad(exports, ["Subscriber"], () => require("./subscriber")); + const _module = { version: utilities.getVersion(), @@ -31,6 +36,8 @@ const _module = { return new CustomLogSource(name, undefined, { urn }) case "aws:securitylake/dataLake:DataLake": return new DataLake(name, undefined, { urn }) + case "aws:securitylake/subscriber:Subscriber": + return new Subscriber(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } @@ -39,3 +46,4 @@ const _module = { pulumi.runtime.registerResourceModule("aws", "securitylake/awsLogSource", _module) pulumi.runtime.registerResourceModule("aws", "securitylake/customLogSource", _module) pulumi.runtime.registerResourceModule("aws", "securitylake/dataLake", _module) +pulumi.runtime.registerResourceModule("aws", "securitylake/subscriber", _module) diff --git a/sdk/nodejs/securitylake/subscriber.ts b/sdk/nodejs/securitylake/subscriber.ts new file mode 100644 index 00000000000..48afc6e156a --- /dev/null +++ b/sdk/nodejs/securitylake/subscriber.ts @@ -0,0 +1,245 @@ +// *** 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 Security Lake Subscriber. + * + * ## Import + * + * Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: + * + * ```sh + * $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 + * ``` + */ +export class Subscriber extends pulumi.CustomResource { + /** + * Get an existing Subscriber 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?: SubscriberState, opts?: pulumi.CustomResourceOptions): Subscriber { + return new Subscriber(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws:securitylake/subscriber:Subscriber'; + + /** + * Returns true if the given object is an instance of Subscriber. 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 Subscriber { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Subscriber.__pulumiType; + } + + public readonly accessType!: pulumi.Output; + /** + * ARN of the Data Lake. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + */ + public /*out*/ readonly resourceShareArn!: pulumi.Output; + /** + * The name of the resource share. + */ + public /*out*/ readonly resourceShareName!: pulumi.Output; + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + */ + public /*out*/ readonly roleArn!: pulumi.Output; + /** + * The ARN for the Amazon Security Lake Amazon S3 bucket. + */ + public /*out*/ readonly s3BucketArn!: pulumi.Output; + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + */ + public readonly source!: pulumi.Output; + /** + * The description for your subscriber account in Security Lake. + */ + public readonly subscriberDescription!: pulumi.Output; + /** + * The subscriber endpoint to which exception messages are posted. + */ + public /*out*/ readonly subscriberEndpoint!: pulumi.Output; + /** + * The AWS identity used to access your data. + */ + public readonly subscriberIdentity!: pulumi.Output; + /** + * The name of your Security Lake subscriber account. + */ + public readonly subscriberName!: pulumi.Output; + /** + * The subscriber status of the Amazon Security Lake subscriber account. + */ + public /*out*/ readonly subscriberStatus!: pulumi.Output; + /** + * 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. + */ + 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}>; + public readonly timeouts!: pulumi.Output; + + /** + * Create a Subscriber 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?: SubscriberArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: SubscriberArgs | SubscriberState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as SubscriberState | undefined; + resourceInputs["accessType"] = state ? state.accessType : undefined; + resourceInputs["arn"] = state ? state.arn : undefined; + resourceInputs["resourceShareArn"] = state ? state.resourceShareArn : undefined; + resourceInputs["resourceShareName"] = state ? state.resourceShareName : undefined; + resourceInputs["roleArn"] = state ? state.roleArn : undefined; + resourceInputs["s3BucketArn"] = state ? state.s3BucketArn : undefined; + resourceInputs["source"] = state ? state.source : undefined; + resourceInputs["subscriberDescription"] = state ? state.subscriberDescription : undefined; + resourceInputs["subscriberEndpoint"] = state ? state.subscriberEndpoint : undefined; + resourceInputs["subscriberIdentity"] = state ? state.subscriberIdentity : undefined; + resourceInputs["subscriberName"] = state ? state.subscriberName : undefined; + resourceInputs["subscriberStatus"] = state ? state.subscriberStatus : undefined; + resourceInputs["tags"] = state ? state.tags : undefined; + resourceInputs["tagsAll"] = state ? state.tagsAll : undefined; + resourceInputs["timeouts"] = state ? state.timeouts : undefined; + } else { + const args = argsOrState as SubscriberArgs | undefined; + resourceInputs["accessType"] = args ? args.accessType : undefined; + resourceInputs["source"] = args ? args.source : undefined; + resourceInputs["subscriberDescription"] = args ? args.subscriberDescription : undefined; + resourceInputs["subscriberIdentity"] = args ? args.subscriberIdentity : undefined; + resourceInputs["subscriberName"] = args ? args.subscriberName : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["timeouts"] = args ? args.timeouts : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["resourceShareArn"] = undefined /*out*/; + resourceInputs["resourceShareName"] = undefined /*out*/; + resourceInputs["roleArn"] = undefined /*out*/; + resourceInputs["s3BucketArn"] = undefined /*out*/; + resourceInputs["subscriberEndpoint"] = undefined /*out*/; + resourceInputs["subscriberStatus"] = undefined /*out*/; + resourceInputs["tagsAll"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(Subscriber.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering Subscriber resources. + */ +export interface SubscriberState { + accessType?: pulumi.Input; + /** + * ARN of the Data Lake. + */ + arn?: pulumi.Input; + /** + * The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + */ + resourceShareArn?: pulumi.Input; + /** + * The name of the resource share. + */ + resourceShareName?: pulumi.Input; + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + */ + roleArn?: pulumi.Input; + /** + * The ARN for the Amazon Security Lake Amazon S3 bucket. + */ + s3BucketArn?: pulumi.Input; + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + */ + source?: pulumi.Input; + /** + * The description for your subscriber account in Security Lake. + */ + subscriberDescription?: pulumi.Input; + /** + * The subscriber endpoint to which exception messages are posted. + */ + subscriberEndpoint?: pulumi.Input; + /** + * The AWS identity used to access your data. + */ + subscriberIdentity?: pulumi.Input; + /** + * The name of your Security Lake subscriber account. + */ + subscriberName?: pulumi.Input; + /** + * The subscriber status of the Amazon Security Lake subscriber account. + */ + subscriberStatus?: pulumi.Input; + /** + * 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.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}>; + timeouts?: pulumi.Input; +} + +/** + * The set of arguments for constructing a Subscriber resource. + */ +export interface SubscriberArgs { + accessType?: pulumi.Input; + /** + * The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + */ + source?: pulumi.Input; + /** + * The description for your subscriber account in Security Lake. + */ + subscriberDescription?: pulumi.Input; + /** + * The AWS identity used to access your data. + */ + subscriberIdentity?: pulumi.Input; + /** + * The name of your Security Lake subscriber account. + */ + subscriberName?: pulumi.Input; + /** + * 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.Input<{[key: string]: pulumi.Input}>; + timeouts?: pulumi.Input; +} diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 87fe1981e17..a75f03373a8 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -19,6 +19,7 @@ "account/alternativeContact.ts", "account/index.ts", "account/primaryContact.ts", + "account/region.ts", "acm/certificate.ts", "acm/certificateValidation.ts", "acm/getCertificate.ts", @@ -1844,6 +1845,7 @@ "securitylake/customLogSource.ts", "securitylake/dataLake.ts", "securitylake/index.ts", + "securitylake/subscriber.ts", "serverlessrepository/cloudFormationStack.ts", "serverlessrepository/getApplication.ts", "serverlessrepository/index.ts", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index aa419cad30d..bb449d324bd 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -9819,6 +9819,17 @@ export namespace batch { attemptDurationSeconds?: pulumi.Input; } + export interface JobQueueComputeEnvironmentOrder { + /** + * The Amazon Resource Name (ARN) of the compute environment. + */ + computeEnvironment: pulumi.Input; + /** + * The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + */ + order: pulumi.Input; + } + export interface JobQueueTimeouts { /** * 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). @@ -30005,7 +30016,7 @@ export namespace guardduty { export interface DetectorFeatureAdditionalConfiguration { /** - * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. */ name: pulumi.Input; /** @@ -54606,12 +54617,18 @@ export namespace opensearch { desiredState: pulumi.Input; /** * Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. */ maintenanceSchedules?: pulumi.Input[]>; /** * Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. */ rollbackOnDisable?: pulumi.Input; + /** + * Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + */ + useOffPeakWindow?: pulumi.Input; } export interface DomainAutoTuneOptionsMaintenanceSchedule { @@ -68126,6 +68143,96 @@ export namespace securitylake { */ update?: pulumi.Input; } + + export interface SubscriberSource { + /** + * Amazon Security Lake supports log and event collection for natively supported AWS services. + */ + awsLogSourceResource?: pulumi.Input; + /** + * Amazon Security Lake supports custom source types. + */ + customLogSourceResource?: pulumi.Input; + } + + export interface SubscriberSourceAwsLogSourceResource { + /** + * The name for a third-party custom source. This must be a Regionally unique value. + */ + sourceName?: pulumi.Input; + /** + * The version for a third-party custom source. This must be a Regionally unique value. + */ + sourceVersion?: pulumi.Input; + } + + export interface SubscriberSourceCustomLogSourceResource { + /** + * The attributes of a third-party custom source. + */ + attributes?: pulumi.Input[]>; + providers?: pulumi.Input[]>; + /** + * The name for a third-party custom source. This must be a Regionally unique value. + */ + sourceName?: pulumi.Input; + /** + * The version for a third-party custom source. This must be a Regionally unique value. + */ + sourceVersion?: pulumi.Input; + } + + export interface SubscriberSourceCustomLogSourceResourceAttribute { + /** + * The ARN of the AWS Glue crawler. + */ + crawlerArn: pulumi.Input; + /** + * The ARN of the AWS Glue database where results are written. + */ + databaseArn: pulumi.Input; + /** + * The ARN of the AWS Glue table. + */ + tableArn: pulumi.Input; + } + + export interface SubscriberSourceCustomLogSourceResourceProvider { + /** + * The location of the partition in the Amazon S3 bucket for Security Lake. + */ + location: pulumi.Input; + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + */ + roleArn: pulumi.Input; + } + + export interface SubscriberSubscriberIdentity { + /** + * The AWS Regions where Security Lake is automatically enabled. + */ + externalId: pulumi.Input; + /** + * Provides encryption details of Amazon Security Lake object. + */ + principal: pulumi.Input; + } + + export interface SubscriberTimeouts { + /** + * 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 namespace servicecatalog { @@ -72355,6 +72462,12 @@ export namespace wafv2 { * Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. */ customKeys?: pulumi.Input[]>; + /** + * The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + */ + evaluationWindowSec?: pulumi.Input; /** * The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. */ @@ -77776,6 +77889,12 @@ export namespace wafv2 { * Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. */ customKeys?: pulumi.Input[]>; + /** + * The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + */ + evaluationWindowSec?: pulumi.Input; /** * Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. */ diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index c9550cedaac..8b65acabdbf 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -10388,6 +10388,17 @@ export namespace batch { attemptDurationSeconds?: number; } + export interface JobQueueComputeEnvironmentOrder { + /** + * The Amazon Resource Name (ARN) of the compute environment. + */ + computeEnvironment: string; + /** + * The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + */ + order: number; + } + export interface JobQueueTimeouts { /** * 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). @@ -34739,7 +34750,7 @@ export namespace guardduty { export interface DetectorFeatureAdditionalConfiguration { /** - * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + * The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. */ name: string; /** @@ -60521,12 +60532,18 @@ export namespace opensearch { desiredState: string; /** * Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + * + * **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenanceSchedule` configuration blocks cannot be specified when `useOffPeakWindow` is set to `true`. */ - maintenanceSchedules: outputs.opensearch.DomainAutoTuneOptionsMaintenanceSchedule[]; + maintenanceSchedules?: outputs.opensearch.DomainAutoTuneOptionsMaintenanceSchedule[]; /** * Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. */ rollbackOnDisable: string; + /** + * Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + */ + useOffPeakWindow?: boolean; } export interface DomainAutoTuneOptionsMaintenanceSchedule { @@ -74683,6 +74700,96 @@ export namespace securitylake { update?: string; } + export interface SubscriberSource { + /** + * Amazon Security Lake supports log and event collection for natively supported AWS services. + */ + awsLogSourceResource?: outputs.securitylake.SubscriberSourceAwsLogSourceResource; + /** + * Amazon Security Lake supports custom source types. + */ + customLogSourceResource?: outputs.securitylake.SubscriberSourceCustomLogSourceResource; + } + + export interface SubscriberSourceAwsLogSourceResource { + /** + * The name for a third-party custom source. This must be a Regionally unique value. + */ + sourceName?: string; + /** + * The version for a third-party custom source. This must be a Regionally unique value. + */ + sourceVersion?: string; + } + + export interface SubscriberSourceCustomLogSourceResource { + /** + * The attributes of a third-party custom source. + */ + attributes: outputs.securitylake.SubscriberSourceCustomLogSourceResourceAttribute[]; + providers: outputs.securitylake.SubscriberSourceCustomLogSourceResourceProvider[]; + /** + * The name for a third-party custom source. This must be a Regionally unique value. + */ + sourceName?: string; + /** + * The version for a third-party custom source. This must be a Regionally unique value. + */ + sourceVersion?: string; + } + + export interface SubscriberSourceCustomLogSourceResourceAttribute { + /** + * The ARN of the AWS Glue crawler. + */ + crawlerArn: string; + /** + * The ARN of the AWS Glue database where results are written. + */ + databaseArn: string; + /** + * The ARN of the AWS Glue table. + */ + tableArn: string; + } + + export interface SubscriberSourceCustomLogSourceResourceProvider { + /** + * The location of the partition in the Amazon S3 bucket for Security Lake. + */ + location: string; + /** + * The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + */ + roleArn: string; + } + + export interface SubscriberSubscriberIdentity { + /** + * The AWS Regions where Security Lake is automatically enabled. + */ + externalId: string; + /** + * Provides encryption details of Amazon Security Lake object. + */ + principal: string; + } + + export interface SubscriberTimeouts { + /** + * 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 namespace servicecatalog { @@ -79348,6 +79455,12 @@ export namespace wafv2 { * Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. */ customKeys?: outputs.wafv2.RuleGroupRuleStatementRateBasedStatementCustomKey[]; + /** + * The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + */ + evaluationWindowSec?: number; /** * The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. */ @@ -84769,6 +84882,12 @@ export namespace wafv2 { * Aggregate the request counts using one or more web request components as the aggregate keys. See `customKey` below for details. */ customKeys?: outputs.wafv2.WebAclRuleStatementRateBasedStatementCustomKey[]; + /** + * The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + * + * **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + */ + evaluationWindowSec?: number; /** * Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregateKeyType` is set to `FORWARDED_IP`, this block is required. See `forwardedIpConfig` below for details. */ diff --git a/sdk/python/pulumi_aws/__init__.py b/sdk/python/pulumi_aws/__init__.py index 8fe15108c30..ef87a38ba3c 100644 --- a/sdk/python/pulumi_aws/__init__.py +++ b/sdk/python/pulumi_aws/__init__.py @@ -663,6 +663,14 @@ "aws:account/primaryContact:PrimaryContact": "PrimaryContact" } }, + { + "pkg": "aws", + "mod": "account/region", + "fqn": "pulumi_aws.account", + "classes": { + "aws:account/region:Region": "Region" + } + }, { "pkg": "aws", "mod": "acm/certificate", @@ -9807,6 +9815,14 @@ "aws:securitylake/dataLake:DataLake": "DataLake" } }, + { + "pkg": "aws", + "mod": "securitylake/subscriber", + "fqn": "pulumi_aws.securitylake", + "classes": { + "aws:securitylake/subscriber:Subscriber": "Subscriber" + } + }, { "pkg": "aws", "mod": "serverlessrepository/cloudFormationStack", diff --git a/sdk/python/pulumi_aws/account/__init__.py b/sdk/python/pulumi_aws/account/__init__.py index 3c7c5f497df..c167342f6fe 100644 --- a/sdk/python/pulumi_aws/account/__init__.py +++ b/sdk/python/pulumi_aws/account/__init__.py @@ -7,3 +7,4 @@ # Export this package's modules as members: from .alternative_contact import * from .primary_contact import * +from .region import * diff --git a/sdk/python/pulumi_aws/account/region.py b/sdk/python/pulumi_aws/account/region.py new file mode 100644 index 00000000000..4a3e661e6da --- /dev/null +++ b/sdk/python/pulumi_aws/account/region.py @@ -0,0 +1,311 @@ +# 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 pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['RegionArgs', 'Region'] + +@pulumi.input_type +class RegionArgs: + def __init__(__self__, *, + enabled: pulumi.Input[bool], + region_name: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a Region resource. + :param pulumi.Input[bool] enabled: Whether the region is enabled. + :param pulumi.Input[str] region_name: The region name to manage. + :param pulumi.Input[str] account_id: The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + """ + pulumi.set(__self__, "enabled", enabled) + pulumi.set(__self__, "region_name", region_name) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) + + @property + @pulumi.getter + def enabled(self) -> pulumi.Input[bool]: + """ + Whether the region is enabled. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter(name="regionName") + def region_name(self) -> pulumi.Input[str]: + """ + The region name to manage. + """ + return pulumi.get(self, "region_name") + + @region_name.setter + def region_name(self, value: pulumi.Input[str]): + pulumi.set(self, "region_name", value) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + + +@pulumi.input_type +class _RegionState: + def __init__(__self__, *, + account_id: Optional[pulumi.Input[str]] = None, + enabled: Optional[pulumi.Input[bool]] = None, + opt_status: Optional[pulumi.Input[str]] = None, + region_name: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering Region resources. + :param pulumi.Input[str] account_id: The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + :param pulumi.Input[bool] enabled: Whether the region is enabled. + :param pulumi.Input[str] opt_status: The region opt status. + :param pulumi.Input[str] region_name: The region name to manage. + """ + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + if opt_status is not None: + pulumi.set(__self__, "opt_status", opt_status) + if region_name is not None: + pulumi.set(__self__, "region_name", region_name) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + + @property + @pulumi.getter + def enabled(self) -> Optional[pulumi.Input[bool]]: + """ + Whether the region is enabled. + """ + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter(name="optStatus") + def opt_status(self) -> Optional[pulumi.Input[str]]: + """ + The region opt status. + """ + return pulumi.get(self, "opt_status") + + @opt_status.setter + def opt_status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "opt_status", value) + + @property + @pulumi.getter(name="regionName") + def region_name(self) -> Optional[pulumi.Input[str]]: + """ + The region name to manage. + """ + return pulumi.get(self, "region_name") + + @region_name.setter + def region_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region_name", value) + + +class Region(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, + enabled: Optional[pulumi.Input[bool]] = None, + region_name: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. + + ## Example Usage + + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.account.Region("example", + region_name="ap-southeast-3", + enabled=True) + ``` + + + ## Import + + Using `pulumi import`. For example: + + ```sh + $ pulumi import aws:account/region:Region example ap-southeast-3 + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] account_id: The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + :param pulumi.Input[bool] enabled: Whether the region is enabled. + :param pulumi.Input[str] region_name: The region name to manage. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: RegionArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Enable (Opt-In) or Disable (Opt-Out) a particular Region for an AWS account. + + ## Example Usage + + + ```python + import pulumi + import pulumi_aws as aws + + example = aws.account.Region("example", + region_name="ap-southeast-3", + enabled=True) + ``` + + + ## Import + + Using `pulumi import`. For example: + + ```sh + $ pulumi import aws:account/region:Region example ap-southeast-3 + ``` + + :param str resource_name: The name of the resource. + :param RegionArgs 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(RegionArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, + enabled: Optional[pulumi.Input[bool]] = None, + region_name: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = RegionArgs.__new__(RegionArgs) + + __props__.__dict__["account_id"] = account_id + if enabled is None and not opts.urn: + raise TypeError("Missing required property 'enabled'") + __props__.__dict__["enabled"] = enabled + if region_name is None and not opts.urn: + raise TypeError("Missing required property 'region_name'") + __props__.__dict__["region_name"] = region_name + __props__.__dict__["opt_status"] = None + super(Region, __self__).__init__( + 'aws:account/region:Region', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, + enabled: Optional[pulumi.Input[bool]] = None, + opt_status: Optional[pulumi.Input[str]] = None, + region_name: Optional[pulumi.Input[str]] = None) -> 'Region': + """ + Get an existing Region 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] account_id: The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + :param pulumi.Input[bool] enabled: Whether the region is enabled. + :param pulumi.Input[str] opt_status: The region opt status. + :param pulumi.Input[str] region_name: The region name to manage. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _RegionState.__new__(_RegionState) + + __props__.__dict__["account_id"] = account_id + __props__.__dict__["enabled"] = enabled + __props__.__dict__["opt_status"] = opt_status + __props__.__dict__["region_name"] = region_name + return Region(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> pulumi.Output[Optional[str]]: + """ + The ID of the target account when managing member accounts. Will manage current user's account by default if omitted. To use this parameter, the caller must be an identity in the organization's management account or a delegated administrator account. The specified account ID must also be a member account in the same organization. The organization must have all features enabled, and the organization must have trusted access enabled for the Account Management service, and optionally a delegated admin account assigned. + """ + return pulumi.get(self, "account_id") + + @property + @pulumi.getter + def enabled(self) -> pulumi.Output[bool]: + """ + Whether the region is enabled. + """ + return pulumi.get(self, "enabled") + + @property + @pulumi.getter(name="optStatus") + def opt_status(self) -> pulumi.Output[str]: + """ + The region opt status. + """ + return pulumi.get(self, "opt_status") + + @property + @pulumi.getter(name="regionName") + def region_name(self) -> pulumi.Output[str]: + """ + The region name to manage. + """ + return pulumi.get(self, "region_name") + diff --git a/sdk/python/pulumi_aws/batch/_inputs.py b/sdk/python/pulumi_aws/batch/_inputs.py index caf58229b8f..8ec28778530 100644 --- a/sdk/python/pulumi_aws/batch/_inputs.py +++ b/sdk/python/pulumi_aws/batch/_inputs.py @@ -30,6 +30,7 @@ 'JobDefinitionRetryStrategyArgs', 'JobDefinitionRetryStrategyEvaluateOnExitArgs', 'JobDefinitionTimeoutArgs', + 'JobQueueComputeEnvironmentOrderArgs', 'JobQueueTimeoutsArgs', 'SchedulingPolicyFairSharePolicyArgs', 'SchedulingPolicyFairSharePolicyShareDistributionArgs', @@ -1235,6 +1236,43 @@ def attempt_duration_seconds(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "attempt_duration_seconds", value) +@pulumi.input_type +class JobQueueComputeEnvironmentOrderArgs: + def __init__(__self__, *, + compute_environment: pulumi.Input[str], + order: pulumi.Input[int]): + """ + :param pulumi.Input[str] compute_environment: The Amazon Resource Name (ARN) of the compute environment. + :param pulumi.Input[int] order: The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + """ + pulumi.set(__self__, "compute_environment", compute_environment) + pulumi.set(__self__, "order", order) + + @property + @pulumi.getter(name="computeEnvironment") + def compute_environment(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the compute environment. + """ + return pulumi.get(self, "compute_environment") + + @compute_environment.setter + def compute_environment(self, value: pulumi.Input[str]): + pulumi.set(self, "compute_environment", value) + + @property + @pulumi.getter + def order(self) -> pulumi.Input[int]: + """ + The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + """ + return pulumi.get(self, "order") + + @order.setter + def order(self, value: pulumi.Input[int]): + pulumi.set(self, "order", value) + + @pulumi.input_type class JobQueueTimeoutsArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/batch/job_queue.py b/sdk/python/pulumi_aws/batch/job_queue.py index 6c0e5166bbf..def6fd65899 100644 --- a/sdk/python/pulumi_aws/batch/job_queue.py +++ b/sdk/python/pulumi_aws/batch/job_queue.py @@ -16,27 +16,34 @@ @pulumi.input_type class JobQueueArgs: def __init__(__self__, *, - compute_environments: pulumi.Input[Sequence[pulumi.Input[str]]], priority: pulumi.Input[int], state: pulumi.Input[str], + compute_environment_orders: Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]] = None, + compute_environments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, scheduling_policy_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, timeouts: Optional[pulumi.Input['JobQueueTimeoutsArgs']] = None): """ The set of arguments for constructing a JobQueue resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. :param pulumi.Input[int] priority: The priority of the job queue. Job queues with a higher priority are evaluated first when associated with the same compute environment. :param pulumi.Input[str] state: The state of the job queue. Must be one of: `ENABLED` or `DISABLED` + :param pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]] compute_environment_orders: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. :param pulumi.Input[str] name: Specifies the name of the job queue. :param pulumi.Input[str] scheduling_policy_arn: The ARN of the fair share scheduling policy. If this parameter is specified, the job queue uses a fair share scheduling policy. If this parameter isn't specified, the job queue uses a first in, first out (FIFO) scheduling policy. After a job queue is created, you can replace but can't remove the fair share scheduling policy. :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__, "compute_environments", compute_environments) pulumi.set(__self__, "priority", priority) pulumi.set(__self__, "state", state) + if compute_environment_orders is not None: + pulumi.set(__self__, "compute_environment_orders", compute_environment_orders) + if compute_environments is not None: + warnings.warn("""This parameter will be replaced by `compute_environments_order`.""", DeprecationWarning) + pulumi.log.warn("""compute_environments is deprecated: This parameter will be replaced by `compute_environments_order`.""") + if compute_environments is not None: + pulumi.set(__self__, "compute_environments", compute_environments) if name is not None: pulumi.set(__self__, "name", name) if scheduling_policy_arn is not None: @@ -46,19 +53,6 @@ def __init__(__self__, *, if timeouts is not None: pulumi.set(__self__, "timeouts", timeouts) - @property - @pulumi.getter(name="computeEnvironments") - def compute_environments(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. - """ - return pulumi.get(self, "compute_environments") - - @compute_environments.setter - def compute_environments(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "compute_environments", value) - @property @pulumi.getter def priority(self) -> pulumi.Input[int]: @@ -84,6 +78,33 @@ def state(self) -> pulumi.Input[str]: def state(self, value: pulumi.Input[str]): pulumi.set(self, "state", value) + @property + @pulumi.getter(name="computeEnvironmentOrders") + def compute_environment_orders(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]]: + """ + The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + """ + return pulumi.get(self, "compute_environment_orders") + + @compute_environment_orders.setter + def compute_environment_orders(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]]): + pulumi.set(self, "compute_environment_orders", value) + + @property + @pulumi.getter(name="computeEnvironments") + def compute_environments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. + """ + warnings.warn("""This parameter will be replaced by `compute_environments_order`.""", DeprecationWarning) + pulumi.log.warn("""compute_environments is deprecated: This parameter will be replaced by `compute_environments_order`.""") + + return pulumi.get(self, "compute_environments") + + @compute_environments.setter + def compute_environments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "compute_environments", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -134,6 +155,7 @@ def timeouts(self, value: Optional[pulumi.Input['JobQueueTimeoutsArgs']]): class _JobQueueState: def __init__(__self__, *, arn: Optional[pulumi.Input[str]] = None, + compute_environment_orders: Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]] = None, compute_environments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, priority: Optional[pulumi.Input[int]] = None, @@ -145,8 +167,8 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering JobQueue resources. :param pulumi.Input[str] arn: The Amazon Resource Name of the job queue. - :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. + :param pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]] compute_environment_orders: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. :param pulumi.Input[str] name: Specifies the name of the job queue. :param pulumi.Input[int] priority: The priority of the job queue. Job queues with a higher priority are evaluated first when associated with the same compute environment. @@ -157,6 +179,11 @@ def __init__(__self__, *, """ if arn is not None: pulumi.set(__self__, "arn", arn) + if compute_environment_orders is not None: + pulumi.set(__self__, "compute_environment_orders", compute_environment_orders) + if compute_environments is not None: + warnings.warn("""This parameter will be replaced by `compute_environments_order`.""", DeprecationWarning) + pulumi.log.warn("""compute_environments is deprecated: This parameter will be replaced by `compute_environments_order`.""") if compute_environments is not None: pulumi.set(__self__, "compute_environments", compute_environments) if name is not None: @@ -189,13 +216,27 @@ def arn(self) -> Optional[pulumi.Input[str]]: def arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "arn", value) + @property + @pulumi.getter(name="computeEnvironmentOrders") + def compute_environment_orders(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]]: + """ + The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + """ + return pulumi.get(self, "compute_environment_orders") + + @compute_environment_orders.setter + def compute_environment_orders(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobQueueComputeEnvironmentOrderArgs']]]]): + pulumi.set(self, "compute_environment_orders", value) + @property @pulumi.getter(name="computeEnvironments") def compute_environments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. + (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. """ + warnings.warn("""This parameter will be replaced by `compute_environments_order`.""", DeprecationWarning) + pulumi.log.warn("""compute_environments is deprecated: This parameter will be replaced by `compute_environments_order`.""") + return pulumi.get(self, "compute_environments") @compute_environments.setter @@ -293,6 +334,7 @@ class JobQueue(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + compute_environment_orders: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobQueueComputeEnvironmentOrderArgs']]]]] = None, compute_environments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, priority: Optional[pulumi.Input[int]] = None, @@ -317,9 +359,15 @@ def __init__(__self__, name="tf-test-batch-job-queue", state="ENABLED", priority=1, - compute_environments=[ - test_environment1["arn"], - test_environment2["arn"], + compute_environment_orders=[ + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=1, + compute_environment=test_environment1["arn"], + ), + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=2, + compute_environment=test_environment2["arn"], + ), ]) ``` @@ -346,9 +394,15 @@ def __init__(__self__, scheduling_policy_arn=example.arn, state="ENABLED", priority=1, - compute_environments=[ - test_environment1["arn"], - test_environment2["arn"], + compute_environment_orders=[ + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=1, + compute_environment=test_environment1["arn"], + ), + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=2, + compute_environment=test_environment2["arn"], + ), ]) ``` @@ -363,8 +417,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobQueueComputeEnvironmentOrderArgs']]]] compute_environment_orders: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. :param pulumi.Input[str] name: Specifies the name of the job queue. :param pulumi.Input[int] priority: The priority of the job queue. Job queues with a higher priority are evaluated first when associated with the same compute environment. @@ -394,9 +448,15 @@ def __init__(__self__, name="tf-test-batch-job-queue", state="ENABLED", priority=1, - compute_environments=[ - test_environment1["arn"], - test_environment2["arn"], + compute_environment_orders=[ + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=1, + compute_environment=test_environment1["arn"], + ), + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=2, + compute_environment=test_environment2["arn"], + ), ]) ``` @@ -423,9 +483,15 @@ def __init__(__self__, scheduling_policy_arn=example.arn, state="ENABLED", priority=1, - compute_environments=[ - test_environment1["arn"], - test_environment2["arn"], + compute_environment_orders=[ + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=1, + compute_environment=test_environment1["arn"], + ), + aws.batch.JobQueueComputeEnvironmentOrderArgs( + order=2, + compute_environment=test_environment2["arn"], + ), ]) ``` @@ -453,6 +519,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + compute_environment_orders: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobQueueComputeEnvironmentOrderArgs']]]]] = None, compute_environments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, priority: Optional[pulumi.Input[int]] = None, @@ -469,8 +536,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = JobQueueArgs.__new__(JobQueueArgs) - if compute_environments is None and not opts.urn: - raise TypeError("Missing required property 'compute_environments'") + __props__.__dict__["compute_environment_orders"] = compute_environment_orders __props__.__dict__["compute_environments"] = compute_environments __props__.__dict__["name"] = name if priority is None and not opts.urn: @@ -495,6 +561,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, arn: Optional[pulumi.Input[str]] = None, + compute_environment_orders: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobQueueComputeEnvironmentOrderArgs']]]]] = None, compute_environments: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, name: Optional[pulumi.Input[str]] = None, priority: Optional[pulumi.Input[int]] = None, @@ -511,8 +578,8 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] arn: The Amazon Resource Name of the job queue. - :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobQueueComputeEnvironmentOrderArgs']]]] compute_environment_orders: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + :param pulumi.Input[Sequence[pulumi.Input[str]]] compute_environments: (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. :param pulumi.Input[str] name: Specifies the name of the job queue. :param pulumi.Input[int] priority: The priority of the job queue. Job queues with a higher priority are evaluated first when associated with the same compute environment. @@ -526,6 +593,7 @@ def get(resource_name: str, __props__ = _JobQueueState.__new__(_JobQueueState) __props__.__dict__["arn"] = arn + __props__.__dict__["compute_environment_orders"] = compute_environment_orders __props__.__dict__["compute_environments"] = compute_environments __props__.__dict__["name"] = name __props__.__dict__["priority"] = priority @@ -544,13 +612,23 @@ def arn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "arn") + @property + @pulumi.getter(name="computeEnvironmentOrders") + def compute_environment_orders(self) -> pulumi.Output[Optional[Sequence['outputs.JobQueueComputeEnvironmentOrder']]]: + """ + The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. + """ + return pulumi.get(self, "compute_environment_orders") + @property @pulumi.getter(name="computeEnvironments") - def compute_environments(self) -> pulumi.Output[Sequence[str]]: + def compute_environments(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - List of compute environment ARNs mapped to a job queue. - The position of the compute environments in the list will dictate the order. + (Optional) This parameter is deprecated, please use `compute_environment_order` instead. List of compute environment ARNs mapped to a job queue. The position of the compute environments in the list will dictate the order. When importing a AWS Batch Job Queue, the parameter `compute_environments` will always be used over `compute_environment_order`. Please adjust your HCL accordingly. """ + warnings.warn("""This parameter will be replaced by `compute_environments_order`.""", DeprecationWarning) + pulumi.log.warn("""compute_environments is deprecated: This parameter will be replaced by `compute_environments_order`.""") + return pulumi.get(self, "compute_environments") @property diff --git a/sdk/python/pulumi_aws/batch/outputs.py b/sdk/python/pulumi_aws/batch/outputs.py index 3fa30c1872f..e2011e7c81c 100644 --- a/sdk/python/pulumi_aws/batch/outputs.py +++ b/sdk/python/pulumi_aws/batch/outputs.py @@ -31,6 +31,7 @@ 'JobDefinitionRetryStrategy', 'JobDefinitionRetryStrategyEvaluateOnExit', 'JobDefinitionTimeout', + 'JobQueueComputeEnvironmentOrder', 'JobQueueTimeouts', 'SchedulingPolicyFairSharePolicy', 'SchedulingPolicyFairSharePolicyShareDistribution', @@ -1288,6 +1289,52 @@ def attempt_duration_seconds(self) -> Optional[int]: return pulumi.get(self, "attempt_duration_seconds") +@pulumi.output_type +class JobQueueComputeEnvironmentOrder(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "computeEnvironment": + suggest = "compute_environment" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobQueueComputeEnvironmentOrder. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobQueueComputeEnvironmentOrder.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobQueueComputeEnvironmentOrder.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + compute_environment: str, + order: int): + """ + :param str compute_environment: The Amazon Resource Name (ARN) of the compute environment. + :param int order: The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + """ + pulumi.set(__self__, "compute_environment", compute_environment) + pulumi.set(__self__, "order", order) + + @property + @pulumi.getter(name="computeEnvironment") + def compute_environment(self) -> str: + """ + The Amazon Resource Name (ARN) of the compute environment. + """ + return pulumi.get(self, "compute_environment") + + @property + @pulumi.getter + def order(self) -> int: + """ + The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first. + """ + return pulumi.get(self, "order") + + @pulumi.output_type class JobQueueTimeouts(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws/guardduty/_inputs.py b/sdk/python/pulumi_aws/guardduty/_inputs.py index 44337edc5aa..febba0e8663 100644 --- a/sdk/python/pulumi_aws/guardduty/_inputs.py +++ b/sdk/python/pulumi_aws/guardduty/_inputs.py @@ -243,7 +243,7 @@ def __init__(__self__, *, name: pulumi.Input[str], status: pulumi.Input[str]): """ - :param pulumi.Input[str] name: The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + :param pulumi.Input[str] name: The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. :param pulumi.Input[str] status: The status of the additional configuration. Valid values: `ENABLED`, `DISABLED`. """ pulumi.set(__self__, "name", name) @@ -253,7 +253,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. """ return pulumi.get(self, "name") diff --git a/sdk/python/pulumi_aws/guardduty/detector_feature.py b/sdk/python/pulumi_aws/guardduty/detector_feature.py index e464722872b..9c933619570 100644 --- a/sdk/python/pulumi_aws/guardduty/detector_feature.py +++ b/sdk/python/pulumi_aws/guardduty/detector_feature.py @@ -25,7 +25,7 @@ def __init__(__self__, *, :param pulumi.Input[str] detector_id: Amazon GuardDuty detector ID. :param pulumi.Input[str] status: The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. :param pulumi.Input[Sequence[pulumi.Input['DetectorFeatureAdditionalConfigurationArgs']]] additional_configurations: Additional feature configuration block. See below. - :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. """ pulumi.set(__self__, "detector_id", detector_id) pulumi.set(__self__, "status", status) @@ -74,7 +74,7 @@ def additional_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. """ return pulumi.get(self, "name") @@ -94,7 +94,7 @@ def __init__(__self__, *, Input properties used for looking up and filtering DetectorFeature resources. :param pulumi.Input[Sequence[pulumi.Input['DetectorFeatureAdditionalConfigurationArgs']]] additional_configurations: Additional feature configuration block. See below. :param pulumi.Input[str] detector_id: Amazon GuardDuty detector ID. - :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. :param pulumi.Input[str] status: The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. """ if additional_configurations is not None: @@ -134,7 +134,7 @@ def detector_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. """ return pulumi.get(self, "name") @@ -193,7 +193,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DetectorFeatureAdditionalConfigurationArgs']]]] additional_configurations: Additional feature configuration block. See below. :param pulumi.Input[str] detector_id: Amazon GuardDuty detector ID. - :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. :param pulumi.Input[str] status: The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. """ ... @@ -285,7 +285,7 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DetectorFeatureAdditionalConfigurationArgs']]]] additional_configurations: Additional feature configuration block. See below. :param pulumi.Input[str] detector_id: Amazon GuardDuty detector ID. - :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + :param pulumi.Input[str] name: The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. :param pulumi.Input[str] status: The status of the detector feature. Valid values: `ENABLED`, `DISABLED`. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -318,7 +318,7 @@ def detector_id(self) -> pulumi.Output[str]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`. + The name of the detector feature. Valid values: `S3_DATA_EVENTS`, `EKS_AUDIT_LOGS`, `EBS_MALWARE_PROTECTION`, `RDS_LOGIN_EVENTS`, `EKS_RUNTIME_MONITORING`, `LAMBDA_NETWORK_LOGS`, `RUNTIME_MONITORING`. """ return pulumi.get(self, "name") diff --git a/sdk/python/pulumi_aws/guardduty/outputs.py b/sdk/python/pulumi_aws/guardduty/outputs.py index ce80ac3f38e..fcb54bce40a 100644 --- a/sdk/python/pulumi_aws/guardduty/outputs.py +++ b/sdk/python/pulumi_aws/guardduty/outputs.py @@ -280,7 +280,7 @@ def __init__(__self__, *, name: str, status: str): """ - :param str name: The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + :param str name: The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. :param str status: The status of the additional configuration. Valid values: `ENABLED`, `DISABLED`. """ pulumi.set(__self__, "name", name) @@ -290,7 +290,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`. + The name of the additional configuration. Valid values: `EKS_ADDON_MANAGEMENT`, `ECS_FARGATE_AGENT_MANAGEMENT`. """ return pulumi.get(self, "name") diff --git a/sdk/python/pulumi_aws/iot/policy.py b/sdk/python/pulumi_aws/iot/policy.py index dc33f52ea01..c511dc65713 100644 --- a/sdk/python/pulumi_aws/iot/policy.py +++ b/sdk/python/pulumi_aws/iot/policy.py @@ -15,15 +15,19 @@ class PolicyArgs: def __init__(__self__, *, policy: pulumi.Input[str], - name: Optional[pulumi.Input[str]] = None): + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a Policy resource. :param pulumi.Input[str] policy: The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. :param pulumi.Input[str] name: The name of the policy. + :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__, "policy", policy) if name is not None: pulumi.set(__self__, "name", name) + if tags is not None: + pulumi.set(__self__, "tags", tags) @property @pulumi.getter @@ -49,6 +53,18 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter + def 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) + @pulumi.input_type class _PolicyState: @@ -56,13 +72,17 @@ def __init__(__self__, *, arn: Optional[pulumi.Input[str]] = None, default_version_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - policy: Optional[pulumi.Input[str]] = None): + policy: 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 Policy resources. :param pulumi.Input[str] arn: The ARN assigned by AWS to this policy. :param pulumi.Input[str] default_version_id: The default version of this policy. :param pulumi.Input[str] name: The name of the policy. :param pulumi.Input[str] policy: The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. + :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. """ if arn is not None: pulumi.set(__self__, "arn", arn) @@ -72,6 +92,13 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if policy is not None: pulumi.set(__self__, "policy", policy) + 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 @@ -121,6 +148,33 @@ def policy(self) -> Optional[pulumi.Input[str]]: def policy(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "policy", 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") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + 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 Policy(pulumi.CustomResource): @overload @@ -129,6 +183,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, policy: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ Provides an IoT policy. @@ -168,6 +223,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] name: The name of the policy. :param pulumi.Input[str] policy: The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. + :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. """ ... @overload @@ -226,6 +282,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, policy: 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): @@ -239,8 +296,10 @@ def _internal_init(__self__, if policy is None and not opts.urn: raise TypeError("Missing required property 'policy'") __props__.__dict__["policy"] = policy + __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None __props__.__dict__["default_version_id"] = None + __props__.__dict__["tags_all"] = None super(Policy, __self__).__init__( 'aws:iot/policy:Policy', resource_name, @@ -254,7 +313,9 @@ def get(resource_name: str, arn: Optional[pulumi.Input[str]] = None, default_version_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - policy: Optional[pulumi.Input[str]] = None) -> 'Policy': + policy: 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) -> 'Policy': """ Get an existing Policy resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -266,6 +327,8 @@ def get(resource_name: str, :param pulumi.Input[str] default_version_id: The default version of this policy. :param pulumi.Input[str] name: The name of the policy. :param pulumi.Input[str] policy: The policy document. This is a JSON formatted string. Use the [IoT Developer Guide](http://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html) for more information on IoT Policies. + :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. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -275,6 +338,8 @@ def get(resource_name: str, __props__.__dict__["default_version_id"] = default_version_id __props__.__dict__["name"] = name __props__.__dict__["policy"] = policy + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all return Policy(resource_name, opts=opts, __props__=__props__) @property @@ -309,3 +374,22 @@ def policy(self) -> pulumi.Output[str]: """ return pulumi.get(self, "policy") + @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") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + return pulumi.get(self, "tags_all") + diff --git a/sdk/python/pulumi_aws/iot/role_alias.py b/sdk/python/pulumi_aws/iot/role_alias.py index 7e79cd98d1f..603c2b976fe 100644 --- a/sdk/python/pulumi_aws/iot/role_alias.py +++ b/sdk/python/pulumi_aws/iot/role_alias.py @@ -16,17 +16,21 @@ class RoleAliasArgs: def __init__(__self__, *, alias: pulumi.Input[str], role_arn: pulumi.Input[str], - credential_duration: Optional[pulumi.Input[int]] = None): + credential_duration: Optional[pulumi.Input[int]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ The set of arguments for constructing a RoleAlias resource. :param pulumi.Input[str] alias: The name of the role alias. :param pulumi.Input[str] role_arn: The identity of the role to which the alias refers. :param pulumi.Input[int] credential_duration: The duration of the credential, in seconds. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 900 seconds (15 minutes) to 43200 seconds (12 hours). + :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__, "alias", alias) pulumi.set(__self__, "role_arn", role_arn) if credential_duration is not None: pulumi.set(__self__, "credential_duration", credential_duration) + if tags is not None: + pulumi.set(__self__, "tags", tags) @property @pulumi.getter @@ -64,6 +68,18 @@ def credential_duration(self) -> Optional[pulumi.Input[int]]: def credential_duration(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "credential_duration", 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) + @pulumi.input_type class _RoleAliasState: @@ -71,13 +87,17 @@ def __init__(__self__, *, alias: Optional[pulumi.Input[str]] = None, arn: Optional[pulumi.Input[str]] = None, credential_duration: Optional[pulumi.Input[int]] = None, - role_arn: Optional[pulumi.Input[str]] = None): + role_arn: 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 RoleAlias resources. :param pulumi.Input[str] alias: The name of the role alias. :param pulumi.Input[str] arn: The ARN assigned by AWS to this role alias. :param pulumi.Input[int] credential_duration: The duration of the credential, in seconds. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 900 seconds (15 minutes) to 43200 seconds (12 hours). :param pulumi.Input[str] role_arn: The identity of the role to which the alias refers. + :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. """ if alias is not None: pulumi.set(__self__, "alias", alias) @@ -87,6 +107,13 @@ def __init__(__self__, *, pulumi.set(__self__, "credential_duration", credential_duration) if role_arn is not None: pulumi.set(__self__, "role_arn", role_arn) + 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 @@ -136,6 +163,33 @@ def role_arn(self) -> Optional[pulumi.Input[str]]: def role_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "role_arn", 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") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + 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 RoleAlias(pulumi.CustomResource): @overload @@ -145,6 +199,7 @@ def __init__(__self__, alias: Optional[pulumi.Input[str]] = None, credential_duration: Optional[pulumi.Input[int]] = None, role_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, __props__=None): """ Provides an IoT role alias. @@ -162,6 +217,7 @@ def __init__(__self__, :param pulumi.Input[str] alias: The name of the role alias. :param pulumi.Input[int] credential_duration: The duration of the credential, in seconds. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 900 seconds (15 minutes) to 43200 seconds (12 hours). :param pulumi.Input[str] role_arn: The identity of the role to which the alias refers. + :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. """ ... @overload @@ -198,6 +254,7 @@ def _internal_init(__self__, alias: Optional[pulumi.Input[str]] = None, credential_duration: Optional[pulumi.Input[int]] = None, role_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): @@ -214,7 +271,9 @@ def _internal_init(__self__, if role_arn is None and not opts.urn: raise TypeError("Missing required property 'role_arn'") __props__.__dict__["role_arn"] = role_arn + __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None + __props__.__dict__["tags_all"] = None super(RoleAlias, __self__).__init__( 'aws:iot/roleAlias:RoleAlias', resource_name, @@ -228,7 +287,9 @@ def get(resource_name: str, alias: Optional[pulumi.Input[str]] = None, arn: Optional[pulumi.Input[str]] = None, credential_duration: Optional[pulumi.Input[int]] = None, - role_arn: Optional[pulumi.Input[str]] = None) -> 'RoleAlias': + role_arn: 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) -> 'RoleAlias': """ Get an existing RoleAlias resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -240,6 +301,8 @@ def get(resource_name: str, :param pulumi.Input[str] arn: The ARN assigned by AWS to this role alias. :param pulumi.Input[int] credential_duration: The duration of the credential, in seconds. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 900 seconds (15 minutes) to 43200 seconds (12 hours). :param pulumi.Input[str] role_arn: The identity of the role to which the alias refers. + :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. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -249,6 +312,8 @@ def get(resource_name: str, __props__.__dict__["arn"] = arn __props__.__dict__["credential_duration"] = credential_duration __props__.__dict__["role_arn"] = role_arn + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all return RoleAlias(resource_name, opts=opts, __props__=__props__) @property @@ -283,3 +348,22 @@ def role_arn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "role_arn") + @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") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + return pulumi.get(self, "tags_all") + diff --git a/sdk/python/pulumi_aws/opensearch/_inputs.py b/sdk/python/pulumi_aws/opensearch/_inputs.py index 6de39fe61b6..34f1e7de9da 100644 --- a/sdk/python/pulumi_aws/opensearch/_inputs.py +++ b/sdk/python/pulumi_aws/opensearch/_inputs.py @@ -177,17 +177,23 @@ class DomainAutoTuneOptionsArgs: def __init__(__self__, *, desired_state: pulumi.Input[str], maintenance_schedules: Optional[pulumi.Input[Sequence[pulumi.Input['DomainAutoTuneOptionsMaintenanceScheduleArgs']]]] = None, - rollback_on_disable: Optional[pulumi.Input[str]] = None): + rollback_on_disable: Optional[pulumi.Input[str]] = None, + use_off_peak_window: Optional[pulumi.Input[bool]] = None): """ :param pulumi.Input[str] desired_state: Auto-Tune desired state for the domain. Valid values: `ENABLED` or `DISABLED`. :param pulumi.Input[Sequence[pulumi.Input['DomainAutoTuneOptionsMaintenanceScheduleArgs']]] maintenance_schedules: Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + + **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. :param pulumi.Input[str] rollback_on_disable: Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. + :param pulumi.Input[bool] use_off_peak_window: Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. """ pulumi.set(__self__, "desired_state", desired_state) if maintenance_schedules is not None: pulumi.set(__self__, "maintenance_schedules", maintenance_schedules) if rollback_on_disable is not None: pulumi.set(__self__, "rollback_on_disable", rollback_on_disable) + if use_off_peak_window is not None: + pulumi.set(__self__, "use_off_peak_window", use_off_peak_window) @property @pulumi.getter(name="desiredState") @@ -206,6 +212,8 @@ def desired_state(self, value: pulumi.Input[str]): def maintenance_schedules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainAutoTuneOptionsMaintenanceScheduleArgs']]]]: """ Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + + **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. """ return pulumi.get(self, "maintenance_schedules") @@ -225,6 +233,18 @@ def rollback_on_disable(self) -> Optional[pulumi.Input[str]]: def rollback_on_disable(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "rollback_on_disable", value) + @property + @pulumi.getter(name="useOffPeakWindow") + def use_off_peak_window(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + """ + return pulumi.get(self, "use_off_peak_window") + + @use_off_peak_window.setter + def use_off_peak_window(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "use_off_peak_window", value) + @pulumi.input_type class DomainAutoTuneOptionsMaintenanceScheduleArgs: diff --git a/sdk/python/pulumi_aws/opensearch/outputs.py b/sdk/python/pulumi_aws/opensearch/outputs.py index b9bd23fc49e..7fdb0cdc85e 100644 --- a/sdk/python/pulumi_aws/opensearch/outputs.py +++ b/sdk/python/pulumi_aws/opensearch/outputs.py @@ -213,6 +213,8 @@ def __key_warning(key: str): suggest = "maintenance_schedules" elif key == "rollbackOnDisable": suggest = "rollback_on_disable" + elif key == "useOffPeakWindow": + suggest = "use_off_peak_window" if suggest: pulumi.log.warn(f"Key '{key}' not found in DomainAutoTuneOptions. Access the value via the '{suggest}' property getter instead.") @@ -228,17 +230,23 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, desired_state: str, maintenance_schedules: Optional[Sequence['outputs.DomainAutoTuneOptionsMaintenanceSchedule']] = None, - rollback_on_disable: Optional[str] = None): + rollback_on_disable: Optional[str] = None, + use_off_peak_window: Optional[bool] = None): """ :param str desired_state: Auto-Tune desired state for the domain. Valid values: `ENABLED` or `DISABLED`. :param Sequence['DomainAutoTuneOptionsMaintenanceScheduleArgs'] maintenance_schedules: Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + + **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. :param str rollback_on_disable: Whether to roll back to default Auto-Tune settings when disabling Auto-Tune. Valid values: `DEFAULT_ROLLBACK` or `NO_ROLLBACK`. + :param bool use_off_peak_window: Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. """ pulumi.set(__self__, "desired_state", desired_state) if maintenance_schedules is not None: pulumi.set(__self__, "maintenance_schedules", maintenance_schedules) if rollback_on_disable is not None: pulumi.set(__self__, "rollback_on_disable", rollback_on_disable) + if use_off_peak_window is not None: + pulumi.set(__self__, "use_off_peak_window", use_off_peak_window) @property @pulumi.getter(name="desiredState") @@ -253,6 +261,8 @@ def desired_state(self) -> str: def maintenance_schedules(self) -> Optional[Sequence['outputs.DomainAutoTuneOptionsMaintenanceSchedule']]: """ Configuration block for Auto-Tune maintenance windows. Can be specified multiple times for each maintenance window. Detailed below. + + **NOTE:** Maintenance windows are deprecated and have been replaced with [off-peak windows](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/off-peak.html). Consequently, `maintenance_schedule` configuration blocks cannot be specified when `use_off_peak_window` is set to `true`. """ return pulumi.get(self, "maintenance_schedules") @@ -264,6 +274,14 @@ def rollback_on_disable(self) -> Optional[str]: """ return pulumi.get(self, "rollback_on_disable") + @property + @pulumi.getter(name="useOffPeakWindow") + def use_off_peak_window(self) -> Optional[bool]: + """ + Whether to schedule Auto-Tune optimizations that require blue/green deployments during the domain's configured daily off-peak window. Defaults to `false`. + """ + return pulumi.get(self, "use_off_peak_window") + @pulumi.output_type class DomainAutoTuneOptionsMaintenanceSchedule(dict): diff --git a/sdk/python/pulumi_aws/rds/cluster.py b/sdk/python/pulumi_aws/rds/cluster.py index 5b693ba864a..07dca9ae97f 100644 --- a/sdk/python/pulumi_aws/rds/cluster.py +++ b/sdk/python/pulumi_aws/rds/cluster.py @@ -125,7 +125,7 @@ def __init__(__self__, *, :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Conflicts with `global_cluster_identifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. When restoring an unencrypted `snapshot_identifier`, the `kms_key_id` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. - :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. 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[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster """ @@ -828,7 +828,7 @@ def storage_encrypted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="storageType") def storage_type(self) -> Optional[pulumi.Input[str]]: """ - (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). """ return pulumi.get(self, "storage_type") @@ -988,7 +988,7 @@ def __init__(__self__, *, :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Conflicts with `global_cluster_identifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. When restoring an unencrypted `snapshot_identifier`, the `kms_key_id` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. - :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. 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[Sequence[pulumi.Input[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster @@ -1797,7 +1797,7 @@ def storage_encrypted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="storageType") def storage_type(self) -> Optional[pulumi.Input[str]]: """ - (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). """ return pulumi.get(self, "storage_type") @@ -2180,7 +2180,7 @@ def __init__(__self__, :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Conflicts with `global_cluster_identifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. When restoring an unencrypted `snapshot_identifier`, the `kms_key_id` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. - :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. 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[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster """ @@ -2690,7 +2690,7 @@ def get(resource_name: str, :param pulumi.Input[str] snapshot_identifier: Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot. Conflicts with `global_cluster_identifier`. Clusters cannot be restored from snapshot **and** joined to an existing global cluster in a single operation. See the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.use-snapshot) or the Global Cluster Restored From Snapshot example for instructions on building a global cluster starting with a snapshot. :param pulumi.Input[str] source_region: The source region for an encrypted replica DB cluster. :param pulumi.Input[bool] storage_encrypted: Specifies whether the DB cluster is encrypted. The default is `false` for `provisioned` `engine_mode` and `true` for `serverless` `engine_mode`. When restoring an unencrypted `snapshot_identifier`, the `kms_key_id` argument must be provided to encrypt the restored cluster. The provider will only perform drift detection if a configuration value is provided. - :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + :param pulumi.Input[str] storage_type: (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of tags to assign to the DB cluster. 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[Sequence[pulumi.Input[str]]] vpc_security_group_ids: List of VPC security groups to associate with the Cluster @@ -3217,7 +3217,7 @@ def storage_encrypted(self) -> pulumi.Output[bool]: @pulumi.getter(name="storageType") def storage_type(self) -> pulumi.Output[str]: """ - (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). + (Forces new for Multi-AZ DB clusters) Specifies the storage type to be associated with the DB cluster. For Aurora DB clusters, `storage_type` modifications can be done in-place. For Multi-AZ DB Clusters, the `iops` argument must also be set. Valid values are: `""`, `aurora-iopt1` (Aurora DB Clusters); `io1`, `io2` (Multi-AZ DB Clusters). Default: `""` (Aurora DB Clusters); `io1` (Multi-AZ DB Clusters). """ return pulumi.get(self, "storage_type") diff --git a/sdk/python/pulumi_aws/rds/cluster_instance.py b/sdk/python/pulumi_aws/rds/cluster_instance.py index 6c1d49015d4..bf7919e541c 100644 --- a/sdk/python/pulumi_aws/rds/cluster_instance.py +++ b/sdk/python/pulumi_aws/rds/cluster_instance.py @@ -43,7 +43,7 @@ def __init__(__self__, *, The set of arguments for constructing a ClusterInstance resource. :param pulumi.Input[str] cluster_identifier: Identifier of the `rds.Cluster` in which to launch this instance. :param pulumi.Input[str] engine: Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). :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. :param pulumi.Input[bool] apply_immediately: Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`. :param pulumi.Input[bool] auto_minor_version_upgrade: Indicates that minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`. @@ -130,7 +130,7 @@ def cluster_identifier(self, value: pulumi.Input[str]): def engine(self) -> pulumi.Input[str]: """ Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). """ return pulumi.get(self, "engine") @@ -455,7 +455,7 @@ def __init__(__self__, *, :param pulumi.Input[str] dbi_resource_id: Region-unique, immutable identifier for the DB instance. :param pulumi.Input[str] endpoint: DNS address for this instance. May not be writable :param pulumi.Input[str] engine: Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). :param pulumi.Input[str] engine_version: Database engine version. :param pulumi.Input[str] engine_version_actual: Database engine version :param pulumi.Input[str] identifier: Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier. @@ -699,7 +699,7 @@ def endpoint(self, value: Optional[pulumi.Input[str]]): def engine(self) -> Optional[pulumi.Input[str]]: """ Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). """ return pulumi.get(self, "engine") @@ -1059,7 +1059,7 @@ def __init__(__self__, :param pulumi.Input[str] db_parameter_group_name: Name of the DB parameter group to associate with this instance. :param pulumi.Input[str] db_subnet_group_name: DB subnet group to associate with this DB instance. **NOTE:** This must match the `db_subnet_group_name` of the attached `rds.Cluster`. :param pulumi.Input[str] engine: Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). :param pulumi.Input[str] engine_version: Database engine version. :param pulumi.Input[str] identifier: Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier. :param pulumi.Input[str] identifier_prefix: Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`. @@ -1287,7 +1287,7 @@ def get(resource_name: str, :param pulumi.Input[str] dbi_resource_id: Region-unique, immutable identifier for the DB instance. :param pulumi.Input[str] endpoint: DNS address for this instance. May not be writable :param pulumi.Input[str] engine: Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). :param pulumi.Input[str] engine_version: Database engine version. :param pulumi.Input[str] engine_version_actual: Database engine version :param pulumi.Input[str] identifier: Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier. @@ -1451,7 +1451,7 @@ def endpoint(self) -> pulumi.Output[str]: def engine(self) -> pulumi.Output[str]: """ Name of the database engine to be used for the RDS cluster instance. - Valid Values: `aurora-mysql`, `aurora-postgresql`. + Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`.(Note that `mysql` and `postgres` are Multi-AZ RDS clusters). """ return pulumi.get(self, "engine") diff --git a/sdk/python/pulumi_aws/rds/get_engine_version.py b/sdk/python/pulumi_aws/rds/get_engine_version.py index ff6aa530835..765e62a15fa 100644 --- a/sdk/python/pulumi_aws/rds/get_engine_version.py +++ b/sdk/python/pulumi_aws/rds/get_engine_version.py @@ -23,7 +23,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, 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_log_exports_to_cloudwatch=None, supports_parallel_query=None, supports_read_replica=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_global_databases=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) @@ -42,6 +42,12 @@ def __init__(__self__, default_character_set=None, default_only=None, engine=Non if filters and not isinstance(filters, list): raise TypeError("Expected argument 'filters' to be a list") pulumi.set(__self__, "filters", filters) + if has_major_target and not isinstance(has_major_target, bool): + raise TypeError("Expected argument 'has_major_target' to be a bool") + pulumi.set(__self__, "has_major_target", has_major_target) + if has_minor_target and not isinstance(has_minor_target, bool): + raise TypeError("Expected argument 'has_minor_target' to be a bool") + pulumi.set(__self__, "has_minor_target", has_minor_target) if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) @@ -90,6 +96,12 @@ def __init__(__self__, default_character_set=None, default_only=None, engine=Non if supports_read_replica and not isinstance(supports_read_replica, bool): raise TypeError("Expected argument 'supports_read_replica' to be a bool") pulumi.set(__self__, "supports_read_replica", supports_read_replica) + if valid_major_targets and not isinstance(valid_major_targets, list): + raise TypeError("Expected argument 'valid_major_targets' to be a list") + pulumi.set(__self__, "valid_major_targets", valid_major_targets) + if valid_minor_targets and not isinstance(valid_minor_targets, list): + raise TypeError("Expected argument 'valid_minor_targets' to be a list") + pulumi.set(__self__, "valid_minor_targets", valid_minor_targets) if valid_upgrade_targets and not isinstance(valid_upgrade_targets, list): raise TypeError("Expected argument 'valid_upgrade_targets' to be a list") pulumi.set(__self__, "valid_upgrade_targets", valid_upgrade_targets) @@ -107,7 +119,7 @@ def __init__(__self__, default_character_set=None, default_only=None, engine=Non @pulumi.getter(name="defaultCharacterSet") def default_character_set(self) -> str: """ - The default character set for new instances of this engine version. + Default character set for new instances of the engine version. """ return pulumi.get(self, "default_character_set") @@ -125,7 +137,7 @@ def engine(self) -> str: @pulumi.getter(name="engineDescription") def engine_description(self) -> str: """ - Description of the database engine. + Description of the engine. """ return pulumi.get(self, "engine_description") @@ -133,7 +145,7 @@ def engine_description(self) -> str: @pulumi.getter(name="exportableLogTypes") def exportable_log_types(self) -> Sequence[str]: """ - Set of log types that the database engine has available for export to CloudWatch Logs. + Set of log types that the engine version has available for export to CloudWatch Logs. """ return pulumi.get(self, "exportable_log_types") @@ -142,6 +154,16 @@ def exportable_log_types(self) -> Sequence[str]: def filters(self) -> Optional[Sequence['outputs.GetEngineVersionFilterResult']]: return pulumi.get(self, "filters") + @property + @pulumi.getter(name="hasMajorTarget") + def has_major_target(self) -> Optional[bool]: + return pulumi.get(self, "has_major_target") + + @property + @pulumi.getter(name="hasMinorTarget") + def has_minor_target(self) -> Optional[bool]: + return pulumi.get(self, "has_minor_target") + @property @pulumi.getter def id(self) -> str: @@ -184,7 +206,7 @@ def preferred_versions(self) -> Optional[Sequence[str]]: @pulumi.getter def status(self) -> str: """ - Status of the database engine version, either available or deprecated. + Status of the engine version, either `available` or `deprecated`. """ return pulumi.get(self, "status") @@ -192,7 +214,7 @@ def status(self) -> str: @pulumi.getter(name="supportedCharacterSets") def supported_character_sets(self) -> Sequence[str]: """ - Set of the character sets supported by this engine. + Set of character sets supported by th engine version. """ return pulumi.get(self, "supported_character_sets") @@ -200,7 +222,7 @@ def supported_character_sets(self) -> Sequence[str]: @pulumi.getter(name="supportedFeatureNames") def supported_feature_names(self) -> Sequence[str]: """ - Set of features supported by the database engine. + Set of features supported by the engine version. """ return pulumi.get(self, "supported_feature_names") @@ -208,7 +230,7 @@ def supported_feature_names(self) -> Sequence[str]: @pulumi.getter(name="supportedModes") def supported_modes(self) -> Sequence[str]: """ - Set of the supported database engine modes. + Set of supported engine version modes. """ return pulumi.get(self, "supported_modes") @@ -216,7 +238,7 @@ def supported_modes(self) -> Sequence[str]: @pulumi.getter(name="supportedTimezones") def supported_timezones(self) -> Sequence[str]: """ - Set of the time zones supported by this engine. + Set of the time zones supported by the engine version. """ return pulumi.get(self, "supported_timezones") @@ -224,7 +246,7 @@ def supported_timezones(self) -> Sequence[str]: @pulumi.getter(name="supportsGlobalDatabases") def supports_global_databases(self) -> bool: """ - Indicates whether you can use Aurora global databases with a specific database engine version. + Whether you can use Aurora global databases with the engine version. """ return pulumi.get(self, "supports_global_databases") @@ -232,7 +254,7 @@ def supports_global_databases(self) -> bool: @pulumi.getter(name="supportsLogExportsToCloudwatch") def supports_log_exports_to_cloudwatch(self) -> bool: """ - Indicates whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. + Whether the engine version supports exporting the log types specified by `exportable_log_types` to CloudWatch Logs. """ return pulumi.get(self, "supports_log_exports_to_cloudwatch") @@ -240,7 +262,7 @@ def supports_log_exports_to_cloudwatch(self) -> bool: @pulumi.getter(name="supportsParallelQuery") def supports_parallel_query(self) -> bool: """ - Indicates whether you can use Aurora parallel query with a specific database engine version. + Whether you can use Aurora parallel query with the engine version. """ return pulumi.get(self, "supports_parallel_query") @@ -248,15 +270,31 @@ def supports_parallel_query(self) -> bool: @pulumi.getter(name="supportsReadReplica") def supports_read_replica(self) -> bool: """ - Indicates whether the database engine version supports read replicas. + Whether the engine version supports read replicas. """ return pulumi.get(self, "supports_read_replica") + @property + @pulumi.getter(name="validMajorTargets") + def valid_major_targets(self) -> Sequence[str]: + """ + Set of versions that are valid major version upgrades for the engine version. + """ + return pulumi.get(self, "valid_major_targets") + + @property + @pulumi.getter(name="validMinorTargets") + def valid_minor_targets(self) -> Sequence[str]: + """ + Set of versions that are valid minor version upgrades for the engine version. + """ + return pulumi.get(self, "valid_minor_targets") + @property @pulumi.getter(name="validUpgradeTargets") def valid_upgrade_targets(self) -> Sequence[str]: """ - Set of engine versions that this database engine version can be upgraded to. + Set of versions that are valid major or minor upgrades for the engine version. """ return pulumi.get(self, "valid_upgrade_targets") @@ -269,7 +307,7 @@ def version(self) -> str: @pulumi.getter(name="versionActual") def version_actual(self) -> str: """ - Version of the database engine. + Complete engine version. """ return pulumi.get(self, "version_actual") @@ -277,7 +315,7 @@ def version_actual(self) -> str: @pulumi.getter(name="versionDescription") def version_description(self) -> str: """ - Description of the database engine version. + Description of the engine version. """ return pulumi.get(self, "version_description") @@ -294,6 +332,8 @@ def __await__(self): engine_description=self.engine_description, exportable_log_types=self.exportable_log_types, filters=self.filters, + has_major_target=self.has_major_target, + has_minor_target=self.has_minor_target, id=self.id, include_all=self.include_all, latest=self.latest, @@ -310,6 +350,8 @@ def __await__(self): 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, + valid_major_targets=self.valid_major_targets, + valid_minor_targets=self.valid_minor_targets, valid_upgrade_targets=self.valid_upgrade_targets, version=self.version, version_actual=self.version_actual, @@ -319,6 +361,8 @@ def __await__(self): def get_engine_version(default_only: Optional[bool] = None, engine: Optional[str] = None, filters: Optional[Sequence[pulumi.InputType['GetEngineVersionFilterArgs']]] = None, + has_major_target: Optional[bool] = None, + has_minor_target: Optional[bool] = None, include_all: Optional[bool] = None, latest: Optional[bool] = None, parameter_group_family: Optional[str] = None, @@ -365,22 +409,26 @@ def get_engine_version(default_only: Optional[bool] = None, - :param bool default_only: When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + :param bool default_only: Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. :param str engine: Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`. The following arguments are optional: - :param Sequence[pulumi.InputType['GetEngineVersionFilterArgs']] filters: One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). - :param bool include_all: When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. - :param bool latest: When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + :param Sequence[pulumi.InputType['GetEngineVersionFilterArgs']] filters: One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + :param bool has_major_target: Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + :param bool has_minor_target: Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + :param bool include_all: Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. + :param bool latest: Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. :param str parameter_group_family: Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`. - :param Sequence[str] preferred_major_targets: Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. - :param Sequence[str] preferred_upgrade_targets: Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. - :param Sequence[str] preferred_versions: Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + :param Sequence[str] preferred_major_targets: Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. + :param Sequence[str] preferred_upgrade_targets: Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. + :param Sequence[str] preferred_versions: Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. """ __args__ = dict() __args__['defaultOnly'] = default_only __args__['engine'] = engine __args__['filters'] = filters + __args__['hasMajorTarget'] = has_major_target + __args__['hasMinorTarget'] = has_minor_target __args__['includeAll'] = include_all __args__['latest'] = latest __args__['parameterGroupFamily'] = parameter_group_family @@ -398,6 +446,8 @@ def get_engine_version(default_only: Optional[bool] = None, engine_description=pulumi.get(__ret__, 'engine_description'), exportable_log_types=pulumi.get(__ret__, 'exportable_log_types'), filters=pulumi.get(__ret__, 'filters'), + has_major_target=pulumi.get(__ret__, 'has_major_target'), + has_minor_target=pulumi.get(__ret__, 'has_minor_target'), id=pulumi.get(__ret__, 'id'), include_all=pulumi.get(__ret__, 'include_all'), latest=pulumi.get(__ret__, 'latest'), @@ -414,6 +464,8 @@ def get_engine_version(default_only: Optional[bool] = None, 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'), + valid_major_targets=pulumi.get(__ret__, 'valid_major_targets'), + valid_minor_targets=pulumi.get(__ret__, 'valid_minor_targets'), valid_upgrade_targets=pulumi.get(__ret__, 'valid_upgrade_targets'), version=pulumi.get(__ret__, 'version'), version_actual=pulumi.get(__ret__, 'version_actual'), @@ -424,6 +476,8 @@ def get_engine_version(default_only: Optional[bool] = None, def get_engine_version_output(default_only: Optional[pulumi.Input[Optional[bool]]] = None, engine: Optional[pulumi.Input[str]] = None, filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetEngineVersionFilterArgs']]]]] = None, + has_major_target: Optional[pulumi.Input[Optional[bool]]] = None, + has_minor_target: Optional[pulumi.Input[Optional[bool]]] = None, include_all: Optional[pulumi.Input[Optional[bool]]] = None, latest: Optional[pulumi.Input[Optional[bool]]] = None, parameter_group_family: Optional[pulumi.Input[Optional[str]]] = None, @@ -470,16 +524,18 @@ def get_engine_version_output(default_only: Optional[pulumi.Input[Optional[bool] - :param bool default_only: When set to `true`, the default version for the specified `engine` or combination of `engine` and major `version` will be returned. Can be used to limit responses to a single version when they would otherwise fail for returning multiple versions. + :param bool default_only: Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `default_only` may help avoid `multiple RDS engine versions` errors. See also `latest`. :param str engine: Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`. The following arguments are optional: - :param Sequence[pulumi.InputType['GetEngineVersionFilterArgs']] filters: One or more name/value pairs to filter off of. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). - :param bool include_all: When set to `true`, the specified `version` or member of `preferred_versions` will be returned even if it is `deprecated`. Otherwise, only `available` versions will be returned. - :param bool latest: When set to `true`, the data source attempts to return the most recent version matching the other criteria you provide. This differs from `default_only`. For example, the latest version is not always the default. In addition, AWS may return multiple defaults depending on the criteria. Using `latest` will avoid `multiple RDS engine versions` errors. **Note:** The data source uses a best-effort approach at selecting the latest version but due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may _not_ return the latest version in every situation. + :param Sequence[pulumi.InputType['GetEngineVersionFilterArgs']] filters: One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html). + :param bool has_major_target: Whether the engine version must have one or more major upgrade targets. Not including `has_major_target` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version. + :param bool has_minor_target: Whether the engine version must have one or more minor upgrade targets. Not including `has_minor_target` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version. + :param bool include_all: Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`. + :param bool latest: Whether the engine version is the most recent version matching the other criteria. This is different from `default_only` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `default_only` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `default_only`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version. :param str parameter_group_family: Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`. - :param Sequence[str] preferred_major_targets: Ordered list of preferred major version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. - :param Sequence[str] preferred_upgrade_targets: Ordered list of preferred version upgrade targets. The version corresponding to the first match in this list will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. - :param Sequence[str] preferred_versions: Ordered list of preferred versions. The first match in this list that matches any other criteria will be returned unless the `latest` parameter is set to `true`. If you don't configure `version`, `preferred_major_targets`, `preferred_upgrade_targets`, and `preferred_versions`, the data source will return the default version for the engine. You can use this with other version criteria. + :param Sequence[str] preferred_major_targets: Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_major_targets`. + :param Sequence[str] preferred_upgrade_targets: Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_upgrade_targets`. + :param Sequence[str] preferred_versions: Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferred_versions`. """ ... diff --git a/sdk/python/pulumi_aws/s3/bucket_object.py b/sdk/python/pulumi_aws/s3/bucket_object.py index 01e68a7f68d..352a86d13e0 100644 --- a/sdk/python/pulumi_aws/s3/bucket_object.py +++ b/sdk/python/pulumi_aws/s3/bucket_object.py @@ -414,6 +414,7 @@ def website_redirect(self, value: Optional[pulumi.Input[str]]): class _BucketObjectState: def __init__(__self__, *, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -442,6 +443,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering BucketObject resources. :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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. :param pulumi.Input[bool] bucket_key_enabled: Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. :param pulumi.Input[str] cache_control: Caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. @@ -474,6 +476,8 @@ def __init__(__self__, *, """ if acl is not None: pulumi.set(__self__, "acl", acl) + if arn is not None: + pulumi.set(__self__, "arn", arn) if bucket is not None: pulumi.set(__self__, "bucket", bucket) if bucket_key_enabled is not None: @@ -540,6 +544,18 @@ def acl(self) -> Optional[pulumi.Input[str]]: def acl(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "acl", value) + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + @property @pulumi.getter def bucket(self) -> Optional[pulumi.Input[str]]: @@ -1243,6 +1259,7 @@ def _internal_init(__self__, __props__.__dict__["storage_class"] = storage_class __props__.__dict__["tags"] = tags __props__.__dict__["website_redirect"] = website_redirect + __props__.__dict__["arn"] = None __props__.__dict__["tags_all"] = None __props__.__dict__["version_id"] = None super(BucketObject, __self__).__init__( @@ -1256,6 +1273,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -1289,6 +1307,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] 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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. Defaults to `private`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. :param pulumi.Input[bool] bucket_key_enabled: Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. :param pulumi.Input[str] cache_control: Caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. @@ -1324,6 +1343,7 @@ def get(resource_name: str, __props__ = _BucketObjectState.__new__(_BucketObjectState) __props__.__dict__["acl"] = acl + __props__.__dict__["arn"] = arn __props__.__dict__["bucket"] = bucket __props__.__dict__["bucket_key_enabled"] = bucket_key_enabled __props__.__dict__["cache_control"] = cache_control @@ -1359,6 +1379,14 @@ def acl(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "acl") + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter def bucket(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/s3/bucket_objectv2.py b/sdk/python/pulumi_aws/s3/bucket_objectv2.py index 0b79fbc4121..faf0f6dfb9b 100644 --- a/sdk/python/pulumi_aws/s3/bucket_objectv2.py +++ b/sdk/python/pulumi_aws/s3/bucket_objectv2.py @@ -452,6 +452,7 @@ def website_redirect(self, value: Optional[pulumi.Input[str]]): class _BucketObjectv2State: def __init__(__self__, *, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -486,6 +487,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering BucketObjectv2 resources. :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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. :param pulumi.Input[bool] bucket_key_enabled: Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. :param pulumi.Input[str] cache_control: Caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. @@ -526,6 +528,8 @@ def __init__(__self__, *, """ if acl is not None: pulumi.set(__self__, "acl", acl) + if arn is not None: + pulumi.set(__self__, "arn", arn) if bucket is not None: pulumi.set(__self__, "bucket", bucket) if bucket_key_enabled is not None: @@ -604,6 +608,18 @@ def acl(self) -> Optional[pulumi.Input[str]]: def acl(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "acl", value) + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + @property @pulumi.getter def bucket(self) -> Optional[pulumi.Input[str]]: @@ -1447,6 +1463,7 @@ def _internal_init(__self__, __props__.__dict__["storage_class"] = storage_class __props__.__dict__["tags"] = tags __props__.__dict__["website_redirect"] = website_redirect + __props__.__dict__["arn"] = None __props__.__dict__["checksum_crc32"] = None __props__.__dict__["checksum_crc32c"] = None __props__.__dict__["checksum_sha1"] = None @@ -1466,6 +1483,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -1505,6 +1523,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] 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`, `aws-exec-read`, `authenticated-read`, `bucket-owner-read`, and `bucket-owner-full-control`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified. :param pulumi.Input[bool] bucket_key_enabled: Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS. :param pulumi.Input[str] cache_control: Caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. @@ -1548,6 +1567,7 @@ def get(resource_name: str, __props__ = _BucketObjectv2State.__new__(_BucketObjectv2State) __props__.__dict__["acl"] = acl + __props__.__dict__["arn"] = arn __props__.__dict__["bucket"] = bucket __props__.__dict__["bucket_key_enabled"] = bucket_key_enabled __props__.__dict__["cache_control"] = cache_control @@ -1589,6 +1609,14 @@ def acl(self) -> pulumi.Output[str]: """ return pulumi.get(self, "acl") + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter def bucket(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/s3/get_bucket_object.py b/sdk/python/pulumi_aws/s3/get_bucket_object.py index 3290aa675c6..a53220b37f2 100644 --- a/sdk/python/pulumi_aws/s3/get_bucket_object.py +++ b/sdk/python/pulumi_aws/s3/get_bucket_object.py @@ -21,7 +21,10 @@ class GetBucketObjectResult: """ A collection of values returned by getBucketObject. """ - def __init__(__self__, body=None, bucket=None, bucket_key_enabled=None, cache_control=None, content_disposition=None, content_encoding=None, content_language=None, content_length=None, content_type=None, etag=None, expiration=None, expires=None, id=None, key=None, last_modified=None, metadata=None, object_lock_legal_hold_status=None, object_lock_mode=None, object_lock_retain_until_date=None, range=None, server_side_encryption=None, sse_kms_key_id=None, storage_class=None, tags=None, version_id=None, website_redirect_location=None): + def __init__(__self__, arn=None, body=None, bucket=None, bucket_key_enabled=None, cache_control=None, content_disposition=None, content_encoding=None, content_language=None, content_length=None, content_type=None, etag=None, expiration=None, expires=None, id=None, key=None, last_modified=None, metadata=None, object_lock_legal_hold_status=None, object_lock_mode=None, object_lock_retain_until_date=None, range=None, server_side_encryption=None, sse_kms_key_id=None, storage_class=None, tags=None, version_id=None, website_redirect_location=None): + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) if body and not isinstance(body, str): raise TypeError("Expected argument 'body' to be a str") pulumi.set(__self__, "body", body) @@ -101,6 +104,11 @@ def __init__(__self__, body=None, bucket=None, bucket_key_enabled=None, cache_co raise TypeError("Expected argument 'website_redirect_location' to be a str") pulumi.set(__self__, "website_redirect_location", website_redirect_location) + @property + @pulumi.getter + def arn(self) -> str: + return pulumi.get(self, "arn") + @property @pulumi.getter def body(self) -> str: @@ -310,6 +318,7 @@ def __await__(self): if False: yield self return GetBucketObjectResult( + arn=self.arn, body=self.body, bucket=self.bucket, bucket_key_enabled=self.bucket_key_enabled, @@ -410,6 +419,7 @@ def get_bucket_object(bucket: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws:s3/getBucketObject:getBucketObject', __args__, opts=opts, typ=GetBucketObjectResult).value return AwaitableGetBucketObjectResult( + arn=pulumi.get(__ret__, 'arn'), body=pulumi.get(__ret__, 'body'), bucket=pulumi.get(__ret__, 'bucket'), bucket_key_enabled=pulumi.get(__ret__, 'bucket_key_enabled'), diff --git a/sdk/python/pulumi_aws/s3/get_object.py b/sdk/python/pulumi_aws/s3/get_object.py index 15d160f9267..fab2946d544 100644 --- a/sdk/python/pulumi_aws/s3/get_object.py +++ b/sdk/python/pulumi_aws/s3/get_object.py @@ -21,7 +21,10 @@ class GetObjectResult: """ A collection of values returned by getObject. """ - def __init__(__self__, body=None, bucket=None, bucket_key_enabled=None, cache_control=None, checksum_crc32=None, checksum_crc32c=None, checksum_mode=None, checksum_sha1=None, checksum_sha256=None, content_disposition=None, content_encoding=None, content_language=None, content_length=None, content_type=None, etag=None, expiration=None, expires=None, id=None, key=None, last_modified=None, metadata=None, object_lock_legal_hold_status=None, object_lock_mode=None, object_lock_retain_until_date=None, range=None, server_side_encryption=None, sse_kms_key_id=None, storage_class=None, tags=None, version_id=None, website_redirect_location=None): + def __init__(__self__, arn=None, body=None, bucket=None, bucket_key_enabled=None, cache_control=None, checksum_crc32=None, checksum_crc32c=None, checksum_mode=None, checksum_sha1=None, checksum_sha256=None, content_disposition=None, content_encoding=None, content_language=None, content_length=None, content_type=None, etag=None, expiration=None, expires=None, id=None, key=None, last_modified=None, metadata=None, object_lock_legal_hold_status=None, object_lock_mode=None, object_lock_retain_until_date=None, range=None, server_side_encryption=None, sse_kms_key_id=None, storage_class=None, tags=None, version_id=None, website_redirect_location=None): + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) if body and not isinstance(body, str): raise TypeError("Expected argument 'body' to be a str") pulumi.set(__self__, "body", body) @@ -116,6 +119,14 @@ def __init__(__self__, body=None, bucket=None, bucket_key_enabled=None, cache_co raise TypeError("Expected argument 'website_redirect_location' to be a str") pulumi.set(__self__, "website_redirect_location", website_redirect_location) + @property + @pulumi.getter + def arn(self) -> str: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter def body(self) -> str: @@ -359,6 +370,7 @@ def __await__(self): if False: yield self return GetObjectResult( + arn=self.arn, body=self.body, bucket=self.bucket, bucket_key_enabled=self.bucket_key_enabled, @@ -465,6 +477,7 @@ def get_object(bucket: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws:s3/getObject:getObject', __args__, opts=opts, typ=GetObjectResult).value return AwaitableGetObjectResult( + arn=pulumi.get(__ret__, 'arn'), body=pulumi.get(__ret__, 'body'), bucket=pulumi.get(__ret__, 'bucket'), bucket_key_enabled=pulumi.get(__ret__, 'bucket_key_enabled'), diff --git a/sdk/python/pulumi_aws/s3/object_copy.py b/sdk/python/pulumi_aws/s3/object_copy.py index ddbc794eef5..242623f9cf3 100644 --- a/sdk/python/pulumi_aws/s3/object_copy.py +++ b/sdk/python/pulumi_aws/s3/object_copy.py @@ -646,6 +646,7 @@ def website_redirect(self, value: Optional[pulumi.Input[str]]): class _ObjectCopyState: def __init__(__self__, *, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -698,6 +699,7 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering ObjectCopy resources. :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`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. :param pulumi.Input[str] cache_control: Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. :param pulumi.Input[str] checksum_algorithm: Indicates the algorithm used to create the checksum for the object. If a value is specified and the object is encrypted with KMS, you must have permission to use the `kms:Decrypt` action. Valid values: `CRC32`, `CRC32C`, `SHA1`, `SHA256`. @@ -751,6 +753,8 @@ def __init__(__self__, *, """ if acl is not None: pulumi.set(__self__, "acl", acl) + if arn is not None: + pulumi.set(__self__, "arn", arn) if bucket is not None: pulumi.set(__self__, "bucket", bucket) if bucket_key_enabled is not None: @@ -865,6 +869,18 @@ def acl(self) -> Optional[pulumi.Input[str]]: def acl(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "acl", value) + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + @property @pulumi.getter def bucket(self) -> Optional[pulumi.Input[str]]: @@ -1702,6 +1718,7 @@ def _internal_init(__self__, __props__.__dict__["tagging_directive"] = tagging_directive __props__.__dict__["tags"] = tags __props__.__dict__["website_redirect"] = website_redirect + __props__.__dict__["arn"] = None __props__.__dict__["checksum_crc32"] = None __props__.__dict__["checksum_crc32c"] = None __props__.__dict__["checksum_sha1"] = None @@ -1726,6 +1743,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, acl: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, bucket: Optional[pulumi.Input[str]] = None, bucket_key_enabled: Optional[pulumi.Input[bool]] = None, cache_control: Optional[pulumi.Input[str]] = None, @@ -1783,6 +1801,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] 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`. + :param pulumi.Input[str] arn: ARN of the object. :param pulumi.Input[str] bucket: Name of the bucket to put the file in. :param pulumi.Input[str] cache_control: Specifies caching behavior along the request/reply chain Read [w3c cache_control](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) for further details. :param pulumi.Input[str] checksum_algorithm: Indicates the algorithm used to create the checksum for the object. If a value is specified and the object is encrypted with KMS, you must have permission to use the `kms:Decrypt` action. Valid values: `CRC32`, `CRC32C`, `SHA1`, `SHA256`. @@ -1839,6 +1858,7 @@ def get(resource_name: str, __props__ = _ObjectCopyState.__new__(_ObjectCopyState) __props__.__dict__["acl"] = acl + __props__.__dict__["arn"] = arn __props__.__dict__["bucket"] = bucket __props__.__dict__["bucket_key_enabled"] = bucket_key_enabled __props__.__dict__["cache_control"] = cache_control @@ -1898,6 +1918,14 @@ def acl(self) -> pulumi.Output[str]: """ return pulumi.get(self, "acl") + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + ARN of the object. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter def bucket(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws/securitylake/__init__.py b/sdk/python/pulumi_aws/securitylake/__init__.py index 277b58c3109..2d1b8bc899b 100644 --- a/sdk/python/pulumi_aws/securitylake/__init__.py +++ b/sdk/python/pulumi_aws/securitylake/__init__.py @@ -8,5 +8,6 @@ from .aws_log_source import * from .custom_log_source import * from .data_lake import * +from .subscriber import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws/securitylake/_inputs.py b/sdk/python/pulumi_aws/securitylake/_inputs.py index 7de80864c4a..45436833bea 100644 --- a/sdk/python/pulumi_aws/securitylake/_inputs.py +++ b/sdk/python/pulumi_aws/securitylake/_inputs.py @@ -23,6 +23,13 @@ 'DataLakeConfigurationLifecycleConfigurationTransitionArgs', 'DataLakeConfigurationReplicationConfigurationArgs', 'DataLakeTimeoutsArgs', + 'SubscriberSourceArgs', + 'SubscriberSourceAwsLogSourceResourceArgs', + 'SubscriberSourceCustomLogSourceResourceArgs', + 'SubscriberSourceCustomLogSourceResourceAttributeArgs', + 'SubscriberSourceCustomLogSourceResourceProviderArgs', + 'SubscriberSubscriberIdentityArgs', + 'SubscriberTimeoutsArgs', ] @pulumi.input_type @@ -568,3 +575,329 @@ def update(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "update", value) +@pulumi.input_type +class SubscriberSourceArgs: + def __init__(__self__, *, + aws_log_source_resource: Optional[pulumi.Input['SubscriberSourceAwsLogSourceResourceArgs']] = None, + custom_log_source_resource: Optional[pulumi.Input['SubscriberSourceCustomLogSourceResourceArgs']] = None): + """ + :param pulumi.Input['SubscriberSourceAwsLogSourceResourceArgs'] aws_log_source_resource: Amazon Security Lake supports log and event collection for natively supported AWS services. + :param pulumi.Input['SubscriberSourceCustomLogSourceResourceArgs'] custom_log_source_resource: Amazon Security Lake supports custom source types. + """ + if aws_log_source_resource is not None: + pulumi.set(__self__, "aws_log_source_resource", aws_log_source_resource) + if custom_log_source_resource is not None: + pulumi.set(__self__, "custom_log_source_resource", custom_log_source_resource) + + @property + @pulumi.getter(name="awsLogSourceResource") + def aws_log_source_resource(self) -> Optional[pulumi.Input['SubscriberSourceAwsLogSourceResourceArgs']]: + """ + Amazon Security Lake supports log and event collection for natively supported AWS services. + """ + return pulumi.get(self, "aws_log_source_resource") + + @aws_log_source_resource.setter + def aws_log_source_resource(self, value: Optional[pulumi.Input['SubscriberSourceAwsLogSourceResourceArgs']]): + pulumi.set(self, "aws_log_source_resource", value) + + @property + @pulumi.getter(name="customLogSourceResource") + def custom_log_source_resource(self) -> Optional[pulumi.Input['SubscriberSourceCustomLogSourceResourceArgs']]: + """ + Amazon Security Lake supports custom source types. + """ + return pulumi.get(self, "custom_log_source_resource") + + @custom_log_source_resource.setter + def custom_log_source_resource(self, value: Optional[pulumi.Input['SubscriberSourceCustomLogSourceResourceArgs']]): + pulumi.set(self, "custom_log_source_resource", value) + + +@pulumi.input_type +class SubscriberSourceAwsLogSourceResourceArgs: + def __init__(__self__, *, + source_name: Optional[pulumi.Input[str]] = None, + source_version: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] source_name: The name for a third-party custom source. This must be a Regionally unique value. + :param pulumi.Input[str] source_version: The version for a third-party custom source. This must be a Regionally unique value. + """ + if source_name is not None: + pulumi.set(__self__, "source_name", source_name) + if source_version is not None: + pulumi.set(__self__, "source_version", source_version) + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[pulumi.Input[str]]: + """ + The name for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_name") + + @source_name.setter + def source_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_name", value) + + @property + @pulumi.getter(name="sourceVersion") + def source_version(self) -> Optional[pulumi.Input[str]]: + """ + The version for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_version") + + @source_version.setter + def source_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_version", value) + + +@pulumi.input_type +class SubscriberSourceCustomLogSourceResourceArgs: + def __init__(__self__, *, + attributes: Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceAttributeArgs']]]] = None, + providers: Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceProviderArgs']]]] = None, + source_name: Optional[pulumi.Input[str]] = None, + source_version: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceAttributeArgs']]] attributes: The attributes of a third-party custom source. + :param pulumi.Input[str] source_name: The name for a third-party custom source. This must be a Regionally unique value. + :param pulumi.Input[str] source_version: The version for a third-party custom source. This must be a Regionally unique value. + """ + if attributes is not None: + pulumi.set(__self__, "attributes", attributes) + if providers is not None: + pulumi.set(__self__, "providers", providers) + if source_name is not None: + pulumi.set(__self__, "source_name", source_name) + if source_version is not None: + pulumi.set(__self__, "source_version", source_version) + + @property + @pulumi.getter + def attributes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceAttributeArgs']]]]: + """ + The attributes of a third-party custom source. + """ + return pulumi.get(self, "attributes") + + @attributes.setter + def attributes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceAttributeArgs']]]]): + pulumi.set(self, "attributes", value) + + @property + @pulumi.getter + def providers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceProviderArgs']]]]: + return pulumi.get(self, "providers") + + @providers.setter + def providers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SubscriberSourceCustomLogSourceResourceProviderArgs']]]]): + pulumi.set(self, "providers", value) + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[pulumi.Input[str]]: + """ + The name for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_name") + + @source_name.setter + def source_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_name", value) + + @property + @pulumi.getter(name="sourceVersion") + def source_version(self) -> Optional[pulumi.Input[str]]: + """ + The version for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_version") + + @source_version.setter + def source_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_version", value) + + +@pulumi.input_type +class SubscriberSourceCustomLogSourceResourceAttributeArgs: + def __init__(__self__, *, + crawler_arn: pulumi.Input[str], + database_arn: pulumi.Input[str], + table_arn: pulumi.Input[str]): + """ + :param pulumi.Input[str] crawler_arn: The ARN of the AWS Glue crawler. + :param pulumi.Input[str] database_arn: The ARN of the AWS Glue database where results are written. + :param pulumi.Input[str] table_arn: The ARN of the AWS Glue table. + """ + pulumi.set(__self__, "crawler_arn", crawler_arn) + pulumi.set(__self__, "database_arn", database_arn) + pulumi.set(__self__, "table_arn", table_arn) + + @property + @pulumi.getter(name="crawlerArn") + def crawler_arn(self) -> pulumi.Input[str]: + """ + The ARN of the AWS Glue crawler. + """ + return pulumi.get(self, "crawler_arn") + + @crawler_arn.setter + def crawler_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "crawler_arn", value) + + @property + @pulumi.getter(name="databaseArn") + def database_arn(self) -> pulumi.Input[str]: + """ + The ARN of the AWS Glue database where results are written. + """ + return pulumi.get(self, "database_arn") + + @database_arn.setter + def database_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "database_arn", value) + + @property + @pulumi.getter(name="tableArn") + def table_arn(self) -> pulumi.Input[str]: + """ + The ARN of the AWS Glue table. + """ + return pulumi.get(self, "table_arn") + + @table_arn.setter + def table_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "table_arn", value) + + +@pulumi.input_type +class SubscriberSourceCustomLogSourceResourceProviderArgs: + def __init__(__self__, *, + location: pulumi.Input[str], + role_arn: pulumi.Input[str]): + """ + :param pulumi.Input[str] location: The location of the partition in the Amazon S3 bucket for Security Lake. + :param pulumi.Input[str] role_arn: The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "role_arn", role_arn) + + @property + @pulumi.getter + def location(self) -> pulumi.Input[str]: + """ + The location of the partition in the Amazon S3 bucket for Security Lake. + """ + return pulumi.get(self, "location") + + @location.setter + def location(self, value: pulumi.Input[str]): + pulumi.set(self, "location", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Input[str]: + """ + The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "role_arn", value) + + +@pulumi.input_type +class SubscriberSubscriberIdentityArgs: + def __init__(__self__, *, + external_id: pulumi.Input[str], + principal: pulumi.Input[str]): + """ + :param pulumi.Input[str] external_id: The AWS Regions where Security Lake is automatically enabled. + :param pulumi.Input[str] principal: Provides encryption details of Amazon Security Lake object. + """ + pulumi.set(__self__, "external_id", external_id) + pulumi.set(__self__, "principal", principal) + + @property + @pulumi.getter(name="externalId") + def external_id(self) -> pulumi.Input[str]: + """ + The AWS Regions where Security Lake is automatically enabled. + """ + return pulumi.get(self, "external_id") + + @external_id.setter + def external_id(self, value: pulumi.Input[str]): + pulumi.set(self, "external_id", value) + + @property + @pulumi.getter + def principal(self) -> pulumi.Input[str]: + """ + Provides encryption details of Amazon Security Lake object. + """ + return pulumi.get(self, "principal") + + @principal.setter + def principal(self, value: pulumi.Input[str]): + pulumi.set(self, "principal", value) + + +@pulumi.input_type +class SubscriberTimeoutsArgs: + 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) + + diff --git a/sdk/python/pulumi_aws/securitylake/outputs.py b/sdk/python/pulumi_aws/securitylake/outputs.py index e1217a50790..f25e8b09226 100644 --- a/sdk/python/pulumi_aws/securitylake/outputs.py +++ b/sdk/python/pulumi_aws/securitylake/outputs.py @@ -24,6 +24,13 @@ 'DataLakeConfigurationLifecycleConfigurationTransition', 'DataLakeConfigurationReplicationConfiguration', 'DataLakeTimeouts', + 'SubscriberSource', + 'SubscriberSourceAwsLogSourceResource', + 'SubscriberSourceCustomLogSourceResource', + 'SubscriberSourceCustomLogSourceResourceAttribute', + 'SubscriberSourceCustomLogSourceResourceProvider', + 'SubscriberSubscriberIdentity', + 'SubscriberTimeouts', ] @pulumi.output_type @@ -635,3 +642,369 @@ def update(self) -> Optional[str]: return pulumi.get(self, "update") +@pulumi.output_type +class SubscriberSource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "awsLogSourceResource": + suggest = "aws_log_source_resource" + elif key == "customLogSourceResource": + suggest = "custom_log_source_resource" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + aws_log_source_resource: Optional['outputs.SubscriberSourceAwsLogSourceResource'] = None, + custom_log_source_resource: Optional['outputs.SubscriberSourceCustomLogSourceResource'] = None): + """ + :param 'SubscriberSourceAwsLogSourceResourceArgs' aws_log_source_resource: Amazon Security Lake supports log and event collection for natively supported AWS services. + :param 'SubscriberSourceCustomLogSourceResourceArgs' custom_log_source_resource: Amazon Security Lake supports custom source types. + """ + if aws_log_source_resource is not None: + pulumi.set(__self__, "aws_log_source_resource", aws_log_source_resource) + if custom_log_source_resource is not None: + pulumi.set(__self__, "custom_log_source_resource", custom_log_source_resource) + + @property + @pulumi.getter(name="awsLogSourceResource") + def aws_log_source_resource(self) -> Optional['outputs.SubscriberSourceAwsLogSourceResource']: + """ + Amazon Security Lake supports log and event collection for natively supported AWS services. + """ + return pulumi.get(self, "aws_log_source_resource") + + @property + @pulumi.getter(name="customLogSourceResource") + def custom_log_source_resource(self) -> Optional['outputs.SubscriberSourceCustomLogSourceResource']: + """ + Amazon Security Lake supports custom source types. + """ + return pulumi.get(self, "custom_log_source_resource") + + +@pulumi.output_type +class SubscriberSourceAwsLogSourceResource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "sourceName": + suggest = "source_name" + elif key == "sourceVersion": + suggest = "source_version" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSourceAwsLogSourceResource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSourceAwsLogSourceResource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSourceAwsLogSourceResource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + source_name: Optional[str] = None, + source_version: Optional[str] = None): + """ + :param str source_name: The name for a third-party custom source. This must be a Regionally unique value. + :param str source_version: The version for a third-party custom source. This must be a Regionally unique value. + """ + if source_name is not None: + pulumi.set(__self__, "source_name", source_name) + if source_version is not None: + pulumi.set(__self__, "source_version", source_version) + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[str]: + """ + The name for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_name") + + @property + @pulumi.getter(name="sourceVersion") + def source_version(self) -> Optional[str]: + """ + The version for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_version") + + +@pulumi.output_type +class SubscriberSourceCustomLogSourceResource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "sourceName": + suggest = "source_name" + elif key == "sourceVersion": + suggest = "source_version" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSourceCustomLogSourceResource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSourceCustomLogSourceResource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSourceCustomLogSourceResource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + attributes: Optional[Sequence['outputs.SubscriberSourceCustomLogSourceResourceAttribute']] = None, + providers: Optional[Sequence['outputs.SubscriberSourceCustomLogSourceResourceProvider']] = None, + source_name: Optional[str] = None, + source_version: Optional[str] = None): + """ + :param Sequence['SubscriberSourceCustomLogSourceResourceAttributeArgs'] attributes: The attributes of a third-party custom source. + :param str source_name: The name for a third-party custom source. This must be a Regionally unique value. + :param str source_version: The version for a third-party custom source. This must be a Regionally unique value. + """ + if attributes is not None: + pulumi.set(__self__, "attributes", attributes) + if providers is not None: + pulumi.set(__self__, "providers", providers) + if source_name is not None: + pulumi.set(__self__, "source_name", source_name) + if source_version is not None: + pulumi.set(__self__, "source_version", source_version) + + @property + @pulumi.getter + def attributes(self) -> Optional[Sequence['outputs.SubscriberSourceCustomLogSourceResourceAttribute']]: + """ + The attributes of a third-party custom source. + """ + return pulumi.get(self, "attributes") + + @property + @pulumi.getter + def providers(self) -> Optional[Sequence['outputs.SubscriberSourceCustomLogSourceResourceProvider']]: + return pulumi.get(self, "providers") + + @property + @pulumi.getter(name="sourceName") + def source_name(self) -> Optional[str]: + """ + The name for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_name") + + @property + @pulumi.getter(name="sourceVersion") + def source_version(self) -> Optional[str]: + """ + The version for a third-party custom source. This must be a Regionally unique value. + """ + return pulumi.get(self, "source_version") + + +@pulumi.output_type +class SubscriberSourceCustomLogSourceResourceAttribute(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "crawlerArn": + suggest = "crawler_arn" + elif key == "databaseArn": + suggest = "database_arn" + elif key == "tableArn": + suggest = "table_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSourceCustomLogSourceResourceAttribute. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSourceCustomLogSourceResourceAttribute.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSourceCustomLogSourceResourceAttribute.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + crawler_arn: str, + database_arn: str, + table_arn: str): + """ + :param str crawler_arn: The ARN of the AWS Glue crawler. + :param str database_arn: The ARN of the AWS Glue database where results are written. + :param str table_arn: The ARN of the AWS Glue table. + """ + pulumi.set(__self__, "crawler_arn", crawler_arn) + pulumi.set(__self__, "database_arn", database_arn) + pulumi.set(__self__, "table_arn", table_arn) + + @property + @pulumi.getter(name="crawlerArn") + def crawler_arn(self) -> str: + """ + The ARN of the AWS Glue crawler. + """ + return pulumi.get(self, "crawler_arn") + + @property + @pulumi.getter(name="databaseArn") + def database_arn(self) -> str: + """ + The ARN of the AWS Glue database where results are written. + """ + return pulumi.get(self, "database_arn") + + @property + @pulumi.getter(name="tableArn") + def table_arn(self) -> str: + """ + The ARN of the AWS Glue table. + """ + return pulumi.get(self, "table_arn") + + +@pulumi.output_type +class SubscriberSourceCustomLogSourceResourceProvider(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "roleArn": + suggest = "role_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSourceCustomLogSourceResourceProvider. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSourceCustomLogSourceResourceProvider.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSourceCustomLogSourceResourceProvider.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + location: str, + role_arn: str): + """ + :param str location: The location of the partition in the Amazon S3 bucket for Security Lake. + :param str role_arn: The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "role_arn", role_arn) + + @property + @pulumi.getter + def location(self) -> str: + """ + The location of the partition in the Amazon S3 bucket for Security Lake. + """ + return pulumi.get(self, "location") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> str: + """ + The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + return pulumi.get(self, "role_arn") + + +@pulumi.output_type +class SubscriberSubscriberIdentity(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "externalId": + suggest = "external_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SubscriberSubscriberIdentity. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SubscriberSubscriberIdentity.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SubscriberSubscriberIdentity.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + external_id: str, + principal: str): + """ + :param str external_id: The AWS Regions where Security Lake is automatically enabled. + :param str principal: Provides encryption details of Amazon Security Lake object. + """ + pulumi.set(__self__, "external_id", external_id) + pulumi.set(__self__, "principal", principal) + + @property + @pulumi.getter(name="externalId") + def external_id(self) -> str: + """ + The AWS Regions where Security Lake is automatically enabled. + """ + return pulumi.get(self, "external_id") + + @property + @pulumi.getter + def principal(self) -> str: + """ + Provides encryption details of Amazon Security Lake object. + """ + return pulumi.get(self, "principal") + + +@pulumi.output_type +class SubscriberTimeouts(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") + + diff --git a/sdk/python/pulumi_aws/securitylake/subscriber.py b/sdk/python/pulumi_aws/securitylake/subscriber.py new file mode 100644 index 00000000000..dab7902c42b --- /dev/null +++ b/sdk/python/pulumi_aws/securitylake/subscriber.py @@ -0,0 +1,652 @@ +# 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 pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['SubscriberArgs', 'Subscriber'] + +@pulumi.input_type +class SubscriberArgs: + def __init__(__self__, *, + access_type: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input['SubscriberSourceArgs']] = None, + subscriber_description: Optional[pulumi.Input[str]] = None, + subscriber_identity: Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']] = None, + subscriber_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input['SubscriberTimeoutsArgs']] = None): + """ + The set of arguments for constructing a Subscriber resource. + :param pulumi.Input['SubscriberSourceArgs'] source: The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + :param pulumi.Input[str] subscriber_description: The description for your subscriber account in Security Lake. + :param pulumi.Input['SubscriberSubscriberIdentityArgs'] subscriber_identity: The AWS identity used to access your data. + :param pulumi.Input[str] subscriber_name: The name of your Security Lake subscriber account. + :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. + """ + if access_type is not None: + pulumi.set(__self__, "access_type", access_type) + if source is not None: + pulumi.set(__self__, "source", source) + if subscriber_description is not None: + pulumi.set(__self__, "subscriber_description", subscriber_description) + if subscriber_identity is not None: + pulumi.set(__self__, "subscriber_identity", subscriber_identity) + if subscriber_name is not None: + pulumi.set(__self__, "subscriber_name", subscriber_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="accessType") + def access_type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "access_type") + + @access_type.setter + def access_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "access_type", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input['SubscriberSourceArgs']]: + """ + The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input['SubscriberSourceArgs']]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter(name="subscriberDescription") + def subscriber_description(self) -> Optional[pulumi.Input[str]]: + """ + The description for your subscriber account in Security Lake. + """ + return pulumi.get(self, "subscriber_description") + + @subscriber_description.setter + def subscriber_description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_description", value) + + @property + @pulumi.getter(name="subscriberIdentity") + def subscriber_identity(self) -> Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']]: + """ + The AWS identity used to access your data. + """ + return pulumi.get(self, "subscriber_identity") + + @subscriber_identity.setter + def subscriber_identity(self, value: Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']]): + pulumi.set(self, "subscriber_identity", value) + + @property + @pulumi.getter(name="subscriberName") + def subscriber_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of your Security Lake subscriber account. + """ + return pulumi.get(self, "subscriber_name") + + @subscriber_name.setter + def subscriber_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + 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. + """ + 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['SubscriberTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['SubscriberTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +@pulumi.input_type +class _SubscriberState: + def __init__(__self__, *, + access_type: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, + resource_share_arn: Optional[pulumi.Input[str]] = None, + resource_share_name: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + s3_bucket_arn: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input['SubscriberSourceArgs']] = None, + subscriber_description: Optional[pulumi.Input[str]] = None, + subscriber_endpoint: Optional[pulumi.Input[str]] = None, + subscriber_identity: Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']] = None, + subscriber_name: Optional[pulumi.Input[str]] = None, + subscriber_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, + timeouts: Optional[pulumi.Input['SubscriberTimeoutsArgs']] = None): + """ + Input properties used for looking up and filtering Subscriber resources. + :param pulumi.Input[str] arn: ARN of the Data Lake. + :param pulumi.Input[str] resource_share_arn: The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + :param pulumi.Input[str] resource_share_name: The name of the resource share. + :param pulumi.Input[str] role_arn: The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + :param pulumi.Input[str] s3_bucket_arn: The ARN for the Amazon Security Lake Amazon S3 bucket. + :param pulumi.Input['SubscriberSourceArgs'] source: The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + :param pulumi.Input[str] subscriber_description: The description for your subscriber account in Security Lake. + :param pulumi.Input[str] subscriber_endpoint: The subscriber endpoint to which exception messages are posted. + :param pulumi.Input['SubscriberSubscriberIdentityArgs'] subscriber_identity: The AWS identity used to access your data. + :param pulumi.Input[str] subscriber_name: The name of your Security Lake subscriber account. + :param pulumi.Input[str] subscriber_status: The subscriber status of the Amazon Security Lake subscriber account. + :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. + """ + if access_type is not None: + pulumi.set(__self__, "access_type", access_type) + if arn is not None: + pulumi.set(__self__, "arn", arn) + if resource_share_arn is not None: + pulumi.set(__self__, "resource_share_arn", resource_share_arn) + if resource_share_name is not None: + pulumi.set(__self__, "resource_share_name", resource_share_name) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) + if s3_bucket_arn is not None: + pulumi.set(__self__, "s3_bucket_arn", s3_bucket_arn) + if source is not None: + pulumi.set(__self__, "source", source) + if subscriber_description is not None: + pulumi.set(__self__, "subscriber_description", subscriber_description) + if subscriber_endpoint is not None: + pulumi.set(__self__, "subscriber_endpoint", subscriber_endpoint) + if subscriber_identity is not None: + pulumi.set(__self__, "subscriber_identity", subscriber_identity) + if subscriber_name is not None: + pulumi.set(__self__, "subscriber_name", subscriber_name) + if subscriber_status is not None: + pulumi.set(__self__, "subscriber_status", subscriber_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 timeouts is not None: + pulumi.set(__self__, "timeouts", timeouts) + + @property + @pulumi.getter(name="accessType") + def access_type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "access_type") + + @access_type.setter + def access_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "access_type", value) + + @property + @pulumi.getter + def arn(self) -> Optional[pulumi.Input[str]]: + """ + ARN of the Data Lake. + """ + return pulumi.get(self, "arn") + + @arn.setter + def arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "arn", value) + + @property + @pulumi.getter(name="resourceShareArn") + def resource_share_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + """ + return pulumi.get(self, "resource_share_arn") + + @resource_share_arn.setter + def resource_share_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_share_arn", value) + + @property + @pulumi.getter(name="resourceShareName") + def resource_share_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the resource share. + """ + return pulumi.get(self, "resource_share_name") + + @resource_share_name.setter + def resource_share_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_share_name", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) + + @property + @pulumi.getter(name="s3BucketArn") + def s3_bucket_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN for the Amazon Security Lake Amazon S3 bucket. + """ + return pulumi.get(self, "s3_bucket_arn") + + @s3_bucket_arn.setter + def s3_bucket_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "s3_bucket_arn", value) + + @property + @pulumi.getter + def source(self) -> Optional[pulumi.Input['SubscriberSourceArgs']]: + """ + The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + """ + return pulumi.get(self, "source") + + @source.setter + def source(self, value: Optional[pulumi.Input['SubscriberSourceArgs']]): + pulumi.set(self, "source", value) + + @property + @pulumi.getter(name="subscriberDescription") + def subscriber_description(self) -> Optional[pulumi.Input[str]]: + """ + The description for your subscriber account in Security Lake. + """ + return pulumi.get(self, "subscriber_description") + + @subscriber_description.setter + def subscriber_description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_description", value) + + @property + @pulumi.getter(name="subscriberEndpoint") + def subscriber_endpoint(self) -> Optional[pulumi.Input[str]]: + """ + The subscriber endpoint to which exception messages are posted. + """ + return pulumi.get(self, "subscriber_endpoint") + + @subscriber_endpoint.setter + def subscriber_endpoint(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_endpoint", value) + + @property + @pulumi.getter(name="subscriberIdentity") + def subscriber_identity(self) -> Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']]: + """ + The AWS identity used to access your data. + """ + return pulumi.get(self, "subscriber_identity") + + @subscriber_identity.setter + def subscriber_identity(self, value: Optional[pulumi.Input['SubscriberSubscriberIdentityArgs']]): + pulumi.set(self, "subscriber_identity", value) + + @property + @pulumi.getter(name="subscriberName") + def subscriber_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of your Security Lake subscriber account. + """ + return pulumi.get(self, "subscriber_name") + + @subscriber_name.setter + def subscriber_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_name", value) + + @property + @pulumi.getter(name="subscriberStatus") + def subscriber_status(self) -> Optional[pulumi.Input[str]]: + """ + The subscriber status of the Amazon Security Lake subscriber account. + """ + return pulumi.get(self, "subscriber_status") + + @subscriber_status.setter + def subscriber_status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subscriber_status", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: + """ + 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. + """ + 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") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + 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['SubscriberTimeoutsArgs']]: + return pulumi.get(self, "timeouts") + + @timeouts.setter + def timeouts(self, value: Optional[pulumi.Input['SubscriberTimeoutsArgs']]): + pulumi.set(self, "timeouts", value) + + +class Subscriber(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + access_type: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input[pulumi.InputType['SubscriberSourceArgs']]] = None, + subscriber_description: Optional[pulumi.Input[str]] = None, + subscriber_identity: Optional[pulumi.Input[pulumi.InputType['SubscriberSubscriberIdentityArgs']]] = None, + subscriber_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input[pulumi.InputType['SubscriberTimeoutsArgs']]] = None, + __props__=None): + """ + Resource for managing an AWS Security Lake Subscriber. + + ## Import + + Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: + + ```sh + $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 + ``` + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[pulumi.InputType['SubscriberSourceArgs']] source: The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + :param pulumi.Input[str] subscriber_description: The description for your subscriber account in Security Lake. + :param pulumi.Input[pulumi.InputType['SubscriberSubscriberIdentityArgs']] subscriber_identity: The AWS identity used to access your data. + :param pulumi.Input[str] subscriber_name: The name of your Security Lake subscriber account. + :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. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[SubscriberArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource for managing an AWS Security Lake Subscriber. + + ## Import + + Using `pulumi import`, import Security Lake subscriber using the subscriber ARN. For example: + + ```sh + $ pulumi import aws:securitylake/subscriber:Subscriber example arn:aws:securitylake:eu-west-2:1234567890:subscriber/9f3bfe79-d543-474d-a93c-f3846805d208 + ``` + + :param str resource_name: The name of the resource. + :param SubscriberArgs 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(SubscriberArgs, 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, + access_type: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input[pulumi.InputType['SubscriberSourceArgs']]] = None, + subscriber_description: Optional[pulumi.Input[str]] = None, + subscriber_identity: Optional[pulumi.Input[pulumi.InputType['SubscriberSubscriberIdentityArgs']]] = None, + subscriber_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None, + timeouts: Optional[pulumi.Input[pulumi.InputType['SubscriberTimeoutsArgs']]] = 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__ = SubscriberArgs.__new__(SubscriberArgs) + + __props__.__dict__["access_type"] = access_type + __props__.__dict__["source"] = source + __props__.__dict__["subscriber_description"] = subscriber_description + __props__.__dict__["subscriber_identity"] = subscriber_identity + __props__.__dict__["subscriber_name"] = subscriber_name + __props__.__dict__["tags"] = tags + __props__.__dict__["timeouts"] = timeouts + __props__.__dict__["arn"] = None + __props__.__dict__["resource_share_arn"] = None + __props__.__dict__["resource_share_name"] = None + __props__.__dict__["role_arn"] = None + __props__.__dict__["s3_bucket_arn"] = None + __props__.__dict__["subscriber_endpoint"] = None + __props__.__dict__["subscriber_status"] = None + __props__.__dict__["tags_all"] = None + super(Subscriber, __self__).__init__( + 'aws:securitylake/subscriber:Subscriber', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + access_type: Optional[pulumi.Input[str]] = None, + arn: Optional[pulumi.Input[str]] = None, + resource_share_arn: Optional[pulumi.Input[str]] = None, + resource_share_name: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + s3_bucket_arn: Optional[pulumi.Input[str]] = None, + source: Optional[pulumi.Input[pulumi.InputType['SubscriberSourceArgs']]] = None, + subscriber_description: Optional[pulumi.Input[str]] = None, + subscriber_endpoint: Optional[pulumi.Input[str]] = None, + subscriber_identity: Optional[pulumi.Input[pulumi.InputType['SubscriberSubscriberIdentityArgs']]] = None, + subscriber_name: Optional[pulumi.Input[str]] = None, + subscriber_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, + timeouts: Optional[pulumi.Input[pulumi.InputType['SubscriberTimeoutsArgs']]] = None) -> 'Subscriber': + """ + Get an existing Subscriber 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 Data Lake. + :param pulumi.Input[str] resource_share_arn: The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + :param pulumi.Input[str] resource_share_name: The name of the resource share. + :param pulumi.Input[str] role_arn: The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + :param pulumi.Input[str] s3_bucket_arn: The ARN for the Amazon Security Lake Amazon S3 bucket. + :param pulumi.Input[pulumi.InputType['SubscriberSourceArgs']] source: The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + :param pulumi.Input[str] subscriber_description: The description for your subscriber account in Security Lake. + :param pulumi.Input[str] subscriber_endpoint: The subscriber endpoint to which exception messages are posted. + :param pulumi.Input[pulumi.InputType['SubscriberSubscriberIdentityArgs']] subscriber_identity: The AWS identity used to access your data. + :param pulumi.Input[str] subscriber_name: The name of your Security Lake subscriber account. + :param pulumi.Input[str] subscriber_status: The subscriber status of the Amazon Security Lake subscriber account. + :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. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _SubscriberState.__new__(_SubscriberState) + + __props__.__dict__["access_type"] = access_type + __props__.__dict__["arn"] = arn + __props__.__dict__["resource_share_arn"] = resource_share_arn + __props__.__dict__["resource_share_name"] = resource_share_name + __props__.__dict__["role_arn"] = role_arn + __props__.__dict__["s3_bucket_arn"] = s3_bucket_arn + __props__.__dict__["source"] = source + __props__.__dict__["subscriber_description"] = subscriber_description + __props__.__dict__["subscriber_endpoint"] = subscriber_endpoint + __props__.__dict__["subscriber_identity"] = subscriber_identity + __props__.__dict__["subscriber_name"] = subscriber_name + __props__.__dict__["subscriber_status"] = subscriber_status + __props__.__dict__["tags"] = tags + __props__.__dict__["tags_all"] = tags_all + __props__.__dict__["timeouts"] = timeouts + return Subscriber(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="accessType") + def access_type(self) -> pulumi.Output[str]: + return pulumi.get(self, "access_type") + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + ARN of the Data Lake. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="resourceShareArn") + def resource_share_arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share. + """ + return pulumi.get(self, "resource_share_arn") + + @property + @pulumi.getter(name="resourceShareName") + def resource_share_name(self) -> pulumi.Output[str]: + """ + The name of the resource share. + """ + return pulumi.get(self, "resource_share_name") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Output[str]: + """ + The ARN of the IAM role to be used by the entity putting logs into your custom source partition. + """ + return pulumi.get(self, "role_arn") + + @property + @pulumi.getter(name="s3BucketArn") + def s3_bucket_arn(self) -> pulumi.Output[str]: + """ + The ARN for the Amazon Security Lake Amazon S3 bucket. + """ + return pulumi.get(self, "s3_bucket_arn") + + @property + @pulumi.getter + def source(self) -> pulumi.Output[Optional['outputs.SubscriberSource']]: + """ + The supported AWS services from which logs and events are collected. Security Lake supports log and event collection for natively supported AWS services. + """ + return pulumi.get(self, "source") + + @property + @pulumi.getter(name="subscriberDescription") + def subscriber_description(self) -> pulumi.Output[Optional[str]]: + """ + The description for your subscriber account in Security Lake. + """ + return pulumi.get(self, "subscriber_description") + + @property + @pulumi.getter(name="subscriberEndpoint") + def subscriber_endpoint(self) -> pulumi.Output[str]: + """ + The subscriber endpoint to which exception messages are posted. + """ + return pulumi.get(self, "subscriber_endpoint") + + @property + @pulumi.getter(name="subscriberIdentity") + def subscriber_identity(self) -> pulumi.Output[Optional['outputs.SubscriberSubscriberIdentity']]: + """ + The AWS identity used to access your data. + """ + return pulumi.get(self, "subscriber_identity") + + @property + @pulumi.getter(name="subscriberName") + def subscriber_name(self) -> pulumi.Output[Optional[str]]: + """ + The name of your Security Lake subscriber account. + """ + return pulumi.get(self, "subscriber_name") + + @property + @pulumi.getter(name="subscriberStatus") + def subscriber_status(self) -> pulumi.Output[str]: + """ + The subscriber status of the Amazon Security Lake subscriber account. + """ + return pulumi.get(self, "subscriber_status") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]: + """ + 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. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tagsAll") + 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. + """ + warnings.warn("""Please use `tags` instead.""", DeprecationWarning) + pulumi.log.warn("""tags_all is deprecated: Please use `tags` instead.""") + + return pulumi.get(self, "tags_all") + + @property + @pulumi.getter + def timeouts(self) -> pulumi.Output[Optional['outputs.SubscriberTimeouts']]: + return pulumi.get(self, "timeouts") + diff --git a/sdk/python/pulumi_aws/wafv2/_inputs.py b/sdk/python/pulumi_aws/wafv2/_inputs.py index 24d0a157c66..0d852276cc8 100644 --- a/sdk/python/pulumi_aws/wafv2/_inputs.py +++ b/sdk/python/pulumi_aws/wafv2/_inputs.py @@ -2895,12 +2895,16 @@ def __init__(__self__, *, limit: pulumi.Input[int], aggregate_key_type: Optional[pulumi.Input[str]] = None, custom_keys: Optional[pulumi.Input[Sequence[pulumi.Input['RuleGroupRuleStatementRateBasedStatementCustomKeyArgs']]]] = None, + evaluation_window_sec: Optional[pulumi.Input[int]] = None, forwarded_ip_config: Optional[pulumi.Input['RuleGroupRuleStatementRateBasedStatementForwardedIpConfigArgs']] = None, scope_down_statement: Optional[pulumi.Input['RuleGroupRuleStatementRateBasedStatementScopeDownStatementArgs']] = None): """ :param pulumi.Input[int] limit: The limit on requests per 5-minute period for a single originating IP address. :param pulumi.Input[str] aggregate_key_type: Setting that indicates how to aggregate the request counts. Valid values include: `CONSTANT`, `CUSTOM_KEYS`, `FORWARDED_IP` or `IP`. Default: `IP`. :param pulumi.Input[Sequence[pulumi.Input['RuleGroupRuleStatementRateBasedStatementCustomKeyArgs']]] custom_keys: Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details. + :param pulumi.Input[int] evaluation_window_sec: The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. :param pulumi.Input['RuleGroupRuleStatementRateBasedStatementForwardedIpConfigArgs'] forwarded_ip_config: The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. :param pulumi.Input['RuleGroupRuleStatementRateBasedStatementScopeDownStatementArgs'] scope_down_statement: An optional nested statement that narrows the scope of the rate-based statement to matching web requests. This can be any nestable statement, and you can nest statements at any level below this scope-down statement. See Statement above for details. If `aggregate_key_type` is set to `CONSTANT`, this block is required. """ @@ -2909,6 +2913,8 @@ def __init__(__self__, *, pulumi.set(__self__, "aggregate_key_type", aggregate_key_type) if custom_keys is not None: pulumi.set(__self__, "custom_keys", custom_keys) + if evaluation_window_sec is not None: + pulumi.set(__self__, "evaluation_window_sec", evaluation_window_sec) if forwarded_ip_config is not None: pulumi.set(__self__, "forwarded_ip_config", forwarded_ip_config) if scope_down_statement is not None: @@ -2950,6 +2956,20 @@ def custom_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleGroupR def custom_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleGroupRuleStatementRateBasedStatementCustomKeyArgs']]]]): pulumi.set(self, "custom_keys", value) + @property + @pulumi.getter(name="evaluationWindowSec") + def evaluation_window_sec(self) -> Optional[pulumi.Input[int]]: + """ + The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + """ + return pulumi.get(self, "evaluation_window_sec") + + @evaluation_window_sec.setter + def evaluation_window_sec(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "evaluation_window_sec", value) + @property @pulumi.getter(name="forwardedIpConfig") def forwarded_ip_config(self) -> Optional[pulumi.Input['RuleGroupRuleStatementRateBasedStatementForwardedIpConfigArgs']]: @@ -21899,12 +21919,16 @@ def __init__(__self__, *, limit: pulumi.Input[int], aggregate_key_type: Optional[pulumi.Input[str]] = None, custom_keys: Optional[pulumi.Input[Sequence[pulumi.Input['WebAclRuleStatementRateBasedStatementCustomKeyArgs']]]] = None, + evaluation_window_sec: Optional[pulumi.Input[int]] = None, forwarded_ip_config: Optional[pulumi.Input['WebAclRuleStatementRateBasedStatementForwardedIpConfigArgs']] = None, scope_down_statement: Optional[pulumi.Input['WebAclRuleStatementRateBasedStatementScopeDownStatementArgs']] = None): """ :param pulumi.Input[int] limit: Limit on requests per 5-minute period for a single originating IP address. :param pulumi.Input[str] aggregate_key_type: Setting that indicates how to aggregate the request counts. Valid values include: `CONSTANT`, `CUSTOM_KEYS`, `FORWARDED_IP`, or `IP`. Default: `IP`. :param pulumi.Input[Sequence[pulumi.Input['WebAclRuleStatementRateBasedStatementCustomKeyArgs']]] custom_keys: Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details. + :param pulumi.Input[int] evaluation_window_sec: The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. :param pulumi.Input['WebAclRuleStatementRateBasedStatementForwardedIpConfigArgs'] forwarded_ip_config: Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. :param pulumi.Input['WebAclRuleStatementRateBasedStatementScopeDownStatementArgs'] scope_down_statement: Optional nested statement that narrows the scope of the rate-based statement to matching web requests. This can be any nestable statement, and you can nest statements at any level below this scope-down statement. See `statement` above for details. If `aggregate_key_type` is set to `CONSTANT`, this block is required. """ @@ -21913,6 +21937,8 @@ def __init__(__self__, *, pulumi.set(__self__, "aggregate_key_type", aggregate_key_type) if custom_keys is not None: pulumi.set(__self__, "custom_keys", custom_keys) + if evaluation_window_sec is not None: + pulumi.set(__self__, "evaluation_window_sec", evaluation_window_sec) if forwarded_ip_config is not None: pulumi.set(__self__, "forwarded_ip_config", forwarded_ip_config) if scope_down_statement is not None: @@ -21954,6 +21980,20 @@ def custom_keys(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['WebAclRule def custom_keys(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['WebAclRuleStatementRateBasedStatementCustomKeyArgs']]]]): pulumi.set(self, "custom_keys", value) + @property + @pulumi.getter(name="evaluationWindowSec") + def evaluation_window_sec(self) -> Optional[pulumi.Input[int]]: + """ + The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + """ + return pulumi.get(self, "evaluation_window_sec") + + @evaluation_window_sec.setter + def evaluation_window_sec(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "evaluation_window_sec", value) + @property @pulumi.getter(name="forwardedIpConfig") def forwarded_ip_config(self) -> Optional[pulumi.Input['WebAclRuleStatementRateBasedStatementForwardedIpConfigArgs']]: diff --git a/sdk/python/pulumi_aws/wafv2/outputs.py b/sdk/python/pulumi_aws/wafv2/outputs.py index 208d91668c8..19b8b5d5ce6 100644 --- a/sdk/python/pulumi_aws/wafv2/outputs.py +++ b/sdk/python/pulumi_aws/wafv2/outputs.py @@ -3067,6 +3067,8 @@ def __key_warning(key: str): suggest = "aggregate_key_type" elif key == "customKeys": suggest = "custom_keys" + elif key == "evaluationWindowSec": + suggest = "evaluation_window_sec" elif key == "forwardedIpConfig": suggest = "forwarded_ip_config" elif key == "scopeDownStatement": @@ -3087,12 +3089,16 @@ def __init__(__self__, *, limit: int, aggregate_key_type: Optional[str] = None, custom_keys: Optional[Sequence['outputs.RuleGroupRuleStatementRateBasedStatementCustomKey']] = None, + evaluation_window_sec: Optional[int] = None, forwarded_ip_config: Optional['outputs.RuleGroupRuleStatementRateBasedStatementForwardedIpConfig'] = None, scope_down_statement: Optional['outputs.RuleGroupRuleStatementRateBasedStatementScopeDownStatement'] = None): """ :param int limit: The limit on requests per 5-minute period for a single originating IP address. :param str aggregate_key_type: Setting that indicates how to aggregate the request counts. Valid values include: `CONSTANT`, `CUSTOM_KEYS`, `FORWARDED_IP` or `IP`. Default: `IP`. :param Sequence['RuleGroupRuleStatementRateBasedStatementCustomKeyArgs'] custom_keys: Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details. + :param int evaluation_window_sec: The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. :param 'RuleGroupRuleStatementRateBasedStatementForwardedIpConfigArgs' forwarded_ip_config: The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See Forwarded IP Config below for details. :param 'RuleGroupRuleStatementRateBasedStatementScopeDownStatementArgs' scope_down_statement: An optional nested statement that narrows the scope of the rate-based statement to matching web requests. This can be any nestable statement, and you can nest statements at any level below this scope-down statement. See Statement above for details. If `aggregate_key_type` is set to `CONSTANT`, this block is required. """ @@ -3101,6 +3107,8 @@ def __init__(__self__, *, pulumi.set(__self__, "aggregate_key_type", aggregate_key_type) if custom_keys is not None: pulumi.set(__self__, "custom_keys", custom_keys) + if evaluation_window_sec is not None: + pulumi.set(__self__, "evaluation_window_sec", evaluation_window_sec) if forwarded_ip_config is not None: pulumi.set(__self__, "forwarded_ip_config", forwarded_ip_config) if scope_down_statement is not None: @@ -3130,6 +3138,16 @@ def custom_keys(self) -> Optional[Sequence['outputs.RuleGroupRuleStatementRateBa """ return pulumi.get(self, "custom_keys") + @property + @pulumi.getter(name="evaluationWindowSec") + def evaluation_window_sec(self) -> Optional[int]: + """ + The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + """ + return pulumi.get(self, "evaluation_window_sec") + @property @pulumi.getter(name="forwardedIpConfig") def forwarded_ip_config(self) -> Optional['outputs.RuleGroupRuleStatementRateBasedStatementForwardedIpConfig']: @@ -23604,6 +23622,8 @@ def __key_warning(key: str): suggest = "aggregate_key_type" elif key == "customKeys": suggest = "custom_keys" + elif key == "evaluationWindowSec": + suggest = "evaluation_window_sec" elif key == "forwardedIpConfig": suggest = "forwarded_ip_config" elif key == "scopeDownStatement": @@ -23624,12 +23644,16 @@ def __init__(__self__, *, limit: int, aggregate_key_type: Optional[str] = None, custom_keys: Optional[Sequence['outputs.WebAclRuleStatementRateBasedStatementCustomKey']] = None, + evaluation_window_sec: Optional[int] = None, forwarded_ip_config: Optional['outputs.WebAclRuleStatementRateBasedStatementForwardedIpConfig'] = None, scope_down_statement: Optional['outputs.WebAclRuleStatementRateBasedStatementScopeDownStatement'] = None): """ :param int limit: Limit on requests per 5-minute period for a single originating IP address. :param str aggregate_key_type: Setting that indicates how to aggregate the request counts. Valid values include: `CONSTANT`, `CUSTOM_KEYS`, `FORWARDED_IP`, or `IP`. Default: `IP`. :param Sequence['WebAclRuleStatementRateBasedStatementCustomKeyArgs'] custom_keys: Aggregate the request counts using one or more web request components as the aggregate keys. See `custom_key` below for details. + :param int evaluation_window_sec: The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. :param 'WebAclRuleStatementRateBasedStatementForwardedIpConfigArgs' forwarded_ip_config: Configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. If `aggregate_key_type` is set to `FORWARDED_IP`, this block is required. See `forwarded_ip_config` below for details. :param 'WebAclRuleStatementRateBasedStatementScopeDownStatementArgs' scope_down_statement: Optional nested statement that narrows the scope of the rate-based statement to matching web requests. This can be any nestable statement, and you can nest statements at any level below this scope-down statement. See `statement` above for details. If `aggregate_key_type` is set to `CONSTANT`, this block is required. """ @@ -23638,6 +23662,8 @@ def __init__(__self__, *, pulumi.set(__self__, "aggregate_key_type", aggregate_key_type) if custom_keys is not None: pulumi.set(__self__, "custom_keys", custom_keys) + if evaluation_window_sec is not None: + pulumi.set(__self__, "evaluation_window_sec", evaluation_window_sec) if forwarded_ip_config is not None: pulumi.set(__self__, "forwarded_ip_config", forwarded_ip_config) if scope_down_statement is not None: @@ -23667,6 +23693,16 @@ def custom_keys(self) -> Optional[Sequence['outputs.WebAclRuleStatementRateBased """ return pulumi.get(self, "custom_keys") + @property + @pulumi.getter(name="evaluationWindowSec") + def evaluation_window_sec(self) -> Optional[int]: + """ + The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. Valid values are `60`, `120`, `300`, and `600`. Defaults to `300` (5 minutes). + + **NOTE:** This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds. + """ + return pulumi.get(self, "evaluation_window_sec") + @property @pulumi.getter(name="forwardedIpConfig") def forwarded_ip_config(self) -> Optional['outputs.WebAclRuleStatementRateBasedStatementForwardedIpConfig']: