Skip to content

RosInstance

This class is a base encapsulation around the ROS resource type ALIYUN::Hologram::Instance, which is used to create a Hologres instance.

Initializers

import ros_cdk_hologram
ros_cdk_hologram.RosInstance(
  scope: Construct,
  id: str,
  endpoints: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, EndpointsProperty]]],
  instance_name: typing.Union[str, IResolvable],
  instance_type: typing.Union[str, IResolvable],
  payment_type: typing.Union[str, IResolvable],
  zone_id: typing.Union[str, IResolvable],
  auto_pay: typing.Union[bool, IResolvable] = None,
  cold_storage_size: typing.Union[typing.Union[int, float], IResolvable] = None,
  cpu: typing.Union[typing.Union[int, float], IResolvable] = None,
  duration: typing.Union[typing.Union[int, float], IResolvable] = None,
  gateway_count: typing.Union[typing.Union[int, float], IResolvable] = None,
  initial_databases: typing.Union[str, IResolvable] = None,
  leader_instance_id: typing.Union[str, IResolvable] = None,
  pricing_cycle: typing.Union[str, IResolvable] = None,
  product_code: typing.Union[str, IResolvable] = None,
  resource_group_id: typing.Union[str, IResolvable] = None,
  scale_type: typing.Union[str, IResolvable] = None,
  storage_size: typing.Union[typing.Union[int, float], IResolvable] = None,
  tags: typing.List[TagsProperty] = None,
  enable_resource_property_constraint: bool
)
Name Type Description
scope ros_cdk_core.Construct - scope in which this resource is defined.
id str - scoped id of the resource.
endpoints typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, EndpointsProperty]]] No description.
instance_name typing.Union[str, ros_cdk_core.IResolvable] No description.
instance_type typing.Union[str, ros_cdk_core.IResolvable] No description.
payment_type typing.Union[str, ros_cdk_core.IResolvable] No description.
zone_id typing.Union[str, ros_cdk_core.IResolvable] No description.
auto_pay typing.Union[bool, ros_cdk_core.IResolvable] No description.
cold_storage_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
cpu typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
duration typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
gateway_count typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
initial_databases typing.Union[str, ros_cdk_core.IResolvable] No description.
leader_instance_id typing.Union[str, ros_cdk_core.IResolvable] No description.
pricing_cycle typing.Union[str, ros_cdk_core.IResolvable] No description.
product_code typing.Union[str, ros_cdk_core.IResolvable] No description.
resource_group_id typing.Union[str, ros_cdk_core.IResolvable] No description.
scale_type typing.Union[str, ros_cdk_core.IResolvable] No description.
storage_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
tags typing.List[TagsProperty] No description.
enable_resource_property_constraint bool No description.

scopeRequired

  • Type: ros_cdk_core.Construct

scope in which this resource is defined.


idRequired

  • Type: str

scoped id of the resource.


endpointsRequired

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, EndpointsProperty]]]

instance_nameRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

instance_typeRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

payment_typeRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

zone_idRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

auto_payOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

cold_storage_sizeOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

cpuOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

durationOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

gateway_countOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

initial_databasesOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

leader_instance_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

pricing_cycleOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

product_codeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

resource_group_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

scale_typeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

storage_sizeOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

tagsOptional


enable_resource_property_constraintRequired

  • Type: bool

Methods

Name Description
to_string Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
override_logical_id Overrides the auto-generated logical ID with a specific ID.
add_condition No description.
add_count No description.
add_deletion_override Syntactic sugar for addOverride(path, undefined).
add_depends_on Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
add_desc No description.
add_meta_data No description.
add_override Adds an override to the synthesized ROS resource.
add_property_deletion_override Adds an override that deletes the value of a property from the resource definition.
add_property_override Adds an override to a resource property.
add_ros_dependency No description.
apply_removal_policy Sets the deletion policy of the resource based on the removal policy specified.
get_att Returns a token for an runtime attribute of this resource.

to_string

def to_string() -> str

Returns a string representation of this construct.

synthesize

def synthesize(
  session: ISynthesisSession
) -> None

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: ros_cdk_core.ISynthesisSession

The synthesis session.


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

  • Type: str

The new logical ID to use for this stack element.


add_condition

def add_condition(
  con: RosCondition
) -> None

conRequired

  • Type: ros_cdk_core.RosCondition

add_count

def add_count(
  count: typing.Union[typing.Union[int, float], IResolvable]
) -> None

countRequired

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

add_deletion_override

def add_deletion_override(
  path: str
) -> None

Syntactic sugar for addOverride(path, undefined).

pathRequired

  • Type: str

The path of the value to delete.


add_depends_on

def add_depends_on(
  target: RosResource
) -> None

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

targetRequired

  • Type: ros_cdk_core.RosResource

add_desc

def add_desc(
  desc: str
) -> None

