pulumi-aws 7.15.0__py3-none-any.whl → 7.16.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. pulumi_aws/__init__.py +80 -0
  2. pulumi_aws/alb/listener.py +7 -7
  3. pulumi_aws/alb/target_group.py +7 -7
  4. pulumi_aws/alb/target_group_attachment.py +83 -0
  5. pulumi_aws/apigateway/domain_name.py +86 -7
  6. pulumi_aws/apigateway/get_domain_name.py +15 -1
  7. pulumi_aws/apigateway/integration.py +48 -8
  8. pulumi_aws/athena/_inputs.py +412 -5
  9. pulumi_aws/athena/outputs.py +342 -2
  10. pulumi_aws/backup/global_settings.py +15 -7
  11. pulumi_aws/bedrock/agentcore_memory_strategy.py +8 -0
  12. pulumi_aws/cleanrooms/collaboration.py +26 -6
  13. pulumi_aws/cloudfront/__init__.py +6 -0
  14. pulumi_aws/cloudfront/_inputs.py +3601 -478
  15. pulumi_aws/cloudfront/connection_function.py +658 -0
  16. pulumi_aws/cloudfront/connection_group.py +649 -0
  17. pulumi_aws/cloudfront/distribution.py +142 -0
  18. pulumi_aws/cloudfront/distribution_tenant.py +857 -0
  19. pulumi_aws/cloudfront/get_connection_group.py +249 -0
  20. pulumi_aws/cloudfront/get_distribution_tenant.py +279 -0
  21. pulumi_aws/cloudfront/multitenant_distribution.py +1181 -0
  22. pulumi_aws/cloudfront/outputs.py +3034 -376
  23. pulumi_aws/cloudwatch/log_subscription_filter.py +136 -42
  24. pulumi_aws/directconnect/gateway.py +78 -3
  25. pulumi_aws/directconnect/get_gateway.py +24 -4
  26. pulumi_aws/dlm/_inputs.py +3 -3
  27. pulumi_aws/dlm/outputs.py +2 -2
  28. pulumi_aws/dynamodb/__init__.py +1 -0
  29. pulumi_aws/dynamodb/_inputs.py +370 -0
  30. pulumi_aws/dynamodb/global_secondary_index.py +666 -0
  31. pulumi_aws/dynamodb/outputs.py +315 -0
  32. pulumi_aws/dynamodb/table.py +9 -1
  33. pulumi_aws/ec2/_inputs.py +44 -4
  34. pulumi_aws/ec2/get_vpc_endpoint.py +24 -4
  35. pulumi_aws/ec2/outputs.py +54 -4
  36. pulumi_aws/ecr/__init__.py +1 -0
  37. pulumi_aws/ecr/_inputs.py +58 -22
  38. pulumi_aws/ecr/get_repository_creation_template.py +1 -1
  39. pulumi_aws/ecr/lifecycle_policy.py +152 -64
  40. pulumi_aws/ecr/outputs.py +37 -15
  41. pulumi_aws/ecr/pull_time_update_exclusion.py +363 -0
  42. pulumi_aws/ecr/repository_creation_template.py +7 -7
  43. pulumi_aws/ecs/_inputs.py +20 -0
  44. pulumi_aws/ecs/outputs.py +14 -0
  45. pulumi_aws/ecs/task_definition.py +28 -28
  46. pulumi_aws/elasticache/replication_group.py +7 -7
  47. pulumi_aws/fsx/ontap_file_system.py +14 -0
  48. pulumi_aws/glue/resource_policy.py +4 -4
  49. pulumi_aws/guardduty/_inputs.py +41 -1
  50. pulumi_aws/guardduty/outputs.py +27 -1
  51. pulumi_aws/iam/get_saml_provider.py +15 -1
  52. pulumi_aws/iam/outbound_web_identity_federation.py +0 -4
  53. pulumi_aws/iam/policy.py +47 -0
  54. pulumi_aws/iam/saml_provider.py +28 -0
  55. pulumi_aws/iam/virtual_mfa_device.py +66 -38
  56. pulumi_aws/imagebuilder/_inputs.py +87 -0
  57. pulumi_aws/imagebuilder/image.py +47 -0
  58. pulumi_aws/imagebuilder/image_pipeline.py +47 -0
  59. pulumi_aws/imagebuilder/outputs.py +87 -0
  60. pulumi_aws/kms/grant.py +18 -18
  61. pulumi_aws/lambda_/_inputs.py +24 -4
  62. pulumi_aws/lambda_/event_source_mapping.py +2 -0
  63. pulumi_aws/lambda_/function.py +28 -0
  64. pulumi_aws/lambda_/function_url.py +4 -0
  65. pulumi_aws/lambda_/get_function.py +15 -1
  66. pulumi_aws/lambda_/outputs.py +17 -3
  67. pulumi_aws/lambda_/permission.py +47 -0
  68. pulumi_aws/lb/listener.py +7 -7
  69. pulumi_aws/lb/target_group.py +7 -7
  70. pulumi_aws/lb/target_group_attachment.py +83 -0
  71. pulumi_aws/networkfirewall/_inputs.py +3 -3
  72. pulumi_aws/networkfirewall/outputs.py +2 -2
  73. pulumi_aws/networkfirewall/vpc_endpoint_association.py +2 -2
  74. pulumi_aws/networkmanager/vpc_attachment.py +7 -7
  75. pulumi_aws/opensearchingest/pipeline.py +47 -0
  76. pulumi_aws/organizations/__init__.py +1 -0
  77. pulumi_aws/organizations/tag.py +292 -0
  78. pulumi_aws/pulumi-plugin.json +1 -1
  79. pulumi_aws/rds/cluster.py +21 -21
  80. pulumi_aws/rds/get_proxy.py +29 -1
  81. pulumi_aws/rds/proxy.py +94 -0
  82. pulumi_aws/rds/proxy_default_target_group.py +0 -76
  83. pulumi_aws/rds/proxy_target.py +0 -80
  84. pulumi_aws/redshift/__init__.py +1 -0
  85. pulumi_aws/redshift/_inputs.py +329 -0
  86. pulumi_aws/redshift/idc_application.py +687 -0
  87. pulumi_aws/redshift/outputs.py +265 -0
  88. pulumi_aws/route53/get_resolver_firewall_rules.py +9 -0
  89. pulumi_aws/route53/get_resolver_rule.py +19 -4
  90. pulumi_aws/route53/outputs.py +108 -1
  91. pulumi_aws/route53/resolver_firewall_rule.py +199 -32
  92. pulumi_aws/secretsmanager/__init__.py +1 -0
  93. pulumi_aws/secretsmanager/tag.py +333 -0
  94. pulumi_aws/sesv2/__init__.py +1 -0
  95. pulumi_aws/sesv2/tenant.py +418 -0
  96. pulumi_aws/sfn/activity.py +0 -4
  97. pulumi_aws/sfn/alias.py +0 -4
  98. pulumi_aws/transfer/_inputs.py +126 -0
  99. pulumi_aws/transfer/outputs.py +97 -0
  100. pulumi_aws/transfer/web_app.py +54 -7
  101. pulumi_aws/vpclattice/service_network_resource_association.py +47 -0
  102. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/METADATA +1 -1
  103. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/RECORD +105 -93
  104. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/WHEEL +0 -0
  105. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/top_level.txt +0 -0
