Documentation Index
Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
Use this file to discover all available pages before exploring further.
The DataResource implements the standard resource lifecycle, but does not directly take any other actions.
You can use the DataResource resource without requiring or configuring a provider.
The DataResource resource is useful for storing values which need to follow a manage resource lifecycle, and for triggering provisioners when there is no other logical managed resource in which to place them.
It requires Terraform 1.4 or later.
It is also possible to generate these bindings by adding “terraform.io/builtin/terraform” to the “terraformProviders” key in your cdktf.json file and running “cdktn get”.
https://developer.hashicorp.com/terraform/language/resources/terraform-data
Initializers
import cdktn
cdktn.DataResource(
scope: Construct,
id: str,
connection: SSHProvisionerConnection | WinrmProvisionerConnection = None,
count: typing.Union[int, float] | TerraformCount = None,
depends_on: typing.List[ITerraformDependable] = None,
for_each: ITerraformIterator = None,
lifecycle: TerraformResourceLifecycle = None,
provider: TerraformProvider = None,
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner] = None,
input: typing.Mapping[typing.Any] = None,
triggers_replace: typing.Mapping[typing.Any] = None
)
| Name | Type | Description |
|---|
scope | constructs.Construct | The scope in which to define this construct. |
id | str | The scoped construct ID. |
connection | SSHProvisionerConnection | WinrmProvisionerConnection | No description. |
count | typing.Union[int, float] | TerraformCount | No description. |
depends_on | typing.List[ITerraformDependable] | No description. |
for_each | ITerraformIterator | No description. |
lifecycle | TerraformResourceLifecycle | No description. |
provider | TerraformProvider | No description. |
provisioners | typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner] | No description. |
input | typing.Mapping[typing.Any] | (Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply. |
triggers_replace | typing.Mapping[typing.Any] | (Optional) A value which is stored in the instance state, and will force replacement when the value changes. |
scopeRequired
- Type: constructs.Construct
The scope in which to define this construct.
idRequired
The scoped construct ID.
Must be unique amongst siblings in the same scope
connectionOptional
countOptional
depends_onOptional
for_eachOptional
lifecycleOptional
providerOptional
provisionersOptional
- Type: typing.Mapping[typing.Any]
(Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply.
https://developer.hashicorp.com/terraform/language/resources/terraform-data#input
triggers_replaceOptional
- Type: typing.Mapping[typing.Any]
(Optional) A value which is stored in the instance state, and will force replacement when the value changes.
https://developer.hashicorp.com/terraform/language/resources/terraform-data#triggers\_replace
Methods
| Name | Description |
|---|
to_string | Returns a string representation of this construct. |
add_override | No description. |
override_logical_id | Overrides the auto-generated logical ID with a specific ID. |
reset_override_logical_id | Resets a previously passed logical Id to use the auto-generated logical id again. |
to_hcl_terraform | No description. |
to_metadata | No description. |
to_terraform | Adds this resource to the terraform JSON output. |
add_move_target | Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. |
get_any_map_attribute | No description. |
get_boolean_attribute | No description. |
get_boolean_map_attribute | No description. |
get_list_attribute | No description. |
get_number_attribute | No description. |
get_number_list_attribute | No description. |
get_number_map_attribute | No description. |
get_string_attribute | No description. |
get_string_map_attribute | No description. |
has_resource_move | No description. |
import_from | No description. |
interpolation_for_attribute | No description. |
move_from_id | Move the resource corresponding to “id” to this resource. |
move_to | Moves this resource to the target resource given by moveTarget. |
move_to_id | Moves this resource to the resource corresponding to “id”. |
reset_input | No description. |
reset_triggers_replace | No description. |
to_string
Returns a string representation of this construct.
add_override
def add_override(
path: str,
value: typing.Any
) -> None
pathRequired
valueRequired
override_logical_id
def override_logical_id(
new_logical_id: str
) -> None
Overrides the auto-generated logical ID with a specific ID.
new_logical_idRequired
The new logical ID to use for this stack element.
reset_override_logical_id
def reset_override_logical_id() -> None
Resets a previously passed logical Id to use the auto-generated logical id again.
def to_hcl_terraform() -> typing.Any
def to_metadata() -> typing.Any
def to_terraform() -> typing.Any
Adds this resource to the terraform JSON output.
add_move_target
def add_move_target(
move_target: str
) -> None
Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
move_targetRequired
The string move target that will correspond to this resource.
get_any_map_attribute
def get_any_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Any]
get_boolean_attribute
def get_boolean_attribute(
terraform_attribute: str
) -> IResolvable
get_boolean_map_attribute
def get_boolean_map_attribute(
terraform_attribute: str
) -> typing.Mapping[bool]
get_list_attribute
def get_list_attribute(
terraform_attribute: str
) -> typing.List[str]
get_number_attribute
def get_number_attribute(
terraform_attribute: str
) -> typing.Union[int, float]
get_number_list_attribute
def get_number_list_attribute(
terraform_attribute: str
) -> typing.List[typing.Union[int, float]]
get_number_map_attribute
def get_number_map_attribute(
terraform_attribute: str
) -> typing.Mapping[typing.Union[int, float]]
get_string_attribute
def get_string_attribute(
terraform_attribute: str
) -> str
get_string_map_attribute
def get_string_map_attribute(
terraform_attribute: str
) -> typing.Mapping[str]
has_resource_move
def has_resource_move() -> TerraformResourceMoveByTarget | TerraformResourceMoveById
import_from
def import_from(
id: str,
provider: TerraformProvider = None
) -> None
idRequired
providerOptional
interpolation_for_attribute
def interpolation_for_attribute(
terraform_attribute: str
) -> IResolvable
move_from_id
def move_from_id(
id: str
) -> None
Move the resource corresponding to “id” to this resource.
Note that the resource being moved from must be marked as moved using it’s instance function.
idRequired
Full id of resource being moved from, e.g. “aws_s3_bucket.example”.
move_to
def move_to(
move_target: str,
index: str | typing.Union[int, float] = None
) -> None
Moves this resource to the target resource given by moveTarget.
move_targetRequired
The previously set user defined string set by .addMoveTarget() corresponding to the resource to move to.
indexOptional
- Type: str | typing.Union[int, float]
Optional The index corresponding to the key the resource is to appear in the foreach of a resource to move to.
move_to_id
def move_to_id(
id: str
) -> None
Moves this resource to the resource corresponding to “id”.
idRequired
Full id of resource to move to, e.g. “aws_s3_bucket.example”.
def reset_input() -> None
reset_triggers_replace
def reset_triggers_replace() -> None
Static Functions
| Name | Description |
|---|
is_construct | Checks if x is a construct. |
is_terraform_element | No description. |
is_terraform_resource | No description. |
generate_config_for_import | Generates CDKTN code for importing a Data resource upon running “cdktn plan < stack-name >”. |
is_construct
import cdktn
cdktn.DataResource.is_construct(
x: typing.Any
)
Checks if x is a construct.
Use this method instead of instanceof to properly detect Construct
instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the constructs library on
disk are seen as independent, completely different libraries. As a
consequence, the class Construct in each copy of the constructs library
is seen as a different class, and an instance of one class will not test as
instanceof the other class. npm install will not create installations
like this, but users may manually symlink construct libraries together or
use a monorepo tool: in those cases, multiple copies of the constructs
library can be accidentally installed, and instanceof will behave
unpredictably. It is safest to avoid using instanceof, and using
this type-testing method instead.
xRequired
Any object.
import cdktn
cdktn.DataResource.is_terraform_element(
x: typing.Any
)
xRequired
import cdktn
cdktn.DataResource.is_terraform_resource(
x: typing.Any
)
xRequired
generate_config_for_import
import cdktn
cdktn.DataResource.generate_config_for_import(
scope: Construct,
import_to_id: str,
import_from_id: str,
provider: TerraformProvider = None
)
Generates CDKTN code for importing a Data resource upon running “cdktn plan < stack-name >”.
scopeRequired
- Type: constructs.Construct
The scope in which to define this construct.
import_to_idRequired
The construct id used in the generated config for the Data to import.
import_from_idRequired
The id of the existing Data that should be imported.
Refer to the import section in the documentation of this resource for the id to use
providerOptional
? Optional instance of the provider where the Data to import is found.
Properties
| Name | Type | Description |
|---|
node | constructs.Node | The tree node. |
cdktf_stack | TerraformStack | No description. |
fqn | str | No description. |
friendly_unique_id | str | No description. |
terraform_meta_arguments | typing.Mapping[typing.Any] | No description. |
terraform_resource_type | str | No description. |
terraform_generator_metadata | TerraformProviderGeneratorMetadata | No description. |
connection | SSHProvisionerConnection | WinrmProvisionerConnection | No description. |
count | typing.Union[int, float] | TerraformCount | No description. |
depends_on | typing.List[str] | No description. |
for_each | ITerraformIterator | No description. |
lifecycle | TerraformResourceLifecycle | No description. |
provider | TerraformProvider | No description. |
provisioners | typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner] | No description. |
id | str | No description. |
output | AnyMap | No description. |
input_input | typing.Mapping[typing.Any] | No description. |
triggers_replace_input | typing.Mapping[typing.Any] | No description. |
input | typing.Mapping[typing.Any] | (Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply. |
triggers_replace | typing.Mapping[typing.Any] | (Optional) A value which is stored in the instance state, and will force replacement when the value changes. |
nodeRequired
The tree node.
cdktf_stackRequired
cdktf_stack: TerraformStack
fqnRequired
friendly_unique_idRequired
terraform_meta_arguments: typing.Mapping[typing.Any]
- Type: typing.Mapping[typing.Any]
terraform_resource_type: str
terraform_generator_metadata: TerraformProviderGeneratorMetadata
connectionOptional
connection: SSHProvisionerConnection | WinrmProvisionerConnection
countOptional
count: typing.Union[int, float] | TerraformCount
depends_onOptional
depends_on: typing.List[str]
for_eachOptional
for_each: ITerraformIterator
lifecycleOptional
lifecycle: TerraformResourceLifecycle
providerOptional
provider: TerraformProvider
provisionersOptional
provisioners: typing.List[FileProvisioner | LocalExecProvisioner | RemoteExecProvisioner]
idRequired
outputRequired
input_input: typing.Mapping[typing.Any]
- Type: typing.Mapping[typing.Any]
triggers_replace_input: typing.Mapping[typing.Any]
- Type: typing.Mapping[typing.Any]
input: typing.Mapping[typing.Any]
- Type: typing.Mapping[typing.Any]
(Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply.
https://developer.hashicorp.com/terraform/language/resources/terraform-data#input
triggers_replaceRequired
triggers_replace: typing.Mapping[typing.Any]
- Type: typing.Mapping[typing.Any]
(Optional) A value which is stored in the instance state, and will force replacement when the value changes.
https://developer.hashicorp.com/terraform/language/resources/terraform-data#triggers\_replace
Constants
| Name | Type | Description |
|---|
tfResourceType | str | No description. |
tfResourceTypeRequired