descRequired

  • Type: str

add_meta_data

def add_meta_data(
  key: str,
  value: typing.Any
) -> None

keyRequired

  • Type: str

valueRequired

  • Type: typing.Any

add_override

def add_override(
  path: str,
  value: typing.Any
) -> None

Adds an override to the synthesized ROS resource.

To add a property override, either use addPropertyOverride or prefix path with "Properties." (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

For example,

addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')

would add the overrides

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

pathRequired

  • Type: str

The path of the property, you can use dot notation to override values in complex types.

Any intermdediate keys will be created as needed.


valueRequired

  • Type: typing.Any

The value.

Could be primitive or complex.


add_property_deletion_override

def add_property_deletion_override(
  property_path: str
) -> None

Adds an override that deletes the value of a property from the resource definition.

property_pathRequired

  • Type: str

The path to the property.


add_property_override

def add_property_override(
  property_path: str,
  value: typing.Any
) -> None

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

property_pathRequired

  • Type: str

The path of the property.


valueRequired

  • Type: typing.Any

The value.


add_ros_dependency

def add_ros_dependency(
  target: str
) -> None

targetRequired

  • Type: str

apply_removal_policy

def apply_removal_policy(
  policy: RemovalPolicy = None,
  apply_to_update_replace_policy: bool = None,
  default_policy: RemovalPolicy = None
) -> None

Sets the deletion policy of the resource based on the removal policy specified.

policyOptional

  • Type: ros_cdk_core.RemovalPolicy

apply_to_update_replace_policyOptional

  • Type: bool

default_policyOptional

  • Type: ros_cdk_core.RemovalPolicy

get_att

def get_att(
  attribute_name: str
) -> Reference

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

attribute_nameRequired

  • Type: str

The name of the attribute.


Static Functions

Name Description
is_construct Return whether the given object is a Construct.
is_ros_element Returns true if a construct is a stack element (i.e. part of the synthesized template).
is_ros_resource Check whether the given construct is a RosResource.

is_construct

import ros_cdk_hologram
ros_cdk_hologram.RosInstance.is_construct(
  x: typing.Any
)

Return whether the given object is a Construct.

xRequired

  • Type: typing.Any

is_ros_element

import ros_cdk_hologram
ros_cdk_hologram.RosInstance.is_ros_element(
  x: typing.Any
)

Returns true if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

xRequired

  • Type: typing.Any

is_ros_resource

import ros_cdk_hologram
ros_cdk_hologram.RosInstance.is_ros_resource(
  construct: IConstruct
)

Check whether the given construct is a RosResource.

constructRequired

  • Type: ros_cdk_core.IConstruct

Properties

Name Type Description
node ros_cdk_core.ConstructNode The construct tree node associated with this construct.
creation_stack typing.List[str] No description.
logical_id str The logical ID for this stack element.
stack ros_cdk_core.Stack The stack in which this element is defined.
ref str Return a string that will be resolved to a RosTemplate { Ref } for this element.
ros_options ros_cdk_core.IRosResourceOptions Options for this resource, such as condition, update policy etc.
ros_resource_type str ROS resource type.
attr_auto_renewal ros_cdk_core.IResolvable No description.
attr_cold_storage_size ros_cdk_core.IResolvable No description.
attr_commodity_code ros_cdk_core.IResolvable No description.
attr_compute_node_count ros_cdk_core.IResolvable No description.
attr_cpu ros_cdk_core.IResolvable No description.
attr_create_time ros_cdk_core.IResolvable No description.
attr_enable_hive_access ros_cdk_core.IResolvable No description.
attr_endpoints ros_cdk_core.IResolvable No description.
attr_expiration_time ros_cdk_core.IResolvable No description.
attr_gateway_count ros_cdk_core.IResolvable No description.
attr_gateway_cpu ros_cdk_core.IResolvable No description.
attr_gateway_memory ros_cdk_core.IResolvable No description.
attr_instance_id ros_cdk_core.IResolvable No description.
attr_instance_name ros_cdk_core.IResolvable No description.
attr_instance_owner ros_cdk_core.IResolvable No description.
attr_instance_type ros_cdk_core.IResolvable No description.
attr_memory ros_cdk_core.IResolvable No description.
attr_payment_type ros_cdk_core.IResolvable No description.
attr_resource_group_id ros_cdk_core.IResolvable No description.
attr_storage_size ros_cdk_core.IResolvable No description.
attr_suspend_reason ros_cdk_core.IResolvable No description.
attr_tags ros_cdk_core.IResolvable No description.
attr_version ros_cdk_core.IResolvable No description.
attr_zone_id ros_cdk_core.IResolvable No description.
enable_resource_property_constraint bool No description.
endpoints typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, EndpointsProperty]]] No description.
instance_name typing.Union[str, ros_cdk_core.IResolvable] No description.
instance_type typing.Union[str, ros_cdk_core.IResolvable] No description.
payment_type typing.Union[str, ros_cdk_core.IResolvable] No description.
zone_id typing.Union[str, ros_cdk_core.IResolvable] No description.
auto_pay typing.Union[bool, ros_cdk_core.IResolvable] No description.
cold_storage_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
cpu typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
duration typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
gateway_count typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
initial_databases typing.Union[str, ros_cdk_core.IResolvable] No description.
leader_instance_id typing.Union[str, ros_cdk_core.IResolvable] No description.
pricing_cycle typing.Union[str, ros_cdk_core.IResolvable] No description.
product_code typing.Union[str, ros_cdk_core.IResolvable] No description.
resource_group_id typing.Union[str, ros_cdk_core.IResolvable] No description.
scale_type typing.Union[str, ros_cdk_core.IResolvable] No description.
storage_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] No description.
tags typing.List[TagsProperty] No description.