@@ -30,6 +30,8 @@ __all__ = [
30
30
  'ServerWorkflowDetailsOnUpload',
31
31
  'UserHomeDirectoryMapping',
32
32
  'UserPosixProfile',
33
+ 'WebAppEndpointDetails',
34
+ 'WebAppEndpointDetailsVpc',
33
35
  'WebAppIdentityProviderDetails',
34
36
  'WebAppIdentityProviderDetailsIdentityCenterConfig',
35
37
  'WebAppWebAppUnit',
@@ -874,6 +876,101 @@ class UserPosixProfile(dict):
874
876
  return pulumi.get(self, "secondary_gids")
875
877
 
876
878
 
879
+ @pulumi.output_type
880
+ class WebAppEndpointDetails(dict):
881
+ def __init__(__self__, *,
882
+ vpc: Optional['outputs.WebAppEndpointDetailsVpc'] = None):
883
+ """
884
+ :param 'WebAppEndpointDetailsVpcArgs' vpc: Block defining VPC configuration for hosting the web app endpoint within a VPC. See Vpc below.
885
+ """
886
+ if vpc is not None:
887
+ pulumi.set(__self__, "vpc", vpc)
888
+
889
+ @_builtins.property
890
+ @pulumi.getter
891
+ def vpc(self) -> Optional['outputs.WebAppEndpointDetailsVpc']:
892
+ """
893
+ Block defining VPC configuration for hosting the web app endpoint within a VPC. See Vpc below.
894
+ """
895
+ return pulumi.get(self, "vpc")
896
+
897
+
898
+ @pulumi.output_type
899
+ class WebAppEndpointDetailsVpc(dict):
900
+ @staticmethod
901
+ def __key_warning(key: str):
902
+ suggest = None
903
+ if key == "subnetIds":
904
+ suggest = "subnet_ids"
905
+ elif key == "vpcId":
906
+ suggest = "vpc_id"
907
+ elif key == "securityGroupIds":
908
+ suggest = "security_group_ids"
909
+ elif key == "vpcEndpointId":
910
+ suggest = "vpc_endpoint_id"
911
+
912
+ if suggest:
913
+ pulumi.log.warn(f"Key '{key}' not found in WebAppEndpointDetailsVpc. Access the value via the '{suggest}' property getter instead.")
914
+
915
+ def __getitem__(self, key: str) -> Any:
916
+ WebAppEndpointDetailsVpc.__key_warning(key)
917
+ return super().__getitem__(key)
918
+
919
+ def get(self, key: str, default = None) -> Any:
920
+ WebAppEndpointDetailsVpc.__key_warning(key)
921
+ return super().get(key, default)
922
+
923
+ def __init__(__self__, *,
924
+ subnet_ids: Sequence[_builtins.str],
925
+ vpc_id: _builtins.str,
926
+ security_group_ids: Optional[Sequence[_builtins.str]] = None,
927
+ vpc_endpoint_id: Optional[_builtins.str] = None):
928
+ """
929
+ :param Sequence[_builtins.str] subnet_ids: List of subnet IDs within the VPC where the web app endpoint will be deployed. These subnets must be in the same VPC specified in the `vpc_id` parameter.
930
+ :param _builtins.str vpc_id: ID of the VPC where the web app endpoint will be hosted. The VPC must be dual-stack, meaning it supports both IPv4 and IPv6 addressing.
931
+ :param Sequence[_builtins.str] security_group_ids: List of security group IDs that control access to the web app endpoint. If not specified, the VPC's default security group is used.
932
+ :param _builtins.str vpc_endpoint_id: ID of the VPC endpoint created for the web app.
933
+ """
934
+ pulumi.set(__self__, "subnet_ids", subnet_ids)
935
+ pulumi.set(__self__, "vpc_id", vpc_id)
936
+ if security_group_ids is not None:
937
+ pulumi.set(__self__, "security_group_ids", security_group_ids)
938
+ if vpc_endpoint_id is not None:
939
+ pulumi.set(__self__, "vpc_endpoint_id", vpc_endpoint_id)
940
+
941
+ @_builtins.property
942
+ @pulumi.getter(name="subnetIds")
943
+ def subnet_ids(self) -> Sequence[_builtins.str]:
944
+ """
945
+ List of subnet IDs within the VPC where the web app endpoint will be deployed. These subnets must be in the same VPC specified in the `vpc_id` parameter.
946
+ """
947
+ return pulumi.get(self, "subnet_ids")
948
+
949
+ @_builtins.property
950
+ @pulumi.getter(name="vpcId")
951
+ def vpc_id(self) -> _builtins.str:
952
+ """
953
+ ID of the VPC where the web app endpoint will be hosted. The VPC must be dual-stack, meaning it supports both IPv4 and IPv6 addressing.
954
+ """
955
+ return pulumi.get(self, "vpc_id")
956
+
957
+ @_builtins.property
958
+ @pulumi.getter(name="securityGroupIds")
959
+ def security_group_ids(self) -> Optional[Sequence[_builtins.str]]:
960
+ """
961
+ List of security group IDs that control access to the web app endpoint. If not specified, the VPC's default security group is used.
962
+ """
963
+ return pulumi.get(self, "security_group_ids")
964
+
965
+ @_builtins.property
966
+ @pulumi.getter(name="vpcEndpointId")
967
+ def vpc_endpoint_id(self) -> Optional[_builtins.str]:
968
+ """
969
+ ID of the VPC endpoint created for the web app.
970
+ """
971
+ return pulumi.get(self, "vpc_endpoint_id")
972
+
973
+
877
974
  @pulumi.output_type
878
975
  class WebAppIdentityProviderDetails(dict):
879
976
  @staticmethod
@@ -22,6 +22,7 @@ __all__ = ['WebAppArgs', 'WebApp']
22
22
  class WebAppArgs:
23
23
  def __init__(__self__, *,
24
24
  access_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
25
+ endpoint_details: Optional[pulumi.Input['WebAppEndpointDetailsArgs']] = None,
25
26
  identity_provider_details: Optional[pulumi.Input['WebAppIdentityProviderDetailsArgs']] = None,
26
27
  region: Optional[pulumi.Input[_builtins.str]] = None,
27
28
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -29,7 +30,8 @@ class WebAppArgs:
29
30
  web_app_units: Optional[pulumi.Input[Sequence[pulumi.Input['WebAppWebAppUnitArgs']]]] = None):
30
31
  """
31
32
  The set of arguments for constructing a WebApp resource.
32
- :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app.
33
+ :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
34
+ :param pulumi.Input['WebAppEndpointDetailsArgs'] endpoint_details: Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
33
35
  :param pulumi.Input['WebAppIdentityProviderDetailsArgs'] identity_provider_details: Block for details of the identity provider to use with the web app. See Identity provider details below.
34
36
 
35
37
  The following arguments are optional:
@@ -41,6 +43,8 @@ class WebAppArgs:
41
43
  """
42
44
  if access_endpoint is not None:
43
45
  pulumi.set(__self__, "access_endpoint", access_endpoint)
46
+ if endpoint_details is not None:
47
+ pulumi.set(__self__, "endpoint_details", endpoint_details)
44
48
  if identity_provider_details is not None:
45
49
  pulumi.set(__self__, "identity_provider_details", identity_provider_details)
46
50
  if region is not None:
@@ -56,7 +60,7 @@ class WebAppArgs:
56
60
  @pulumi.getter(name="accessEndpoint")
57
61
  def access_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
58
62
  """
59
- URL provided to interact with the Transfer Family web app.
63
+ URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
60
64
  """
61
65
  return pulumi.get(self, "access_endpoint")
62
66
 
@@ -64,6 +68,18 @@ class WebAppArgs:
64
68
  def access_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
65
69
  pulumi.set(self, "access_endpoint", value)
66
70
 
71
+ @_builtins.property
72
+ @pulumi.getter(name="endpointDetails")
73
+ def endpoint_details(self) -> Optional[pulumi.Input['WebAppEndpointDetailsArgs']]:
74
+ """
75
+ Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
76
+ """
77
+ return pulumi.get(self, "endpoint_details")
78
+
79
+ @endpoint_details.setter
80
+ def endpoint_details(self, value: Optional[pulumi.Input['WebAppEndpointDetailsArgs']]):
81
+ pulumi.set(self, "endpoint_details", value)
82
+
67
83
  @_builtins.property
68
84
  @pulumi.getter(name="identityProviderDetails")
69
85
  def identity_provider_details(self) -> Optional[pulumi.Input['WebAppIdentityProviderDetailsArgs']]:
@@ -133,6 +149,7 @@ class _WebAppState:
133
149
  def __init__(__self__, *,
134
150
  access_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
135
151
  arn: Optional[pulumi.Input[_builtins.str]] = None,
152
+ endpoint_details: Optional[pulumi.Input['WebAppEndpointDetailsArgs']] = None,
136
153
  identity_provider_details: Optional[pulumi.Input['WebAppIdentityProviderDetailsArgs']] = None,
137
154
  region: Optional[pulumi.Input[_builtins.str]] = None,
138
155
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -142,8 +159,9 @@ class _WebAppState:
142
159
  web_app_units: Optional[pulumi.Input[Sequence[pulumi.Input['WebAppWebAppUnitArgs']]]] = None):
143
160
  """
144
161
  Input properties used for looking up and filtering WebApp resources.
145
- :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app.
162
+ :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
146
163
  :param pulumi.Input[_builtins.str] arn: ARN of the Web App.
164
+ :param pulumi.Input['WebAppEndpointDetailsArgs'] endpoint_details: Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
147
165
  :param pulumi.Input['WebAppIdentityProviderDetailsArgs'] identity_provider_details: Block for details of the identity provider to use with the web app. See Identity provider details below.
148
166
 
149
167
  The following arguments are optional:
@@ -158,6 +176,8 @@ class _WebAppState:
158
176
  pulumi.set(__self__, "access_endpoint", access_endpoint)
159
177
  if arn is not None:
160
178
  pulumi.set(__self__, "arn", arn)
179
+ if endpoint_details is not None:
180
+ pulumi.set(__self__, "endpoint_details", endpoint_details)
161
181
  if identity_provider_details is not None:
162
182
  pulumi.set(__self__, "identity_provider_details", identity_provider_details)
163
183
  if region is not None:
@@ -177,7 +197,7 @@ class _WebAppState:
177
197
  @pulumi.getter(name="accessEndpoint")
178
198
  def access_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
179
199
  """
180
- URL provided to interact with the Transfer Family web app.
200
+ URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
181
201
  """
182
202
  return pulumi.get(self, "access_endpoint")
183
203
 
@@ -197,6 +217,18 @@ class _WebAppState:
197
217
  def arn(self, value: Optional[pulumi.Input[_builtins.str]]):
198
218
  pulumi.set(self, "arn", value)
199
219
 
220
+ @_builtins.property
221
+ @pulumi.getter(name="endpointDetails")
222
+ def endpoint_details(self) -> Optional[pulumi.Input['WebAppEndpointDetailsArgs']]:
223
+ """
224
+ Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
225
+ """
226
+ return pulumi.get(self, "endpoint_details")
227
+
228
+ @endpoint_details.setter
229
+ def endpoint_details(self, value: Optional[pulumi.Input['WebAppEndpointDetailsArgs']]):
230
+ pulumi.set(self, "endpoint_details", value)
231
+
200
232
  @_builtins.property
201
233
  @pulumi.getter(name="identityProviderDetails")
202
234
  def identity_provider_details(self) -> Optional[pulumi.Input['WebAppIdentityProviderDetailsArgs']]:
@@ -289,6 +321,7 @@ class WebApp(pulumi.CustomResource):
289
321
  resource_name: str,
290
322
  opts: Optional[pulumi.ResourceOptions] = None,
291
323
  access_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
324
+ endpoint_details: Optional[pulumi.Input[Union['WebAppEndpointDetailsArgs', 'WebAppEndpointDetailsArgsDict']]] = None,
292
325
  identity_provider_details: Optional[pulumi.Input[Union['WebAppIdentityProviderDetailsArgs', 'WebAppIdentityProviderDetailsArgsDict']]] = None,
293
326
  region: Optional[pulumi.Input[_builtins.str]] = None,
294
327
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -382,7 +415,8 @@ class WebApp(pulumi.CustomResource):
382
415
 
383
416
  :param str resource_name: The name of the resource.
384
417
  :param pulumi.ResourceOptions opts: Options for the resource.
385
- :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app.
418
+ :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
419
+ :param pulumi.Input[Union['WebAppEndpointDetailsArgs', 'WebAppEndpointDetailsArgsDict']] endpoint_details: Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
386
420
  :param pulumi.Input[Union['WebAppIdentityProviderDetailsArgs', 'WebAppIdentityProviderDetailsArgsDict']] identity_provider_details: Block for details of the identity provider to use with the web app. See Identity provider details below.
387
421
 
388
422
  The following arguments are optional:
@@ -499,6 +533,7 @@ class WebApp(pulumi.CustomResource):
499
533
  resource_name: str,
500
534
  opts: Optional[pulumi.ResourceOptions] = None,
501
535
  access_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
536
+ endpoint_details: Optional[pulumi.Input[Union['WebAppEndpointDetailsArgs', 'WebAppEndpointDetailsArgsDict']]] = None,
502
537
  identity_provider_details: Optional[pulumi.Input[Union['WebAppIdentityProviderDetailsArgs', 'WebAppIdentityProviderDetailsArgsDict']]] = None,
503
538
  region: Optional[pulumi.Input[_builtins.str]] = None,
504
539
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -514,6 +549,7 @@ class WebApp(pulumi.CustomResource):
514
549
  __props__ = WebAppArgs.__new__(WebAppArgs)
515
550
 
516
551
  __props__.__dict__["access_endpoint"] = access_endpoint
552
+ __props__.__dict__["endpoint_details"] = endpoint_details
517
553
  __props__.__dict__["identity_provider_details"] = identity_provider_details
518
554
  __props__.__dict__["region"] = region
519
555
  __props__.__dict__["tags"] = tags
@@ -534,6 +570,7 @@ class WebApp(pulumi.CustomResource):
534
570
  opts: Optional[pulumi.ResourceOptions] = None,
535
571
  access_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
536
572
  arn: Optional[pulumi.Input[_builtins.str]] = None,
573
+ endpoint_details: Optional[pulumi.Input[Union['WebAppEndpointDetailsArgs', 'WebAppEndpointDetailsArgsDict']]] = None,
537
574
  identity_provider_details: Optional[pulumi.Input[Union['WebAppIdentityProviderDetailsArgs', 'WebAppIdentityProviderDetailsArgsDict']]] = None,
538
575
  region: Optional[pulumi.Input[_builtins.str]] = None,
539
576
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
@@ -548,8 +585,9 @@ class WebApp(pulumi.CustomResource):
548
585
  :param str resource_name: The unique name of the resulting resource.
549
586
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
550
587
  :param pulumi.ResourceOptions opts: Options for the resource.
551
- :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app.
588
+ :param pulumi.Input[_builtins.str] access_endpoint: URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
552
589
  :param pulumi.Input[_builtins.str] arn: ARN of the Web App.
590
+ :param pulumi.Input[Union['WebAppEndpointDetailsArgs', 'WebAppEndpointDetailsArgsDict']] endpoint_details: Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
553
591
  :param pulumi.Input[Union['WebAppIdentityProviderDetailsArgs', 'WebAppIdentityProviderDetailsArgsDict']] identity_provider_details: Block for details of the identity provider to use with the web app. See Identity provider details below.
554
592
 
555
593
  The following arguments are optional:
@@ -566,6 +604,7 @@ class WebApp(pulumi.CustomResource):
566
604
 
567
605
  __props__.__dict__["access_endpoint"] = access_endpoint
568
606
  __props__.__dict__["arn"] = arn
607
+ __props__.__dict__["endpoint_details"] = endpoint_details
569
608
  __props__.__dict__["identity_provider_details"] = identity_provider_details
570
609
  __props__.__dict__["region"] = region
571
610
  __props__.__dict__["tags"] = tags
@@ -579,7 +618,7 @@ class WebApp(pulumi.CustomResource):
579
618
  @pulumi.getter(name="accessEndpoint")
580
619
  def access_endpoint(self) -> pulumi.Output[_builtins.str]:
581
620
  """
582
- URL provided to interact with the Transfer Family web app.
621
+ URL provided to interact with the Transfer Family web app. If `endpoint_details.vpc` block is specified, `access_endpoint` must not be provided.
583
622
  """
584
623
  return pulumi.get(self, "access_endpoint")
585
624
 
@@ -591,6 +630,14 @@ class WebApp(pulumi.CustomResource):
591
630
  """
592
631
  return pulumi.get(self, "arn")
593
632
 
633
+ @_builtins.property
634
+ @pulumi.getter(name="endpointDetails")
635
+ def endpoint_details(self) -> pulumi.Output[Optional['outputs.WebAppEndpointDetails']]:
636
+ """
637
+ Block for the endpoint configuration for the web app. If not specified, the web app will be created with a public endpoint.
638
+ """
639
+ return pulumi.get(self, "endpoint_details")
640
+
594
641
  @_builtins.property
595
642
  @pulumi.getter(name="identityProviderDetails")
596
643
  def identity_provider_details(self) -> pulumi.Output[Optional['outputs.WebAppIdentityProviderDetails']]:
@@ -23,6 +23,7 @@ class ServiceNetworkResourceAssociationArgs:
23
23
  def __init__(__self__, *,
24
24
  resource_configuration_identifier: pulumi.Input[_builtins.str],
25
25
  service_network_identifier: pulumi.Input[_builtins.str],
26
+ private_dns_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
26
27
  region: Optional[pulumi.Input[_builtins.str]] = None,
27
28
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
28
29
  timeouts: Optional[pulumi.Input['ServiceNetworkResourceAssociationTimeoutsArgs']] = None):
@@ -32,11 +33,14 @@ class ServiceNetworkResourceAssociationArgs:
32
33
  :param pulumi.Input[_builtins.str] service_network_identifier: Identifier of the Service Network to associate the Resource to.
33
34
 
34
35
  The following arguments are optional:
36
+ :param pulumi.Input[_builtins.bool] private_dns_enabled: Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
35
37
  :param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
36
38
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Map of tags assigned to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
37
39
  """
38
40
  pulumi.set(__self__, "resource_configuration_identifier", resource_configuration_identifier)
39
41
  pulumi.set(__self__, "service_network_identifier", service_network_identifier)
42
+ if private_dns_enabled is not None:
43
+ pulumi.set(__self__, "private_dns_enabled", private_dns_enabled)
40
44
  if region is not None:
41
45
  pulumi.set(__self__, "region", region)
42
46
  if tags is not None:
@@ -70,6 +74,18 @@ class ServiceNetworkResourceAssociationArgs:
70
74
  def service_network_identifier(self, value: pulumi.Input[_builtins.str]):
71
75
  pulumi.set(self, "service_network_identifier", value)
72
76
 
77
+ @_builtins.property
78
+ @pulumi.getter(name="privateDnsEnabled")
79
+ def private_dns_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
80
+ """
81
+ Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
82
+ """
83
+ return pulumi.get(self, "private_dns_enabled")
84
+
85
+ @private_dns_enabled.setter
86
+ def private_dns_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
87
+ pulumi.set(self, "private_dns_enabled", value)
88
+
73
89
  @_builtins.property
74
90
  @pulumi.getter
75
91
  def region(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -109,6 +125,7 @@ class _ServiceNetworkResourceAssociationState:
109
125
  def __init__(__self__, *,
110
126
  arn: Optional[pulumi.Input[_builtins.str]] = None,
111
127
  dns_entries: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceNetworkResourceAssociationDnsEntryArgs']]]] = None,
128
+ private_dns_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
112
129
  region: Optional[pulumi.Input[_builtins.str]] = None,
113
130
  resource_configuration_identifier: Optional[pulumi.Input[_builtins.str]] = None,
114
131
  service_network_identifier: Optional[pulumi.Input[_builtins.str]] = None,
@@ -119,6 +136,7 @@ class _ServiceNetworkResourceAssociationState:
119
136
  Input properties used for looking up and filtering ServiceNetworkResourceAssociation resources.
120
137
  :param pulumi.Input[_builtins.str] arn: ARN of the Service Network Resource Association.
121
138
  :param pulumi.Input[Sequence[pulumi.Input['ServiceNetworkResourceAssociationDnsEntryArgs']]] dns_entries: DNS entry of the association in the service network.
139
+ :param pulumi.Input[_builtins.bool] private_dns_enabled: Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
122
140
  :param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
123
141
  :param pulumi.Input[_builtins.str] resource_configuration_identifier: Identifier of Resource Configuration to associate to the Service Network.
124
142
  :param pulumi.Input[_builtins.str] service_network_identifier: Identifier of the Service Network to associate the Resource to.
@@ -131,6 +149,8 @@ class _ServiceNetworkResourceAssociationState:
131
149
  pulumi.set(__self__, "arn", arn)
132
150
  if dns_entries is not None:
133
151
  pulumi.set(__self__, "dns_entries", dns_entries)
152
+ if private_dns_enabled is not None:
153
+ pulumi.set(__self__, "private_dns_enabled", private_dns_enabled)
134
154
  if region is not None:
135
155
  pulumi.set(__self__, "region", region)
136
156
  if resource_configuration_identifier is not None:
@@ -168,6 +188,18 @@ class _ServiceNetworkResourceAssociationState:
168
188
  def dns_entries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceNetworkResourceAssociationDnsEntryArgs']]]]):
169
189
  pulumi.set(self, "dns_entries", value)
170
190
 
191
+ @_builtins.property
192
+ @pulumi.getter(name="privateDnsEnabled")
193
+ def private_dns_enabled(self) -> Optional[pulumi.Input[_builtins.bool]]:
194
+ """
195
+ Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
196
+ """
197
+ return pulumi.get(self, "private_dns_enabled")
198
+
199
+ @private_dns_enabled.setter
200
+ def private_dns_enabled(self, value: Optional[pulumi.Input[_builtins.bool]]):
201
+ pulumi.set(self, "private_dns_enabled", value)
202
+
171
203
  @_builtins.property
172
204
  @pulumi.getter
173
205
  def region(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -246,6 +278,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
246
278
  def __init__(__self__,
247
279
  resource_name: str,
248
280
  opts: Optional[pulumi.ResourceOptions] = None,
281
+ private_dns_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
249
282
  region: Optional[pulumi.Input[_builtins.str]] = None,
250
283
  resource_configuration_identifier: Optional[pulumi.Input[_builtins.str]] = None,
251
284
  service_network_identifier: Optional[pulumi.Input[_builtins.str]] = None,
@@ -281,6 +314,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
281
314
 
282
315
  :param str resource_name: The name of the resource.
283
316
  :param pulumi.ResourceOptions opts: Options for the resource.
317
+ :param pulumi.Input[_builtins.bool] private_dns_enabled: Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
284
318
  :param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
285
319
  :param pulumi.Input[_builtins.str] resource_configuration_identifier: Identifier of Resource Configuration to associate to the Service Network.
286
320
  :param pulumi.Input[_builtins.str] service_network_identifier: Identifier of the Service Network to associate the Resource to.
@@ -336,6 +370,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
336
370
  def _internal_init(__self__,
337
371
  resource_name: str,
338
372
  opts: Optional[pulumi.ResourceOptions] = None,
373
+ private_dns_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
339
374
  region: Optional[pulumi.Input[_builtins.str]] = None,
340
375
  resource_configuration_identifier: Optional[pulumi.Input[_builtins.str]] = None,
341
376
  service_network_identifier: Optional[pulumi.Input[_builtins.str]] = None,
@@ -350,6 +385,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
350
385
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
351
386
  __props__ = ServiceNetworkResourceAssociationArgs.__new__(ServiceNetworkResourceAssociationArgs)
352
387
 
388
+ __props__.__dict__["private_dns_enabled"] = private_dns_enabled
353
389
  __props__.__dict__["region"] = region
354
390
  if resource_configuration_identifier is None and not opts.urn:
355
391
  raise TypeError("Missing required property 'resource_configuration_identifier'")
@@ -374,6 +410,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
374
410
  opts: Optional[pulumi.ResourceOptions] = None,
375
411
  arn: Optional[pulumi.Input[_builtins.str]] = None,
376
412
  dns_entries: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceNetworkResourceAssociationDnsEntryArgs', 'ServiceNetworkResourceAssociationDnsEntryArgsDict']]]]] = None,
413
+ private_dns_enabled: Optional[pulumi.Input[_builtins.bool]] = None,
377
414
  region: Optional[pulumi.Input[_builtins.str]] = None,
378
415
  resource_configuration_identifier: Optional[pulumi.Input[_builtins.str]] = None,
379
416
  service_network_identifier: Optional[pulumi.Input[_builtins.str]] = None,
@@ -389,6 +426,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
389
426
  :param pulumi.ResourceOptions opts: Options for the resource.
390
427
  :param pulumi.Input[_builtins.str] arn: ARN of the Service Network Resource Association.
391
428
  :param pulumi.Input[Sequence[pulumi.Input[Union['ServiceNetworkResourceAssociationDnsEntryArgs', 'ServiceNetworkResourceAssociationDnsEntryArgsDict']]]] dns_entries: DNS entry of the association in the service network.
429
+ :param pulumi.Input[_builtins.bool] private_dns_enabled: Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
392
430
  :param pulumi.Input[_builtins.str] region: Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
393
431
  :param pulumi.Input[_builtins.str] resource_configuration_identifier: Identifier of Resource Configuration to associate to the Service Network.
394
432
  :param pulumi.Input[_builtins.str] service_network_identifier: Identifier of the Service Network to associate the Resource to.
@@ -403,6 +441,7 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
403
441
 
404
442
  __props__.__dict__["arn"] = arn
405
443
  __props__.__dict__["dns_entries"] = dns_entries
444
+ __props__.__dict__["private_dns_enabled"] = private_dns_enabled
406
445
  __props__.__dict__["region"] = region
407
446
  __props__.__dict__["resource_configuration_identifier"] = resource_configuration_identifier
408
447
  __props__.__dict__["service_network_identifier"] = service_network_identifier
@@ -427,6 +466,14 @@ class ServiceNetworkResourceAssociation(pulumi.CustomResource):
427
466
  """
428
467
  return pulumi.get(self, "dns_entries")
429
468
 
469
+ @_builtins.property
470
+ @pulumi.getter(name="privateDnsEnabled")
471
+ def private_dns_enabled(self) -> pulumi.Output[_builtins.bool]:
472
+ """
473
+ Boolean indicating whether private DNS is enabled for the service network resource association. Defaults to `false`. When set to `true`, the resource configuration identified by `resource_configuration_identifier` must have a custom domain name or a group domain for private DNS.
474
+ """
475
+ return pulumi.get(self, "private_dns_enabled")
476
+
430
477
  @_builtins.property
431
478
  @pulumi.getter
432
479
  def region(self) -> pulumi.Output[_builtins.str]:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_aws
3
- Version: 7.15.0
3
+ Version: 7.16.0
4
4
  Summary: A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.io