aws-cdk-lib 2.165.0__py3-none-any.whl → 2.166.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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (42) hide show
  1. aws_cdk/_jsii/__init__.py +1 -1
  2. aws_cdk/_jsii/{aws-cdk-lib@2.165.0.jsii.tgz → aws-cdk-lib@2.166.0.jsii.tgz} +0 -0
  3. aws_cdk/aws_appsync/__init__.py +2122 -340
  4. aws_cdk/aws_backup/__init__.py +57 -31
  5. aws_cdk/aws_bedrock/__init__.py +982 -191
  6. aws_cdk/aws_codepipeline/__init__.py +98 -5
  7. aws_cdk/aws_codestar/__init__.py +1 -1
  8. aws_cdk/aws_cognito/__init__.py +0 -8
  9. aws_cdk/aws_connect/__init__.py +1 -1
  10. aws_cdk/aws_datasync/__init__.py +9 -7
  11. aws_cdk/aws_devopsguru/__init__.py +2 -2
  12. aws_cdk/aws_dms/__init__.py +762 -0
  13. aws_cdk/aws_dynamodb/__init__.py +13 -8
  14. aws_cdk/aws_ec2/__init__.py +15 -6
  15. aws_cdk/aws_ecs/__init__.py +41 -31
  16. aws_cdk/aws_elasticache/__init__.py +11 -6
  17. aws_cdk/aws_emrserverless/__init__.py +35 -33
  18. aws_cdk/aws_events/__init__.py +25 -30
  19. aws_cdk/aws_kinesis/__init__.py +297 -1
  20. aws_cdk/aws_lambda/__init__.py +3 -3
  21. aws_cdk/aws_m2/__init__.py +58 -58
  22. aws_cdk/aws_mediapackagev2/__init__.py +191 -0
  23. aws_cdk/aws_networkfirewall/__init__.py +14 -5
  24. aws_cdk/aws_opensearchservice/__init__.py +969 -0
  25. aws_cdk/aws_pipes/__init__.py +1 -1
  26. aws_cdk/aws_qbusiness/__init__.py +2 -0
  27. aws_cdk/aws_rds/__init__.py +65 -16
  28. aws_cdk/aws_route53/__init__.py +38 -12
  29. aws_cdk/aws_s3_deployment/__init__.py +13 -7
  30. aws_cdk/aws_sagemaker/__init__.py +61 -25
  31. aws_cdk/aws_secretsmanager/__init__.py +2 -1
  32. aws_cdk/aws_ses/__init__.py +19 -0
  33. aws_cdk/aws_sqs/__init__.py +12 -9
  34. aws_cdk/aws_synthetics/__init__.py +121 -0
  35. aws_cdk/aws_timestream/__init__.py +41 -0
  36. aws_cdk/aws_wisdom/__init__.py +2035 -61
  37. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/METADATA +1 -1
  38. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/RECORD +42 -42
  39. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/LICENSE +0 -0
  40. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/NOTICE +0 -0
  41. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/WHEEL +0 -0
  42. {aws_cdk_lib-2.165.0.dist-info → aws_cdk_lib-2.166.0.dist-info}/top_level.txt +0 -0
@@ -307,6 +307,33 @@ canary = synthetics.Canary(self, "MyCanary",
307
307
  )]
308
308
  )
