aws-cdk-lib 2.138.0__py3-none-any.whl → 2.139.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 (37) hide show
  1. aws_cdk/_jsii/__init__.py +1 -1
  2. aws_cdk/_jsii/{aws-cdk-lib@2.138.0.jsii.tgz → aws-cdk-lib@2.139.0.jsii.tgz} +0 -0
  3. aws_cdk/aws_apigateway/__init__.py +29 -16
  4. aws_cdk/aws_appconfig/__init__.py +289 -44
  5. aws_cdk/aws_appintegrations/__init__.py +55 -6
  6. aws_cdk/aws_autoscaling/__init__.py +62 -60
  7. aws_cdk/aws_backup/__init__.py +34 -42
  8. aws_cdk/aws_batch/__init__.py +9 -3
  9. aws_cdk/aws_bedrock/__init__.py +4144 -0
  10. aws_cdk/aws_cloudwatch/__init__.py +120 -0
  11. aws_cdk/aws_datazone/__init__.py +22 -0
  12. aws_cdk/aws_dms/__init__.py +2 -4
  13. aws_cdk/aws_ec2/__init__.py +123 -84
  14. aws_cdk/aws_ecr/__init__.py +630 -0
  15. aws_cdk/aws_ecs/__init__.py +121 -19
  16. aws_cdk/aws_efs/__init__.py +592 -0
  17. aws_cdk/aws_elasticloadbalancingv2/__init__.py +23 -8
  18. aws_cdk/aws_events_targets/__init__.py +17 -4
  19. aws_cdk/aws_kms/__init__.py +44 -0
  20. aws_cdk/aws_lambda/__init__.py +9 -0
  21. aws_cdk/aws_oam/__init__.py +204 -0
  22. aws_cdk/aws_rds/__init__.py +15 -11
  23. aws_cdk/aws_redshiftserverless/__init__.py +157 -0
  24. aws_cdk/aws_securitylake/__init__.py +160 -105
  25. aws_cdk/aws_ses_actions/__init__.py +155 -0
  26. aws_cdk/aws_ssm/__init__.py +5 -2
  27. aws_cdk/aws_timestream/__init__.py +1045 -0
  28. aws_cdk/aws_transfer/__init__.py +15 -6
  29. aws_cdk/aws_wisdom/__init__.py +2 -2
  30. aws_cdk/custom_resources/__init__.py +440 -0
  31. aws_cdk/cx_api/__init__.py +17 -0
  32. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/METADATA +1 -1
  33. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/RECORD +37 -37
  34. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/LICENSE +0 -0
  35. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/NOTICE +0 -0
  36. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/WHEEL +0 -0
  37. {aws_cdk_lib-2.138.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/top_level.txt +0 -0
@@ -49,6 +49,7 @@ from .. import (
49
49
  IInspectable as _IInspectable_c2943556,
50
50
  IResolvable as _IResolvable_da3f097b,
51
51
  ITaggable as _ITaggable_36806126,
52
+ ITaggableV2 as _ITaggableV2_4e6798f8,
52
53
  TagManager as _TagManager_0a598cb3,
53
54
  TreeInspector as _TreeInspector_488e0dd5,
54
55
  )
@@ -295,6 +296,887 @@ class CfnDatabaseProps:
295
296
  )
296
297
 
297
298
 