nodeRequired

node: ConstructNode
  • Type: ros_cdk_core.ConstructNode

The construct tree node associated with this construct.


creation_stackRequired

creation_stack: typing.List[str]
  • Type: typing.List[str]

logical_idRequired

logical_id: str
  • Type: str

The logical ID for this stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).


stackRequired

stack: Stack
  • Type: ros_cdk_core.Stack

The stack in which this element is defined.

RosElements must be defined within a stack scope (directly or indirectly).


refRequired

ref: str
  • Type: str

Return a string that will be resolved to a RosTemplate { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).


ros_optionsRequired

ros_options: IRosResourceOptions
  • Type: ros_cdk_core.IRosResourceOptions

Options for this resource, such as condition, update policy etc.


ros_resource_typeRequired

ros_resource_type: str
  • Type: str

ROS resource type.


attr_auto_renewalRequired

attr_auto_renewal: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_cold_storage_sizeRequired

attr_cold_storage_size: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_commodity_codeRequired

attr_commodity_code: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_compute_node_countRequired

attr_compute_node_count: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_cpuRequired

attr_cpu: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_create_timeRequired

attr_create_time: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_enable_hive_accessRequired

attr_enable_hive_access: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_endpointsRequired

attr_endpoints: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_expiration_timeRequired

attr_expiration_time: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_gateway_countRequired

attr_gateway_count: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_gateway_cpuRequired

attr_gateway_cpu: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_gateway_memoryRequired

attr_gateway_memory: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_instance_idRequired

attr_instance_id: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_instance_nameRequired

attr_instance_name: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_instance_ownerRequired

attr_instance_owner: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_instance_typeRequired

attr_instance_type: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_memoryRequired

attr_memory: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_payment_typeRequired

attr_payment_type: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_resource_group_idRequired

attr_resource_group_id: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_storage_sizeRequired

attr_storage_size: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_suspend_reasonRequired

attr_suspend_reason: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_tagsRequired

attr_tags: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_versionRequired

attr_version: IResolvable
  • Type: ros_cdk_core.IResolvable

attr_zone_idRequired

attr_zone_id: IResolvable
  • Type: ros_cdk_core.IResolvable

enable_resource_property_constraintRequired

enable_resource_property_constraint: bool
  • Type: bool

endpointsRequired

endpoints: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, EndpointsProperty]]]
  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, EndpointsProperty]]]

instance_nameRequired

instance_name: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

instance_typeRequired

instance_type: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

payment_typeRequired

payment_type: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

zone_idRequired

zone_id: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

auto_payOptional

auto_pay: typing.Union[bool, IResolvable]
  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

cold_storage_sizeOptional

cold_storage_size: typing.Union[typing.Union[int, float], IResolvable]
  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

cpuOptional

cpu: typing.Union[typing.Union[int, float], IResolvable]
  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

durationOptional

duration: typing.Union[typing.Union[int, float], IResolvable]
  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

gateway_countOptional

gateway_count: typing.Union[typing.Union[int, float], IResolvable]
  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

initial_databasesOptional

initial_databases: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

leader_instance_idOptional

leader_instance_id: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

pricing_cycleOptional

pricing_cycle: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

product_codeOptional

product_code: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

resource_group_idOptional

resource_group_id: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

scale_typeOptional

scale_type: typing.Union[str, IResolvable]
  • Type: typing.Union[str, ros_cdk_core.IResolvable]

storage_sizeOptional

storage_size: typing.Union[typing.Union[int, float], IResolvable]
  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

tagsOptional

tags: typing.List[TagsProperty]

Constants

Name Type Description
ROS_RESOURCE_TYPE_NAME str The resource type name for this resource class.

ROS_RESOURCE_TYPE_NAMERequired

ROS_RESOURCE_TYPE_NAME: str
  • Type: str

The resource type name for this resource class.