309
309
  ```
310
+
311
+ Canary artifacts are encrypted at rest using an AWS-managed key by default.
312
+
313
+ You can choose the encryption options SSE-S3 or SSE-KMS by setting the `artifactS3EncryptionMode` property.
314
+
315
+ When you use SSE-KMS, you can also supply your own external KMS key by specifying the `kmsKey` property. If you don't, a KMS key will be automatically created and associated with the canary.
316
+
317
+ ```python
318
+ import aws_cdk.aws_kms as kms
319
+
320
+
321
+ key = kms.Key(self, "myKey")
322
+
323
+ canary = synthetics.Canary(self, "MyCanary",
324
+ schedule=synthetics.Schedule.rate(Duration.minutes(5)),
325
+ test=synthetics.Test.custom(
326
+ code=synthetics.Code.from_asset(path.join(__dirname, "canary")),
327
+ handler="index.handler"
328
+ ),
329
+ runtime=synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
330
+ artifacts_bucket_lifecycle_rules=[LifecycleRule(
331
+ expiration=Duration.days(30)
332
+ )],
333
+ artifact_s3_encryption_mode=synthetics.ArtifactsEncryptionMode.KMS,
334
+ artifact_s3_kms_key=key
335
+ )
336
+ ```
310
337
  '''
311
338
  from pkgutil import extend_path
312
339
  __path__ = extend_path(__path__, __name__)
@@ -370,6 +397,7 @@ from ..aws_ec2 import (
370
397
  SubnetSelection as _SubnetSelection_e57d76df,
371
398
  )
372
399
  from ..aws_iam import IGrantable as _IGrantable_71c4f5de, IRole as _IRole_235f5d8e
400
+ from ..aws_kms import IKey as _IKey_5f11635f
373
401
  from ..aws_s3 import (
374
402
  IBucket as _IBucket_42e086fd,
375
403
  LifecycleRule as _LifecycleRule_bb74e6ff,
@@ -456,6 +484,40 @@ class ArtifactsBucketLocation:
456
484
  )
457
485
 
458
486
 
487
+ @jsii.enum(jsii_type="aws-cdk-lib.aws_synthetics.ArtifactsEncryptionMode")
488
+ class ArtifactsEncryptionMode(enum.Enum):
489
+ '''Encryption mode for canary artifacts.
490
+
491
+ :exampleMetadata: infused
492
+
493
+ Example::
494
+
495
+ import aws_cdk.aws_kms as kms
496
+
497
+
498
+ key = kms.Key(self, "myKey")
499
+
500
+ canary = synthetics.Canary(self, "MyCanary",
501
+ schedule=synthetics.Schedule.rate(Duration.minutes(5)),
502
+ test=synthetics.Test.custom(
503
+ code=synthetics.Code.from_asset(path.join(__dirname, "canary")),
504
+ handler="index.handler"
505
+ ),
506
+ runtime=synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
507
+ artifacts_bucket_lifecycle_rules=[LifecycleRule(
508
+ expiration=Duration.days(30)
509
+ )],
510
+ artifact_s3_encryption_mode=synthetics.ArtifactsEncryptionMode.KMS,
511
+ artifact_s3_kms_key=key
512
+ )
513
+ '''
514
+
515
+ S3_MANAGED = "S3_MANAGED"
516
+ '''Server-side encryption (SSE) with an Amazon S3-managed key.'''
517
+ KMS = "KMS"
518
+ '''Server-side encryption (SSE) with an AWS KMS customer managed key.'''
519
+
520
+
459
521
  @jsii.implements(_IConnectable_10015a05)
460
522
  class Canary(
461
523
  _Resource_45bc6135,
@@ -490,6 +552,8 @@ class Canary(
490
552
  runtime: "Runtime",
491
553
  test: "Test",
492
554
  active_tracing: typing.Optional[builtins.bool] = None,
555
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
556
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
493
557
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
494
558
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
495
559
  canary_name: typing.Optional[builtins.str] = None,
@@ -513,6 +577,8 @@ class Canary(
513
577
  :param runtime: Specify the runtime version to use for the canary.
514
578
  :param test: The type of test that you want your canary to run. Use ``Test.custom()`` to specify the test to run.
515
579
  :param active_tracing: Specifies whether this canary is to use active AWS X-Ray tracing when it runs. Active tracing enables this canary run to be displayed in the ServiceLens and X-Ray service maps even if the canary does not hit an endpoint that has X-Ray tracing enabled. Using X-Ray tracing incurs charges. You can enable active tracing only for canaries that use version ``syn-nodejs-2.0`` or later for their canary runtime. Default: false
580
+ :param artifact_s3_encryption_mode: Canary Artifacts in S3 encryption mode. Artifact encryption is only supported for canaries that use Synthetics runtime version ``syn-nodejs-puppeteer-3.3`` or later. Default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
581
+ :param artifact_s3_kms_key: The KMS key used to encrypt canary artifacts. Default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
516
582
  :param artifacts_bucket_lifecycle_rules: Lifecycle rules for the generated canary artifact bucket. Has no effect if a bucket is passed to ``artifactsBucketLocation``. If you pass a bucket to ``artifactsBucketLocation``, you can add lifecycle rules to the bucket itself. Default: - no rules applied to the generated bucket.
517
583
  :param artifacts_bucket_location: The s3 location that stores the data of the canary runs. Default: - A new s3 bucket will be created without a prefix.
518
584
  :param canary_name: The name of the canary. Be sure to give it a descriptive name that distinguishes it from other canaries in your account. Do not include secrets or proprietary information in your canary name. The canary name makes up part of the canary ARN, which is included in outbound calls over the internet. Default: - A unique name will be generated from the construct ID
@@ -538,6 +604,8 @@ class Canary(
538
604
  runtime=runtime,
539
605
  test=test,
540
606
  active_tracing=active_tracing,
607
+ artifact_s3_encryption_mode=artifact_s3_encryption_mode,
608
+ artifact_s3_kms_key=artifact_s3_kms_key,
541
609
  artifacts_bucket_lifecycle_rules=artifacts_bucket_lifecycle_rules,
542
610
  artifacts_bucket_location=artifacts_bucket_location,
543
611
  canary_name=canary_name,
@@ -733,6 +801,8 @@ class Canary(
733
801
  "runtime": "runtime",
734
802
  "test": "test",
735
803
  "active_tracing": "activeTracing",
804
+ "artifact_s3_encryption_mode": "artifactS3EncryptionMode",
805
+ "artifact_s3_kms_key": "artifactS3KmsKey",
736
806
  "artifacts_bucket_lifecycle_rules": "artifactsBucketLifecycleRules",
737
807
  "artifacts_bucket_location": "artifactsBucketLocation",
738
808
  "canary_name": "canaryName",
@@ -758,6 +828,8 @@ class CanaryProps:
758
828
  runtime: "Runtime",
759
829
  test: "Test",
760
830
  active_tracing: typing.Optional[builtins.bool] = None,
831
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
832
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
761
833
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
762
834
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
763
835
  canary_name: typing.Optional[builtins.str] = None,
@@ -780,6 +852,8 @@ class CanaryProps:
780
852
  :param runtime: Specify the runtime version to use for the canary.
781
853
  :param test: The type of test that you want your canary to run. Use ``Test.custom()`` to specify the test to run.
782
854
  :param active_tracing: Specifies whether this canary is to use active AWS X-Ray tracing when it runs. Active tracing enables this canary run to be displayed in the ServiceLens and X-Ray service maps even if the canary does not hit an endpoint that has X-Ray tracing enabled. Using X-Ray tracing incurs charges. You can enable active tracing only for canaries that use version ``syn-nodejs-2.0`` or later for their canary runtime. Default: false
855
+ :param artifact_s3_encryption_mode: Canary Artifacts in S3 encryption mode. Artifact encryption is only supported for canaries that use Synthetics runtime version ``syn-nodejs-puppeteer-3.3`` or later. Default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
856
+ :param artifact_s3_kms_key: The KMS key used to encrypt canary artifacts. Default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
783
857
  :param artifacts_bucket_lifecycle_rules: Lifecycle rules for the generated canary artifact bucket. Has no effect if a bucket is passed to ``artifactsBucketLocation``. If you pass a bucket to ``artifactsBucketLocation``, you can add lifecycle rules to the bucket itself. Default: - no rules applied to the generated bucket.
784
858
  :param artifacts_bucket_location: The s3 location that stores the data of the canary runs. Default: - A new s3 bucket will be created without a prefix.
785
859
  :param canary_name: The name of the canary. Be sure to give it a descriptive name that distinguishes it from other canaries in your account. Do not include secrets or proprietary information in your canary name. The canary name makes up part of the canary ARN, which is included in outbound calls over the internet. Default: - A unique name will be generated from the construct ID
@@ -823,6 +897,8 @@ class CanaryProps:
823
897
  check_type(argname="argument runtime", value=runtime, expected_type=type_hints["runtime"])
824
898
  check_type(argname="argument test", value=test, expected_type=type_hints["test"])
825
899
  check_type(argname="argument active_tracing", value=active_tracing, expected_type=type_hints["active_tracing"])
900
+ check_type(argname="argument artifact_s3_encryption_mode", value=artifact_s3_encryption_mode, expected_type=type_hints["artifact_s3_encryption_mode"])
901
+ check_type(argname="argument artifact_s3_kms_key", value=artifact_s3_kms_key, expected_type=type_hints["artifact_s3_kms_key"])
826
902
  check_type(argname="argument artifacts_bucket_lifecycle_rules", value=artifacts_bucket_lifecycle_rules, expected_type=type_hints["artifacts_bucket_lifecycle_rules"])
827
903
  check_type(argname="argument artifacts_bucket_location", value=artifacts_bucket_location, expected_type=type_hints["artifacts_bucket_location"])
828
904
  check_type(argname="argument canary_name", value=canary_name, expected_type=type_hints["canary_name"])
@@ -845,6 +921,10 @@ class CanaryProps:
845
921
  }
846
922
  if active_tracing is not None:
847
923
  self._values["active_tracing"] = active_tracing
924
+ if artifact_s3_encryption_mode is not None:
925
+ self._values["artifact_s3_encryption_mode"] = artifact_s3_encryption_mode
926
+ if artifact_s3_kms_key is not None:
927
+ self._values["artifact_s3_kms_key"] = artifact_s3_kms_key
848
928
  if artifacts_bucket_lifecycle_rules is not None:
849
929
  self._values["artifacts_bucket_lifecycle_rules"] = artifacts_bucket_lifecycle_rules
850
930
  if artifacts_bucket_location is not None:
@@ -914,6 +994,29 @@ class CanaryProps:
914
994
  result = self._values.get("active_tracing")
915
995
  return typing.cast(typing.Optional[builtins.bool], result)
916
996
 
997
+ @builtins.property
998
+ def artifact_s3_encryption_mode(self) -> typing.Optional[ArtifactsEncryptionMode]:
999
+ '''Canary Artifacts in S3 encryption mode.
1000
+
1001
+ Artifact encryption is only supported for canaries that use Synthetics runtime
1002
+ version ``syn-nodejs-puppeteer-3.3`` or later.
1003
+
1004
+ :default: - Artifacts are encrypted at rest using an AWS managed key. ``ArtifactsEncryptionMode.KMS`` is set if you specify ``artifactS3KmsKey``.
1005
+
1006
+ :see: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_artifact_encryption.html
1007
+ '''
1008
+ result = self._values.get("artifact_s3_encryption_mode")
1009
+ return typing.cast(typing.Optional[ArtifactsEncryptionMode], result)
1010
+
1011
+ @builtins.property
1012
+ def artifact_s3_kms_key(self) -> typing.Optional[_IKey_5f11635f]:
1013
+ '''The KMS key used to encrypt canary artifacts.
1014
+
1015
+ :default: - no kms key if ``artifactS3EncryptionMode`` is set to ``S3_MANAGED``. A key will be created if one is not provided and ``artifactS3EncryptionMode`` is set to ``KMS``.
1016
+ '''
1017
+ result = self._values.get("artifact_s3_kms_key")
1018
+ return typing.cast(typing.Optional[_IKey_5f11635f], result)
1019
+
917
1020
  @builtins.property
918
1021
  def artifacts_bucket_lifecycle_rules(
919
1022
  self,
@@ -3794,6 +3897,19 @@ class Runtime(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_synthetics.Run
3794
3897
  '''
3795
3898
  return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_NODEJS_PUPPETEER_9_0"))
3796
3899
 
3900
+ @jsii.python.classproperty
3901
+ @jsii.member(jsii_name="SYNTHETICS_NODEJS_PUPPETEER_9_1")
3902
+ def SYNTHETICS_NODEJS_PUPPETEER_9_1(cls) -> "Runtime":
3903
+ '''``syn-nodejs-puppeteer-9.1`` includes the following: - Lambda runtime Node.js 20.x - Puppeteer-core version 22.12.1 - Chromium version 126.0.6478.126.
3904
+
3905
+ New Features:
3906
+
3907
+ - **Bug fixes** Bug fix related to date ranges and pending requests in HAR files.
3908
+
3909
+ :see: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Library_nodejs_puppeteer.html#CloudWatch_Synthetics_runtimeversion-nodejs-puppeteer-9.1
3910
+ '''
3911
+ return typing.cast("Runtime", jsii.sget(cls, "SYNTHETICS_NODEJS_PUPPETEER_9_1"))
3912
+
3797
3913
  @jsii.python.classproperty
3798
3914
  @jsii.member(jsii_name="SYNTHETICS_PYTHON_SELENIUM_1_0")
3799
3915
  def SYNTHETICS_PYTHON_SELENIUM_1_0(cls) -> "Runtime":
@@ -4261,6 +4377,7 @@ class AssetCode(
4261
4377
 
4262
4378
  __all__ = [
4263
4379
  "ArtifactsBucketLocation",
4380
+ "ArtifactsEncryptionMode",
4264
4381
  "AssetCode",
4265
4382
  "Canary",
4266
4383
  "CanaryProps",
@@ -4298,6 +4415,8 @@ def _typecheckingstub__b3b6d76e5f93e31884e16cc00a9b4fc93e6782ff7db09c74aa1ef9346
4298
4415
  runtime: Runtime,
4299
4416
  test: Test,
4300
4417
  active_tracing: typing.Optional[builtins.bool] = None,
4418
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
4419
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
4301
4420
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
4302
4421
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
4303
4422
  canary_name: typing.Optional[builtins.str] = None,
@@ -4323,6 +4442,8 @@ def _typecheckingstub__44ec0b14d52b66927d4daebe6f97bb070f3629bb0eb86e21668ca7862
4323
4442
  runtime: Runtime,
4324
4443
  test: Test,
4325
4444
  active_tracing: typing.Optional[builtins.bool] = None,
4445
+ artifact_s3_encryption_mode: typing.Optional[ArtifactsEncryptionMode] = None,
4446
+ artifact_s3_kms_key: typing.Optional[_IKey_5f11635f] = None,
4326
4447
  artifacts_bucket_lifecycle_rules: typing.Optional[typing.Sequence[typing.Union[_LifecycleRule_bb74e6ff, typing.Dict[builtins.str, typing.Any]]]] = None,
4327
4448
  artifacts_bucket_location: typing.Optional[typing.Union[ArtifactsBucketLocation, typing.Dict[builtins.str, typing.Any]]] = None,
4328
4449
  canary_name: typing.Optional[builtins.str] = None,
@@ -347,6 +347,7 @@ class CfnInfluxDBInstance(
347
347
  name="name",
348
348
  organization="organization",
349
349
  password="password",
350
+ port=123,
350
351
  publicly_accessible=False,
351
352
  tags=[CfnTag(
352
353
  key="key",
@@ -373,6 +374,7 @@ class CfnInfluxDBInstance(
373
374
  name: typing.Optional[builtins.str] = None,
374
375
  organization: typing.Optional[builtins.str] = None,
375
376
  password: typing.Optional[builtins.str] = None,
377
+ port: typing.Optional[jsii.Number] = None,
376
378
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
377
379
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
378
380
  username: typing.Optional[builtins.str] = None,
@@ -392,6 +394,7 @@ class CfnInfluxDBInstance(
392
394
  :param name: The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands. This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.
393
395
  :param organization: The name of the initial organization for the initial admin user in InfluxDB. An InfluxDB organization is a workspace for a group of users.
394
396
  :param password: The password of the initial admin user created in InfluxDB. This password will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon SecretManager in your account.
397
+ :param port: The port number on which InfluxDB accepts connections.
395
398
  :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
396
399
  :param tags: A list of key-value pairs to associate with the DB instance.
397
400
  :param username: The username of the initial admin user created in InfluxDB. Must start with a letter and can't end with a hyphen or contain two consecutive hyphens. For example, my-user1. This username will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon Secrets Manager in your account.
@@ -413,6 +416,7 @@ class CfnInfluxDBInstance(
413
416
  name=name,
414
417
  organization=organization,
415
418
  password=password,
419
+ port=port,
416
420
  publicly_accessible=publicly_accessible,
417
421
  tags=tags,
418
422
  username=username,
@@ -670,6 +674,19 @@ class CfnInfluxDBInstance(
670
674
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
671
675
  jsii.set(self, "password", value) # pyright: ignore[reportArgumentType]
672
676
 
677
+ @builtins.property
678
+ @jsii.member(jsii_name="port")
679
+ def port(self) -> typing.Optional[jsii.Number]:
680
+ '''The port number on which InfluxDB accepts connections.'''
681
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "port"))
682
+
683
+ @port.setter
684
+ def port(self, value: typing.Optional[jsii.Number]) -> None:
685
+ if __debug__:
686
+ type_hints = typing.get_type_hints(_typecheckingstub__9ae9e68a1bb2222ab6cb849a3a301ca28375e9ce32277709782f39c7cb9ce7d4)
687
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
688
+ jsii.set(self, "port", value) # pyright: ignore[reportArgumentType]
689
+
673
690
  @builtins.property
674
691
  @jsii.member(jsii_name="publiclyAccessible")
675
692
  def publicly_accessible(
@@ -890,6 +907,7 @@ class CfnInfluxDBInstance(
890
907
  "name": "name",
891
908
  "organization": "organization",
892
909
  "password": "password",
910
+ "port": "port",
893
911
  "publicly_accessible": "publiclyAccessible",
894
912
  "tags": "tags",
895
913
  "username": "username",
@@ -911,6 +929,7 @@ class CfnInfluxDBInstanceProps:
911
929
  name: typing.Optional[builtins.str] = None,
912
930
  organization: typing.Optional[builtins.str] = None,
913
931
  password: typing.Optional[builtins.str] = None,
932
+ port: typing.Optional[jsii.Number] = None,
914
933
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
915
934
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
916
935
  username: typing.Optional[builtins.str] = None,
@@ -929,6 +948,7 @@ class CfnInfluxDBInstanceProps:
929
948
  :param name: The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands. This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.
930
949
  :param organization: The name of the initial organization for the initial admin user in InfluxDB. An InfluxDB organization is a workspace for a group of users.
931
950
  :param password: The password of the initial admin user created in InfluxDB. This password will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon SecretManager in your account.
951
+ :param port: The port number on which InfluxDB accepts connections.
932
952
  :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
933
953
  :param tags: A list of key-value pairs to associate with the DB instance.
934
954
  :param username: The username of the initial admin user created in InfluxDB. Must start with a letter and can't end with a hyphen or contain two consecutive hyphens. For example, my-user1. This username will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon Secrets Manager in your account.
@@ -960,6 +980,7 @@ class CfnInfluxDBInstanceProps:
960
980
  name="name",
961
981
  organization="organization",
962
982
  password="password",
983
+ port=123,
963
984
  publicly_accessible=False,
964
985
  tags=[CfnTag(
965
986
  key="key",
@@ -982,6 +1003,7 @@ class CfnInfluxDBInstanceProps:
982
1003
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
983
1004
  check_type(argname="argument organization", value=organization, expected_type=type_hints["organization"])
984
1005
  check_type(argname="argument password", value=password, expected_type=type_hints["password"])
1006
+ check_type(argname="argument port", value=port, expected_type=type_hints["port"])
985
1007
  check_type(argname="argument publicly_accessible", value=publicly_accessible, expected_type=type_hints["publicly_accessible"])
986
1008
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
987
1009
  check_type(argname="argument username", value=username, expected_type=type_hints["username"])
@@ -1008,6 +1030,8 @@ class CfnInfluxDBInstanceProps:
1008
1030
  self._values["organization"] = organization
1009
1031
  if password is not None:
1010
1032
  self._values["password"] = password
1033
+ if port is not None:
1034
+ self._values["port"] = port
1011
1035
  if publicly_accessible is not None:
1012
1036
  self._values["publicly_accessible"] = publicly_accessible
1013
1037
  if tags is not None:
@@ -1127,6 +1151,15 @@ class CfnInfluxDBInstanceProps:
1127
1151
  result = self._values.get("password")
1128
1152
  return typing.cast(typing.Optional[builtins.str], result)
1129
1153
 
1154
+ @builtins.property
1155
+ def port(self) -> typing.Optional[jsii.Number]:
1156
+ '''The port number on which InfluxDB accepts connections.
1157
+
1158
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-port
1159
+ '''
1160
+ result = self._values.get("port")
1161
+ return typing.cast(typing.Optional[jsii.Number], result)
1162
+
1130
1163
  @builtins.property
1131
1164
  def publicly_accessible(
1132
1165
  self,
@@ -3926,6 +3959,7 @@ def _typecheckingstub__261e4a43f1d3c329e317698aa3b0f0428b7e7d3646c4c536f48fd191f
3926
3959
  name: typing.Optional[builtins.str] = None,
3927
3960
  organization: typing.Optional[builtins.str] = None,
3928
3961
  password: typing.Optional[builtins.str] = None,
3962
+ port: typing.Optional[jsii.Number] = None,
3929
3963
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3930
3964
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3931
3965
  username: typing.Optional[builtins.str] = None,
@@ -4007,6 +4041,12 @@ def _typecheckingstub__74f7e1c43a2306182a51c50f7081008d44b95cb4e9c3b52de43127db0
4007
4041
  """Type checking stubs"""
4008
4042
  pass
4009
4043
 
4044
+ def _typecheckingstub__9ae9e68a1bb2222ab6cb849a3a301ca28375e9ce32277709782f39c7cb9ce7d4(
4045
+ value: typing.Optional[jsii.Number],
4046
+ ) -> None:
4047
+ """Type checking stubs"""
4048
+ pass
4049
+
4010
4050
  def _typecheckingstub__f4fc7c874876ac199eadc5d0947e02e2e8f42717e865d6b225956129df9bcf9b(
4011
4051
  value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
4012
4052
  ) -> None:
@@ -4064,6 +4104,7 @@ def _typecheckingstub__d0e1a256f4abdadd4b29eda8fd45f16d71b49061c796d179f90eb728f
4064
4104
  name: typing.Optional[builtins.str] = None,
4065
4105
  organization: typing.Optional[builtins.str] = None,
4066
4106
  password: typing.Optional[builtins.str] = None,
4107
+ port: typing.Optional[jsii.Number] = None,
4067
4108
  publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4068
4109
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4069
4110
  username: typing.Optional[builtins.str] = None,