299
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
300
+ class CfnInfluxDBInstance(
301
+ _CfnResource_9df397a6,
302
+ metaclass=jsii.JSIIMeta,
303
+ jsii_type="aws-cdk-lib.aws_timestream.CfnInfluxDBInstance",
304
+ ):
305
+ '''A DB instance is an isolated database environment running in the cloud.
306
+
307
+ It is the basic building block of Amazon Timestream for InfluxDB. A DB instance can contain multiple user-created databases (or organizations and buckets for the case of InfluxDb 2.x databases), and can be accessed using the same client tools and applications you might use to access a standalone self-managed InfluxDB instance.
308
+
309
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html
310
+ :cloudformationResource: AWS::Timestream::InfluxDBInstance
311
+ :exampleMetadata: fixture=_generated
312
+
313
+ Example::
314
+
315
+ # The code below shows an example of how to instantiate this type.
316
+ # The values are placeholders you should change.
317
+ from aws_cdk import aws_timestream as timestream
318
+
319
+ cfn_influx_dBInstance = timestream.CfnInfluxDBInstance(self, "MyCfnInfluxDBInstance",
320
+ allocated_storage=123,
321
+ bucket="bucket",
322
+ db_instance_type="dbInstanceType",
323
+ db_parameter_group_identifier="dbParameterGroupIdentifier",
324
+ db_storage_type="dbStorageType",
325
+ deployment_type="deploymentType",
326
+ log_delivery_configuration=timestream.CfnInfluxDBInstance.LogDeliveryConfigurationProperty(
327
+ s3_configuration=timestream.CfnInfluxDBInstance.S3ConfigurationProperty(
328
+ bucket_name="bucketName",
329
+ enabled=False
330
+ )
331
+ ),
332
+ name="name",
333
+ organization="organization",
334
+ password="password",
335
+ publicly_accessible=False,
336
+ tags=[CfnTag(
337
+ key="key",
338
+ value="value"
339
+ )],
340
+ username="username",
341
+ vpc_security_group_ids=["vpcSecurityGroupIds"],
342
+ vpc_subnet_ids=["vpcSubnetIds"]
343
+ )
344
+ '''
345
+
346
+ def __init__(
347
+ self,
348
+ scope: _constructs_77d1e7e8.Construct,
349
+ id: builtins.str,
350
+ *,
351
+ allocated_storage: typing.Optional[jsii.Number] = None,
352
+ bucket: typing.Optional[builtins.str] = None,
353
+ db_instance_type: typing.Optional[builtins.str] = None,
354
+ db_parameter_group_identifier: typing.Optional[builtins.str] = None,
355
+ db_storage_type: typing.Optional[builtins.str] = None,
356
+ deployment_type: typing.Optional[builtins.str] = None,
357
+ log_delivery_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInfluxDBInstance.LogDeliveryConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
358
+ name: typing.Optional[builtins.str] = None,
359
+ organization: typing.Optional[builtins.str] = None,
360
+ password: typing.Optional[builtins.str] = None,
361
+ publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
362
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
363
+ username: typing.Optional[builtins.str] = None,
364
+ vpc_security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
365
+ vpc_subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
366
+ ) -> None:
367
+ '''
368
+ :param scope: Scope in which this resource is defined.
369
+ :param id: Construct identifier for this resource (unique in its scope).
370
+ :param allocated_storage: The amount of storage to allocate for your DB storage type in GiB (gibibytes).
371
+ :param bucket: The name of the initial InfluxDB bucket. All InfluxDB data is stored in a bucket. A bucket combines the concept of a database and a retention period (the duration of time that each data point persists). A bucket belongs to an organization.
372
+ :param db_instance_type: The Timestream for InfluxDB DB instance type to run on.
373
+ :param db_parameter_group_identifier: The name or id of the DB parameter group to assign to your DB instance. DB parameter groups specify how the database is configured. For example, DB parameter groups can specify the limit for query concurrency.
374
+ :param db_storage_type: The Timestream for InfluxDB DB storage type to read and write InfluxDB data. You can choose between 3 different types of provisioned Influx IOPS included storage according to your workloads requirements: - Influx IO Included 3000 IOPS - Influx IO Included 12000 IOPS - Influx IO Included 16000 IOPS
375
+ :param deployment_type: Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.
376
+ :param log_delivery_configuration: Configuration for sending InfluxDB engine logs to a specified S3 bucket.
377
+ :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.
378
+ :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.
379
+ :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.
380
+ :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
381
+ :param tags: A list of key-value pairs to associate with the DB instance.
382
+ :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.
383
+ :param vpc_security_group_ids: A list of VPC security group IDs to associate with the DB instance.
384
+ :param vpc_subnet_ids: A list of VPC subnet IDs to associate with the DB instance. Provide at least two VPC subnet IDs in different availability zones when deploying with a Multi-AZ standby.
385
+ '''
386
+ if __debug__:
387
+ type_hints = typing.get_type_hints(_typecheckingstub__261e4a43f1d3c329e317698aa3b0f0428b7e7d3646c4c536f48fd191f2f65c10)
388
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
389
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
390
+ props = CfnInfluxDBInstanceProps(
391
+ allocated_storage=allocated_storage,
392
+ bucket=bucket,
393
+ db_instance_type=db_instance_type,
394
+ db_parameter_group_identifier=db_parameter_group_identifier,
395
+ db_storage_type=db_storage_type,
396
+ deployment_type=deployment_type,
397
+ log_delivery_configuration=log_delivery_configuration,
398
+ name=name,
399
+ organization=organization,
400
+ password=password,
401
+ publicly_accessible=publicly_accessible,
402
+ tags=tags,
403
+ username=username,
404
+ vpc_security_group_ids=vpc_security_group_ids,
405
+ vpc_subnet_ids=vpc_subnet_ids,
406
+ )
407
+
408
+ jsii.create(self.__class__, self, [scope, id, props])
409
+
410
+ @jsii.member(jsii_name="inspect")
411
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
412
+ '''Examines the CloudFormation resource and discloses attributes.
413
+
414
+ :param inspector: tree inspector to collect and process attributes.
415
+ '''
416
+ if __debug__:
417
+ type_hints = typing.get_type_hints(_typecheckingstub__a95c4d6f0fc75220a7cb663070426910b51aa6f3302a22e95539bada8de02a29)
418
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
419
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
420
+
421
+ @jsii.member(jsii_name="renderProperties")
422
+ def _render_properties(
423
+ self,
424
+ props: typing.Mapping[builtins.str, typing.Any],
425
+ ) -> typing.Mapping[builtins.str, typing.Any]:
426
+ '''
427
+ :param props: -
428
+ '''
429
+ if __debug__:
430
+ type_hints = typing.get_type_hints(_typecheckingstub__898f20490ec221d4e94e779d6a547a9b98bbe400d1ae73dec3d45b042bc36324)
431
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
432
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
433
+
434
+ @jsii.python.classproperty
435
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
436
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
437
+ '''The CloudFormation resource type name for this resource class.'''
438
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
439
+
440
+ @builtins.property
441
+ @jsii.member(jsii_name="attrArn")
442
+ def attr_arn(self) -> builtins.str:
443
+ '''The Amazon Resource Name (ARN) of the DB instance.
444
+
445
+ :cloudformationAttribute: Arn
446
+ '''
447
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
448
+
449
+ @builtins.property
450
+ @jsii.member(jsii_name="attrAvailabilityZone")
451
+ def attr_availability_zone(self) -> builtins.str:
452
+ '''The Availability Zone in which the DB instance resides.
453
+
454
+ :cloudformationAttribute: AvailabilityZone
455
+ '''
456
+ return typing.cast(builtins.str, jsii.get(self, "attrAvailabilityZone"))
457
+
458
+ @builtins.property
459
+ @jsii.member(jsii_name="attrEndpoint")
460
+ def attr_endpoint(self) -> builtins.str:
461
+ '''The endpoint used to connect to InfluxDB.
462
+
463
+ The default InfluxDB port is 8086.
464
+
465
+ :cloudformationAttribute: Endpoint
466
+ '''
467
+ return typing.cast(builtins.str, jsii.get(self, "attrEndpoint"))
468
+
469
+ @builtins.property
470
+ @jsii.member(jsii_name="attrId")
471
+ def attr_id(self) -> builtins.str:
472
+ '''A service-generated unique identifier.
473
+
474
+ :cloudformationAttribute: Id
475
+ '''
476
+ return typing.cast(builtins.str, jsii.get(self, "attrId"))
477
+
478
+ @builtins.property
479
+ @jsii.member(jsii_name="attrInfluxAuthParametersSecretArn")
480
+ def attr_influx_auth_parameters_secret_arn(self) -> builtins.str:
481
+ '''The Amazon Resource Name (ARN) of the Amazon Secrets Manager secret containing the initial InfluxDB authorization parameters.
482
+
483
+ The secret value is a JSON formatted key-value pair holding InfluxDB authorization values: organization, bucket, username, and password.
484
+
485
+ :cloudformationAttribute: InfluxAuthParametersSecretArn
486
+ '''
487
+ return typing.cast(builtins.str, jsii.get(self, "attrInfluxAuthParametersSecretArn"))
488
+
489
+ @builtins.property
490
+ @jsii.member(jsii_name="attrSecondaryAvailabilityZone")
491
+ def attr_secondary_availability_zone(self) -> builtins.str:
492
+ '''Describes an Availability Zone in which the InfluxDB instance is located.
493
+
494
+ :cloudformationAttribute: SecondaryAvailabilityZone
495
+ '''
496
+ return typing.cast(builtins.str, jsii.get(self, "attrSecondaryAvailabilityZone"))
497
+
498
+ @builtins.property
499
+ @jsii.member(jsii_name="attrStatus")
500
+ def attr_status(self) -> builtins.str:
501
+ '''The status of the DB instance.
502
+
503
+ Valid Values: ``CREATING`` | ``AVAILABLE`` | ``DELETING`` | ``MODIFYING`` | ``UPDATING`` | ``DELETED`` | ``FAILED``
504
+
505
+ :cloudformationAttribute: Status
506
+ '''
507
+ return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
508
+
509
+ @builtins.property
510
+ @jsii.member(jsii_name="cdkTagManager")
511
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
512
+ '''Tag Manager which manages the tags for this resource.'''
513
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
514
+
515
+ @builtins.property
516
+ @jsii.member(jsii_name="cfnProperties")
517
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
518
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
519
+
520
+ @builtins.property
521
+ @jsii.member(jsii_name="allocatedStorage")
522
+ def allocated_storage(self) -> typing.Optional[jsii.Number]:
523
+ '''The amount of storage to allocate for your DB storage type in GiB (gibibytes).'''
524
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "allocatedStorage"))
525
+
526
+ @allocated_storage.setter
527
+ def allocated_storage(self, value: typing.Optional[jsii.Number]) -> None:
528
+ if __debug__:
529
+ type_hints = typing.get_type_hints(_typecheckingstub__a7917c52cc4a35c0f52c4af1b442c3aecef7f9cf89a52a828220b4da7b5539f1)
530
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
531
+ jsii.set(self, "allocatedStorage", value)
532
+
533
+ @builtins.property
534
+ @jsii.member(jsii_name="bucket")
535
+ def bucket(self) -> typing.Optional[builtins.str]:
536
+ '''The name of the initial InfluxDB bucket.'''
537
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "bucket"))
538
+
539
+ @bucket.setter
540
+ def bucket(self, value: typing.Optional[builtins.str]) -> None:
541
+ if __debug__:
542
+ type_hints = typing.get_type_hints(_typecheckingstub__25f86d26774eb87b60d2708f887741f934ac2ea1147687e8233a2ddaf6c61537)
543
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
544
+ jsii.set(self, "bucket", value)
545
+
546
+ @builtins.property
547
+ @jsii.member(jsii_name="dbInstanceType")
548
+ def db_instance_type(self) -> typing.Optional[builtins.str]:
549
+ '''The Timestream for InfluxDB DB instance type to run on.'''
550
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "dbInstanceType"))
551
+
552
+ @db_instance_type.setter
553
+ def db_instance_type(self, value: typing.Optional[builtins.str]) -> None:
554
+ if __debug__:
555
+ type_hints = typing.get_type_hints(_typecheckingstub__25d6a3692ba3b5dd13335fb452825b4986a700bb07a6c30898693ba6eccd629c)
556
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
557
+ jsii.set(self, "dbInstanceType", value)
558
+
559
+ @builtins.property
560
+ @jsii.member(jsii_name="dbParameterGroupIdentifier")
561
+ def db_parameter_group_identifier(self) -> typing.Optional[builtins.str]:
562
+ '''The name or id of the DB parameter group to assign to your DB instance.'''
563
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "dbParameterGroupIdentifier"))
564
+
565
+ @db_parameter_group_identifier.setter
566
+ def db_parameter_group_identifier(
567
+ self,
568
+ value: typing.Optional[builtins.str],
569
+ ) -> None:
570
+ if __debug__:
571
+ type_hints = typing.get_type_hints(_typecheckingstub__87e751c5090ee404af7dbeb0c56f385cefee055153a9fae283b919e0ffe051e0)
572
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
573
+ jsii.set(self, "dbParameterGroupIdentifier", value)
574
+
575
+ @builtins.property
576
+ @jsii.member(jsii_name="dbStorageType")
577
+ def db_storage_type(self) -> typing.Optional[builtins.str]:
578
+ '''The Timestream for InfluxDB DB storage type to read and write InfluxDB data.'''
579
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "dbStorageType"))
580
+
581
+ @db_storage_type.setter
582
+ def db_storage_type(self, value: typing.Optional[builtins.str]) -> None:
583
+ if __debug__:
584
+ type_hints = typing.get_type_hints(_typecheckingstub__82a77601407a22b185b040520ff63d954800f462813b7884892bbc7887ff27ed)
585
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
586
+ jsii.set(self, "dbStorageType", value)
587
+
588
+ @builtins.property
589
+ @jsii.member(jsii_name="deploymentType")
590
+ def deployment_type(self) -> typing.Optional[builtins.str]:
591
+ '''Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.'''
592
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "deploymentType"))
593
+
594
+ @deployment_type.setter
595
+ def deployment_type(self, value: typing.Optional[builtins.str]) -> None:
596
+ if __debug__:
597
+ type_hints = typing.get_type_hints(_typecheckingstub__dac0663b012220243058f546574e79cb08c511efe9044e387e944759cb8b6c7f)
598
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
599
+ jsii.set(self, "deploymentType", value)
600
+
601
+ @builtins.property
602
+ @jsii.member(jsii_name="logDeliveryConfiguration")
603
+ def log_delivery_configuration(
604
+ self,
605
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInfluxDBInstance.LogDeliveryConfigurationProperty"]]:
606
+ '''Configuration for sending InfluxDB engine logs to a specified S3 bucket.'''
607
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInfluxDBInstance.LogDeliveryConfigurationProperty"]], jsii.get(self, "logDeliveryConfiguration"))
608
+
609
+ @log_delivery_configuration.setter
610
+ def log_delivery_configuration(
611
+ self,
612
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInfluxDBInstance.LogDeliveryConfigurationProperty"]],
613
+ ) -> None:
614
+ if __debug__:
615
+ type_hints = typing.get_type_hints(_typecheckingstub__8f1952d4bf27eb9dea517af025bf1e2e4e2b6565bf7ed16673d4581a4927c005)
616
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
617
+ jsii.set(self, "logDeliveryConfiguration", value)
618
+
619
+ @builtins.property
620
+ @jsii.member(jsii_name="name")
621
+ def name(self) -> typing.Optional[builtins.str]:
622
+ '''The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands.'''
623
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "name"))
624
+
625
+ @name.setter
626
+ def name(self, value: typing.Optional[builtins.str]) -> None:
627
+ if __debug__:
628
+ type_hints = typing.get_type_hints(_typecheckingstub__850a764930865e073c6906c062d2d30700a4c783783240e878c9177e70352597)
629
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
630
+ jsii.set(self, "name", value)
631
+
632
+ @builtins.property
633
+ @jsii.member(jsii_name="organization")
634
+ def organization(self) -> typing.Optional[builtins.str]:
635
+ '''The name of the initial organization for the initial admin user in InfluxDB.'''
636
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "organization"))
637
+
638
+ @organization.setter
639
+ def organization(self, value: typing.Optional[builtins.str]) -> None:
640
+ if __debug__:
641
+ type_hints = typing.get_type_hints(_typecheckingstub__cc951f5919f71c331ff63c7ad85284437f7a1518ff4ec8b7d4be3a209a958642)
642
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
643
+ jsii.set(self, "organization", value)
644
+
645
+ @builtins.property
646
+ @jsii.member(jsii_name="password")
647
+ def password(self) -> typing.Optional[builtins.str]:
648
+ '''The password of the initial admin user created in InfluxDB.'''
649
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "password"))
650
+
651
+ @password.setter
652
+ def password(self, value: typing.Optional[builtins.str]) -> None:
653
+ if __debug__:
654
+ type_hints = typing.get_type_hints(_typecheckingstub__74f7e1c43a2306182a51c50f7081008d44b95cb4e9c3b52de43127db091bb78d)
655
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
656
+ jsii.set(self, "password", value)
657
+
658
+ @builtins.property
659
+ @jsii.member(jsii_name="publiclyAccessible")
660
+ def publicly_accessible(
661
+ self,
662
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
663
+ '''Configures the DB instance with a public IP to facilitate access.'''
664
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "publiclyAccessible"))
665
+
666
+ @publicly_accessible.setter
667
+ def publicly_accessible(
668
+ self,
669
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
670
+ ) -> None:
671
+ if __debug__:
672
+ type_hints = typing.get_type_hints(_typecheckingstub__f4fc7c874876ac199eadc5d0947e02e2e8f42717e865d6b225956129df9bcf9b)
673
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
674
+ jsii.set(self, "publiclyAccessible", value)
675
+
676
+ @builtins.property
677
+ @jsii.member(jsii_name="tags")
678
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
679
+ '''A list of key-value pairs to associate with the DB instance.'''
680
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
681
+
682
+ @tags.setter
683
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
684
+ if __debug__:
685
+ type_hints = typing.get_type_hints(_typecheckingstub__556b2bdc4c82a82b60258858bb30cfd977370fb3f02c1d33143bfe0960074cb2)
686
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
687
+ jsii.set(self, "tags", value)
688
+
689
+ @builtins.property
690
+ @jsii.member(jsii_name="username")
691
+ def username(self) -> typing.Optional[builtins.str]:
692
+ '''The username of the initial admin user created in InfluxDB.'''
693
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "username"))
694
+
695
+ @username.setter
696
+ def username(self, value: typing.Optional[builtins.str]) -> None:
697
+ if __debug__:
698
+ type_hints = typing.get_type_hints(_typecheckingstub__f2582c99c01f09c7f93538ccbb766d4dd3de9c7e097227a603e9b91b36a8c6b5)
699
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
700
+ jsii.set(self, "username", value)
701
+
702
+ @builtins.property
703
+ @jsii.member(jsii_name="vpcSecurityGroupIds")
704
+ def vpc_security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
705
+ '''A list of VPC security group IDs to associate with the DB instance.'''
706
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "vpcSecurityGroupIds"))
707
+
708
+ @vpc_security_group_ids.setter
709
+ def vpc_security_group_ids(
710
+ self,
711
+ value: typing.Optional[typing.List[builtins.str]],
712
+ ) -> None:
713
+ if __debug__:
714
+ type_hints = typing.get_type_hints(_typecheckingstub__18027e20d25f4f16eb43769fcc515cf8bb253ed4d4d0d00d044ecc2d4b3755c7)
715
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
716
+ jsii.set(self, "vpcSecurityGroupIds", value)
717
+
718
+ @builtins.property
719
+ @jsii.member(jsii_name="vpcSubnetIds")
720
+ def vpc_subnet_ids(self) -> typing.Optional[typing.List[builtins.str]]:
721
+ '''A list of VPC subnet IDs to associate with the DB instance.'''
722
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "vpcSubnetIds"))
723
+
724
+ @vpc_subnet_ids.setter
725
+ def vpc_subnet_ids(self, value: typing.Optional[typing.List[builtins.str]]) -> None:
726
+ if __debug__:
727
+ type_hints = typing.get_type_hints(_typecheckingstub__dde7e458ced60d76efcf984ac6b215dfcba103748eb36a29b5db081d8844ad9a)
728
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
729
+ jsii.set(self, "vpcSubnetIds", value)
730
+
731
+ @jsii.data_type(
732
+ jsii_type="aws-cdk-lib.aws_timestream.CfnInfluxDBInstance.LogDeliveryConfigurationProperty",
733
+ jsii_struct_bases=[],
734
+ name_mapping={"s3_configuration": "s3Configuration"},
735
+ )
736
+ class LogDeliveryConfigurationProperty:
737
+ def __init__(
738
+ self,
739
+ *,
740
+ s3_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnInfluxDBInstance.S3ConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
741
+ ) -> None:
742
+ '''Configuration for sending InfluxDB engine logs to a specified S3 bucket.
743
+
744
+ :param s3_configuration: Configuration for S3 bucket log delivery.
745
+
746
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-timestream-influxdbinstance-logdeliveryconfiguration.html
747
+ :exampleMetadata: fixture=_generated
748
+
749
+ Example::
750
+
751
+ # The code below shows an example of how to instantiate this type.
752
+ # The values are placeholders you should change.
753
+ from aws_cdk import aws_timestream as timestream
754
+
755
+ log_delivery_configuration_property = timestream.CfnInfluxDBInstance.LogDeliveryConfigurationProperty(
756
+ s3_configuration=timestream.CfnInfluxDBInstance.S3ConfigurationProperty(
757
+ bucket_name="bucketName",
758
+ enabled=False
759
+ )
760
+ )
761
+ '''
762
+ if __debug__:
763
+ type_hints = typing.get_type_hints(_typecheckingstub__b492d3a7ee4233628eb816da2725d3abcbf6f6ef7090b366477dd860322297c3)
764
+ check_type(argname="argument s3_configuration", value=s3_configuration, expected_type=type_hints["s3_configuration"])
765
+ self._values: typing.Dict[builtins.str, typing.Any] = {
766
+ "s3_configuration": s3_configuration,
767
+ }
768
+
769
+ @builtins.property
770
+ def s3_configuration(
771
+ self,
772
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnInfluxDBInstance.S3ConfigurationProperty"]:
773
+ '''Configuration for S3 bucket log delivery.
774
+
775
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-timestream-influxdbinstance-logdeliveryconfiguration.html#cfn-timestream-influxdbinstance-logdeliveryconfiguration-s3configuration
776
+ '''
777
+ result = self._values.get("s3_configuration")
778
+ assert result is not None, "Required property 's3_configuration' is missing"
779
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnInfluxDBInstance.S3ConfigurationProperty"], result)
780
+
781
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
782
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
783
+
784
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
785
+ return not (rhs == self)
786
+
787
+ def __repr__(self) -> str:
788
+ return "LogDeliveryConfigurationProperty(%s)" % ", ".join(
789
+ k + "=" + repr(v) for k, v in self._values.items()
790
+ )
791
+
792
+ @jsii.data_type(
793
+ jsii_type="aws-cdk-lib.aws_timestream.CfnInfluxDBInstance.S3ConfigurationProperty",
794
+ jsii_struct_bases=[],
795
+ name_mapping={"bucket_name": "bucketName", "enabled": "enabled"},
796
+ )
797
+ class S3ConfigurationProperty:
798
+ def __init__(
799
+ self,
800
+ *,
801
+ bucket_name: builtins.str,
802
+ enabled: typing.Union[builtins.bool, _IResolvable_da3f097b],
803
+ ) -> None:
804
+ '''Configuration for S3 bucket log delivery.
805
+
806
+ :param bucket_name: The bucket name of the customer S3 bucket.
807
+ :param enabled: Indicates whether log delivery to the S3 bucket is enabled.
808
+
809
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-timestream-influxdbinstance-s3configuration.html
810
+ :exampleMetadata: fixture=_generated
811
+
812
+ Example::
813
+
814
+ # The code below shows an example of how to instantiate this type.
815
+ # The values are placeholders you should change.
816
+ from aws_cdk import aws_timestream as timestream
817
+
818
+ s3_configuration_property = timestream.CfnInfluxDBInstance.S3ConfigurationProperty(
819
+ bucket_name="bucketName",
820
+ enabled=False
821
+ )
822
+ '''
823
+ if __debug__:
824
+ type_hints = typing.get_type_hints(_typecheckingstub__4aa0f60598bf7475cc8515647f29b3aaeaf36db24c7f9bfb5c8b0ae931853235)
825
+ check_type(argname="argument bucket_name", value=bucket_name, expected_type=type_hints["bucket_name"])
826
+ check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
827
+ self._values: typing.Dict[builtins.str, typing.Any] = {
828
+ "bucket_name": bucket_name,
829
+ "enabled": enabled,
830
+ }
831
+
832
+ @builtins.property
833
+ def bucket_name(self) -> builtins.str:
834
+ '''The bucket name of the customer S3 bucket.
835
+
836
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-timestream-influxdbinstance-s3configuration.html#cfn-timestream-influxdbinstance-s3configuration-bucketname
837
+ '''
838
+ result = self._values.get("bucket_name")
839
+ assert result is not None, "Required property 'bucket_name' is missing"
840
+ return typing.cast(builtins.str, result)
841
+
842
+ @builtins.property
843
+ def enabled(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
844
+ '''Indicates whether log delivery to the S3 bucket is enabled.
845
+
846
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-timestream-influxdbinstance-s3configuration.html#cfn-timestream-influxdbinstance-s3configuration-enabled
847
+ '''
848
+ result = self._values.get("enabled")
849
+ assert result is not None, "Required property 'enabled' is missing"
850
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
851
+
852
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
853
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
854
+
855
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
856
+ return not (rhs == self)
857
+
858
+ def __repr__(self) -> str:
859
+ return "S3ConfigurationProperty(%s)" % ", ".join(
860
+ k + "=" + repr(v) for k, v in self._values.items()
861
+ )
862
+
863
+
864
+ @jsii.data_type(
865
+ jsii_type="aws-cdk-lib.aws_timestream.CfnInfluxDBInstanceProps",
866
+ jsii_struct_bases=[],
867
+ name_mapping={
868
+ "allocated_storage": "allocatedStorage",
869
+ "bucket": "bucket",
870
+ "db_instance_type": "dbInstanceType",
871
+ "db_parameter_group_identifier": "dbParameterGroupIdentifier",
872
+ "db_storage_type": "dbStorageType",
873
+ "deployment_type": "deploymentType",
874
+ "log_delivery_configuration": "logDeliveryConfiguration",
875
+ "name": "name",
876
+ "organization": "organization",
877
+ "password": "password",
878
+ "publicly_accessible": "publiclyAccessible",
879
+ "tags": "tags",
880
+ "username": "username",
881
+ "vpc_security_group_ids": "vpcSecurityGroupIds",
882
+ "vpc_subnet_ids": "vpcSubnetIds",
883
+ },
884
+ )
885
+ class CfnInfluxDBInstanceProps:
886
+ def __init__(
887
+ self,
888
+ *,
889
+ allocated_storage: typing.Optional[jsii.Number] = None,
890
+ bucket: typing.Optional[builtins.str] = None,
891
+ db_instance_type: typing.Optional[builtins.str] = None,
892
+ db_parameter_group_identifier: typing.Optional[builtins.str] = None,
893
+ db_storage_type: typing.Optional[builtins.str] = None,
894
+ deployment_type: typing.Optional[builtins.str] = None,
895
+ log_delivery_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInfluxDBInstance.LogDeliveryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
896
+ name: typing.Optional[builtins.str] = None,
897
+ organization: typing.Optional[builtins.str] = None,
898
+ password: typing.Optional[builtins.str] = None,
899
+ publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
900
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
901
+ username: typing.Optional[builtins.str] = None,
902
+ vpc_security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
903
+ vpc_subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
904
+ ) -> None:
905
+ '''Properties for defining a ``CfnInfluxDBInstance``.
906
+
907
+ :param allocated_storage: The amount of storage to allocate for your DB storage type in GiB (gibibytes).
908
+ :param bucket: The name of the initial InfluxDB bucket. All InfluxDB data is stored in a bucket. A bucket combines the concept of a database and a retention period (the duration of time that each data point persists). A bucket belongs to an organization.
909
+ :param db_instance_type: The Timestream for InfluxDB DB instance type to run on.
910
+ :param db_parameter_group_identifier: The name or id of the DB parameter group to assign to your DB instance. DB parameter groups specify how the database is configured. For example, DB parameter groups can specify the limit for query concurrency.
911
+ :param db_storage_type: The Timestream for InfluxDB DB storage type to read and write InfluxDB data. You can choose between 3 different types of provisioned Influx IOPS included storage according to your workloads requirements: - Influx IO Included 3000 IOPS - Influx IO Included 12000 IOPS - Influx IO Included 16000 IOPS
912
+ :param deployment_type: Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.
913
+ :param log_delivery_configuration: Configuration for sending InfluxDB engine logs to a specified S3 bucket.
914
+ :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.
915
+ :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.
916
+ :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.
917
+ :param publicly_accessible: Configures the DB instance with a public IP to facilitate access. Default: - false
918
+ :param tags: A list of key-value pairs to associate with the DB instance.
919
+ :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.
920
+ :param vpc_security_group_ids: A list of VPC security group IDs to associate with the DB instance.
921
+ :param vpc_subnet_ids: A list of VPC subnet IDs to associate with the DB instance. Provide at least two VPC subnet IDs in different availability zones when deploying with a Multi-AZ standby.
922
+
923
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html
924
+ :exampleMetadata: fixture=_generated
925
+
926
+ Example::
927
+
928
+ # The code below shows an example of how to instantiate this type.
929
+ # The values are placeholders you should change.
930
+ from aws_cdk import aws_timestream as timestream
931
+
932
+ cfn_influx_dBInstance_props = timestream.CfnInfluxDBInstanceProps(
933
+ allocated_storage=123,
934
+ bucket="bucket",
935
+ db_instance_type="dbInstanceType",
936
+ db_parameter_group_identifier="dbParameterGroupIdentifier",
937
+ db_storage_type="dbStorageType",
938
+ deployment_type="deploymentType",
939
+ log_delivery_configuration=timestream.CfnInfluxDBInstance.LogDeliveryConfigurationProperty(
940
+ s3_configuration=timestream.CfnInfluxDBInstance.S3ConfigurationProperty(
941
+ bucket_name="bucketName",
942
+ enabled=False
943
+ )
944
+ ),
945
+ name="name",
946
+ organization="organization",
947
+ password="password",
948
+ publicly_accessible=False,
949
+ tags=[CfnTag(
950
+ key="key",
951
+ value="value"
952
+ )],
953
+ username="username",
954
+ vpc_security_group_ids=["vpcSecurityGroupIds"],
955
+ vpc_subnet_ids=["vpcSubnetIds"]
956
+ )
957
+ '''
958
+ if __debug__:
959
+ type_hints = typing.get_type_hints(_typecheckingstub__d0e1a256f4abdadd4b29eda8fd45f16d71b49061c796d179f90eb728f2972e9d)
960
+ check_type(argname="argument allocated_storage", value=allocated_storage, expected_type=type_hints["allocated_storage"])
961
+ check_type(argname="argument bucket", value=bucket, expected_type=type_hints["bucket"])
962
+ check_type(argname="argument db_instance_type", value=db_instance_type, expected_type=type_hints["db_instance_type"])
963
+ check_type(argname="argument db_parameter_group_identifier", value=db_parameter_group_identifier, expected_type=type_hints["db_parameter_group_identifier"])
964
+ check_type(argname="argument db_storage_type", value=db_storage_type, expected_type=type_hints["db_storage_type"])
965
+ check_type(argname="argument deployment_type", value=deployment_type, expected_type=type_hints["deployment_type"])
966
+ check_type(argname="argument log_delivery_configuration", value=log_delivery_configuration, expected_type=type_hints["log_delivery_configuration"])
967
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
968
+ check_type(argname="argument organization", value=organization, expected_type=type_hints["organization"])
969
+ check_type(argname="argument password", value=password, expected_type=type_hints["password"])
970
+ check_type(argname="argument publicly_accessible", value=publicly_accessible, expected_type=type_hints["publicly_accessible"])
971
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
972
+ check_type(argname="argument username", value=username, expected_type=type_hints["username"])
973
+ check_type(argname="argument vpc_security_group_ids", value=vpc_security_group_ids, expected_type=type_hints["vpc_security_group_ids"])
974
+ check_type(argname="argument vpc_subnet_ids", value=vpc_subnet_ids, expected_type=type_hints["vpc_subnet_ids"])
975
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
976
+ if allocated_storage is not None:
977
+ self._values["allocated_storage"] = allocated_storage
978
+ if bucket is not None:
979
+ self._values["bucket"] = bucket
980
+ if db_instance_type is not None:
981
+ self._values["db_instance_type"] = db_instance_type
982
+ if db_parameter_group_identifier is not None:
983
+ self._values["db_parameter_group_identifier"] = db_parameter_group_identifier
984
+ if db_storage_type is not None:
985
+ self._values["db_storage_type"] = db_storage_type
986
+ if deployment_type is not None:
987
+ self._values["deployment_type"] = deployment_type
988
+ if log_delivery_configuration is not None:
989
+ self._values["log_delivery_configuration"] = log_delivery_configuration
990
+ if name is not None:
991
+ self._values["name"] = name
992
+ if organization is not None:
993
+ self._values["organization"] = organization
994
+ if password is not None:
995
+ self._values["password"] = password
996
+ if publicly_accessible is not None:
997
+ self._values["publicly_accessible"] = publicly_accessible
998
+ if tags is not None:
999
+ self._values["tags"] = tags
1000
+ if username is not None:
1001
+ self._values["username"] = username
1002
+ if vpc_security_group_ids is not None:
1003
+ self._values["vpc_security_group_ids"] = vpc_security_group_ids
1004
+ if vpc_subnet_ids is not None:
1005
+ self._values["vpc_subnet_ids"] = vpc_subnet_ids
1006
+
1007
+ @builtins.property
1008
+ def allocated_storage(self) -> typing.Optional[jsii.Number]:
1009
+ '''The amount of storage to allocate for your DB storage type in GiB (gibibytes).
1010
+
1011
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-allocatedstorage
1012
+ '''
1013
+ result = self._values.get("allocated_storage")
1014
+ return typing.cast(typing.Optional[jsii.Number], result)
1015
+
1016
+ @builtins.property
1017
+ def bucket(self) -> typing.Optional[builtins.str]:
1018
+ '''The name of the initial InfluxDB bucket.
1019
+
1020
+ All InfluxDB data is stored in a bucket. A bucket combines the concept of a database and a retention period (the duration of time that each data point persists). A bucket belongs to an organization.
1021
+
1022
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-bucket
1023
+ '''
1024
+ result = self._values.get("bucket")
1025
+ return typing.cast(typing.Optional[builtins.str], result)
1026
+
1027
+ @builtins.property
1028
+ def db_instance_type(self) -> typing.Optional[builtins.str]:
1029
+ '''The Timestream for InfluxDB DB instance type to run on.
1030
+
1031
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-dbinstancetype
1032
+ '''
1033
+ result = self._values.get("db_instance_type")
1034
+ return typing.cast(typing.Optional[builtins.str], result)
1035
+
1036
+ @builtins.property
1037
+ def db_parameter_group_identifier(self) -> typing.Optional[builtins.str]:
1038
+ '''The name or id of the DB parameter group to assign to your DB instance.
1039
+
1040
+ DB parameter groups specify how the database is configured. For example, DB parameter groups can specify the limit for query concurrency.
1041
+
1042
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-dbparametergroupidentifier
1043
+ '''
1044
+ result = self._values.get("db_parameter_group_identifier")
1045
+ return typing.cast(typing.Optional[builtins.str], result)
1046
+
1047
+ @builtins.property
1048
+ def db_storage_type(self) -> typing.Optional[builtins.str]:
1049
+ '''The Timestream for InfluxDB DB storage type to read and write InfluxDB data.
1050
+
1051
+ You can choose between 3 different types of provisioned Influx IOPS included storage according to your workloads requirements:
1052
+
1053
+ - Influx IO Included 3000 IOPS
1054
+ - Influx IO Included 12000 IOPS
1055
+ - Influx IO Included 16000 IOPS
1056
+
1057
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-dbstoragetype
1058
+ '''
1059
+ result = self._values.get("db_storage_type")
1060
+ return typing.cast(typing.Optional[builtins.str], result)
1061
+
1062
+ @builtins.property
1063
+ def deployment_type(self) -> typing.Optional[builtins.str]:
1064
+ '''Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.
1065
+
1066
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-deploymenttype
1067
+ '''
1068
+ result = self._values.get("deployment_type")
1069
+ return typing.cast(typing.Optional[builtins.str], result)
1070
+
1071
+ @builtins.property
1072
+ def log_delivery_configuration(
1073
+ self,
1074
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInfluxDBInstance.LogDeliveryConfigurationProperty]]:
1075
+ '''Configuration for sending InfluxDB engine logs to a specified S3 bucket.
1076
+
1077
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-logdeliveryconfiguration
1078
+ '''
1079
+ result = self._values.get("log_delivery_configuration")
1080
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInfluxDBInstance.LogDeliveryConfigurationProperty]], result)
1081
+
1082
+ @builtins.property
1083
+ def name(self) -> typing.Optional[builtins.str]:
1084
+ '''The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands.
1085
+
1086
+ This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.
1087
+
1088
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-name
1089
+ '''
1090
+ result = self._values.get("name")
1091
+ return typing.cast(typing.Optional[builtins.str], result)
1092
+
1093
+ @builtins.property
1094
+ def organization(self) -> typing.Optional[builtins.str]:
1095
+ '''The name of the initial organization for the initial admin user in InfluxDB.
1096
+
1097
+ An InfluxDB organization is a workspace for a group of users.
1098
+
1099
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-organization
1100
+ '''
1101
+ result = self._values.get("organization")
1102
+ return typing.cast(typing.Optional[builtins.str], result)
1103
+
1104
+ @builtins.property
1105
+ def password(self) -> typing.Optional[builtins.str]:
1106
+ '''The password of the initial admin user created in InfluxDB.
1107
+
1108
+ 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.
1109
+
1110
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-password
1111
+ '''
1112
+ result = self._values.get("password")
1113
+ return typing.cast(typing.Optional[builtins.str], result)
1114
+
1115
+ @builtins.property
1116
+ def publicly_accessible(
1117
+ self,
1118
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
1119
+ '''Configures the DB instance with a public IP to facilitate access.
1120
+
1121
+ :default: - false
1122
+
1123
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-publiclyaccessible
1124
+ '''
1125
+ result = self._values.get("publicly_accessible")
1126
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
1127
+
1128
+ @builtins.property
1129
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1130
+ '''A list of key-value pairs to associate with the DB instance.
1131
+
1132
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-tags
1133
+ '''
1134
+ result = self._values.get("tags")
1135
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1136
+
1137
+ @builtins.property
1138
+ def username(self) -> typing.Optional[builtins.str]:
1139
+ '''The username of the initial admin user created in InfluxDB.
1140
+
1141
+ 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.
1142
+
1143
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-username
1144
+ '''
1145
+ result = self._values.get("username")
1146
+ return typing.cast(typing.Optional[builtins.str], result)
1147
+
1148
+ @builtins.property
1149
+ def vpc_security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
1150
+ '''A list of VPC security group IDs to associate with the DB instance.
1151
+
1152
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-vpcsecuritygroupids
1153
+ '''
1154
+ result = self._values.get("vpc_security_group_ids")
1155
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1156
+
1157
+ @builtins.property
1158
+ def vpc_subnet_ids(self) -> typing.Optional[typing.List[builtins.str]]:
1159
+ '''A list of VPC subnet IDs to associate with the DB instance.
1160
+
1161
+ Provide at least two VPC subnet IDs in different availability zones when deploying with a Multi-AZ standby.
1162
+
1163
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html#cfn-timestream-influxdbinstance-vpcsubnetids
1164
+ '''
1165
+ result = self._values.get("vpc_subnet_ids")
1166
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1167
+
1168
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1169
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1170
+
1171
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1172
+ return not (rhs == self)
1173
+
1174
+ def __repr__(self) -> str:
1175
+ return "CfnInfluxDBInstanceProps(%s)" % ", ".join(
1176
+ k + "=" + repr(v) for k, v in self._values.items()
1177
+ )
1178
+
1179
+
298
1180
  @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
299
1181
  class CfnScheduledQuery(
300
1182
  _CfnResource_9df397a6,
@@ -2955,6 +3837,8 @@ class CfnTableProps:
2955
3837
  __all__ = [
2956
3838
  "CfnDatabase",
2957
3839
  "CfnDatabaseProps",
3840
+ "CfnInfluxDBInstance",
3841
+ "CfnInfluxDBInstanceProps",
2958
3842
  "CfnScheduledQuery",
2959
3843
  "CfnScheduledQueryProps",
2960
3844
  "CfnTable",
@@ -3013,6 +3897,167 @@ def _typecheckingstub__fffb8befe8374295020dd254ed0c77820bb26fc0d94c59e0a34f89d6f
3013
3897
  """Type checking stubs"""
3014
3898
  pass
3015
3899
 
3900
+ def _typecheckingstub__261e4a43f1d3c329e317698aa3b0f0428b7e7d3646c4c536f48fd191f2f65c10(
3901
+ scope: _constructs_77d1e7e8.Construct,
3902
+ id: builtins.str,
3903
+ *,
3904
+ allocated_storage: typing.Optional[jsii.Number] = None,
3905
+ bucket: typing.Optional[builtins.str] = None,
3906
+ db_instance_type: typing.Optional[builtins.str] = None,
3907
+ db_parameter_group_identifier: typing.Optional[builtins.str] = None,
3908
+ db_storage_type: typing.Optional[builtins.str] = None,
3909
+ deployment_type: typing.Optional[builtins.str] = None,
3910
+ log_delivery_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInfluxDBInstance.LogDeliveryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3911
+ name: typing.Optional[builtins.str] = None,
3912
+ organization: typing.Optional[builtins.str] = None,
3913
+ password: typing.Optional[builtins.str] = None,
3914
+ publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3915
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3916
+ username: typing.Optional[builtins.str] = None,
3917
+ vpc_security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
3918
+ vpc_subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
3919
+ ) -> None:
3920
+ """Type checking stubs"""
3921
+ pass
3922
+
3923
+ def _typecheckingstub__a95c4d6f0fc75220a7cb663070426910b51aa6f3302a22e95539bada8de02a29(
3924
+ inspector: _TreeInspector_488e0dd5,
3925
+ ) -> None:
3926
+ """Type checking stubs"""
3927
+ pass
3928
+
3929
+ def _typecheckingstub__898f20490ec221d4e94e779d6a547a9b98bbe400d1ae73dec3d45b042bc36324(
3930
+ props: typing.Mapping[builtins.str, typing.Any],
3931
+ ) -> None:
3932
+ """Type checking stubs"""
3933
+ pass
3934
+
3935
+ def _typecheckingstub__a7917c52cc4a35c0f52c4af1b442c3aecef7f9cf89a52a828220b4da7b5539f1(
3936
+ value: typing.Optional[jsii.Number],
3937
+ ) -> None:
3938
+ """Type checking stubs"""
3939
+ pass
3940
+
3941
+ def _typecheckingstub__25f86d26774eb87b60d2708f887741f934ac2ea1147687e8233a2ddaf6c61537(
3942
+ value: typing.Optional[builtins.str],
3943
+ ) -> None:
3944
+ """Type checking stubs"""
3945
+ pass
3946
+
3947
+ def _typecheckingstub__25d6a3692ba3b5dd13335fb452825b4986a700bb07a6c30898693ba6eccd629c(
3948
+ value: typing.Optional[builtins.str],
3949
+ ) -> None:
3950
+ """Type checking stubs"""
3951
+ pass
3952
+
3953
+ def _typecheckingstub__87e751c5090ee404af7dbeb0c56f385cefee055153a9fae283b919e0ffe051e0(
3954
+ value: typing.Optional[builtins.str],
3955
+ ) -> None:
3956
+ """Type checking stubs"""
3957
+ pass
3958
+
3959
+ def _typecheckingstub__82a77601407a22b185b040520ff63d954800f462813b7884892bbc7887ff27ed(
3960
+ value: typing.Optional[builtins.str],
3961
+ ) -> None:
3962
+ """Type checking stubs"""
3963
+ pass
3964
+
3965
+ def _typecheckingstub__dac0663b012220243058f546574e79cb08c511efe9044e387e944759cb8b6c7f(
3966
+ value: typing.Optional[builtins.str],
3967
+ ) -> None:
3968
+ """Type checking stubs"""
3969
+ pass
3970
+
3971
+ def _typecheckingstub__8f1952d4bf27eb9dea517af025bf1e2e4e2b6565bf7ed16673d4581a4927c005(
3972
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInfluxDBInstance.LogDeliveryConfigurationProperty]],
3973
+ ) -> None:
3974
+ """Type checking stubs"""
3975
+ pass
3976
+
3977
+ def _typecheckingstub__850a764930865e073c6906c062d2d30700a4c783783240e878c9177e70352597(
3978
+ value: typing.Optional[builtins.str],
3979
+ ) -> None:
3980
+ """Type checking stubs"""
3981
+ pass
3982
+
3983
+ def _typecheckingstub__cc951f5919f71c331ff63c7ad85284437f7a1518ff4ec8b7d4be3a209a958642(
3984
+ value: typing.Optional[builtins.str],
3985
+ ) -> None:
3986
+ """Type checking stubs"""
3987
+ pass
3988
+
3989
+ def _typecheckingstub__74f7e1c43a2306182a51c50f7081008d44b95cb4e9c3b52de43127db091bb78d(
3990
+ value: typing.Optional[builtins.str],
3991
+ ) -> None:
3992
+ """Type checking stubs"""
3993
+ pass
3994
+
3995
+ def _typecheckingstub__f4fc7c874876ac199eadc5d0947e02e2e8f42717e865d6b225956129df9bcf9b(
3996
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
3997
+ ) -> None:
3998
+ """Type checking stubs"""
3999
+ pass
4000
+
4001
+ def _typecheckingstub__556b2bdc4c82a82b60258858bb30cfd977370fb3f02c1d33143bfe0960074cb2(
4002
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
4003
+ ) -> None:
4004
+ """Type checking stubs"""
4005
+ pass
4006
+
4007
+ def _typecheckingstub__f2582c99c01f09c7f93538ccbb766d4dd3de9c7e097227a603e9b91b36a8c6b5(
4008
+ value: typing.Optional[builtins.str],
4009
+ ) -> None:
4010
+ """Type checking stubs"""
4011
+ pass
4012
+
4013
+ def _typecheckingstub__18027e20d25f4f16eb43769fcc515cf8bb253ed4d4d0d00d044ecc2d4b3755c7(
4014
+ value: typing.Optional[typing.List[builtins.str]],
4015
+ ) -> None:
4016
+ """Type checking stubs"""
4017
+ pass
4018
+
4019
+ def _typecheckingstub__dde7e458ced60d76efcf984ac6b215dfcba103748eb36a29b5db081d8844ad9a(
4020
+ value: typing.Optional[typing.List[builtins.str]],
4021
+ ) -> None:
4022
+ """Type checking stubs"""
4023
+ pass
4024
+
4025
+ def _typecheckingstub__b492d3a7ee4233628eb816da2725d3abcbf6f6ef7090b366477dd860322297c3(
4026
+ *,
4027
+ s3_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnInfluxDBInstance.S3ConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4028
+ ) -> None:
4029
+ """Type checking stubs"""
4030
+ pass
4031
+
4032
+ def _typecheckingstub__4aa0f60598bf7475cc8515647f29b3aaeaf36db24c7f9bfb5c8b0ae931853235(
4033
+ *,
4034
+ bucket_name: builtins.str,
4035
+ enabled: typing.Union[builtins.bool, _IResolvable_da3f097b],
4036
+ ) -> None:
4037
+ """Type checking stubs"""
4038
+ pass
4039
+
4040
+ def _typecheckingstub__d0e1a256f4abdadd4b29eda8fd45f16d71b49061c796d179f90eb728f2972e9d(
4041
+ *,
4042
+ allocated_storage: typing.Optional[jsii.Number] = None,
4043
+ bucket: typing.Optional[builtins.str] = None,
4044
+ db_instance_type: typing.Optional[builtins.str] = None,
4045
+ db_parameter_group_identifier: typing.Optional[builtins.str] = None,
4046
+ db_storage_type: typing.Optional[builtins.str] = None,
4047
+ deployment_type: typing.Optional[builtins.str] = None,
4048
+ log_delivery_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInfluxDBInstance.LogDeliveryConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4049
+ name: typing.Optional[builtins.str] = None,
4050
+ organization: typing.Optional[builtins.str] = None,
4051
+ password: typing.Optional[builtins.str] = None,
4052
+ publicly_accessible: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4053
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4054
+ username: typing.Optional[builtins.str] = None,
4055
+ vpc_security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
4056
+ vpc_subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
4057
+ ) -> None:
4058
+ """Type checking stubs"""
4059
+ pass
4060
+
3016
4061
  def _typecheckingstub__17cb9c0ebf2969eb32b3d5921e02d6b922a461b4f7becdb1bf28f83cb9407cfa(
3017
4062
  scope: _constructs_77d1e7e8.Construct,
3018
4063
  id: builtins.str,