The heat.engine.rsrc_defn Module

class heat.engine.rsrc_defn.ResourceDefinition(name, resource_type, properties=None, metadata=None, depends=None, deletion_policy=None, update_policy=None, description=None, external_id=None, condition=None)[source]

Bases: object

A definition of a resource, independent of any template format.

DELETE = 'Delete'
DELETION_POLICIES = ('Delete', 'Retain', 'Snapshot')
class Diff(old_defn, new_defn)[source]

Bases: object

A diff between two versions of the same resource definition.

metadata_changed()[source]

Return True if the resource metadata has changed.

properties_changed()[source]

Return True if the resource properties have changed.

update_policy_changed()[source]

Return True if the resource update policy has changed.

ResourceDefinition.RETAIN = 'Retain'
ResourceDefinition.SNAPSHOT = 'Snapshot'
ResourceDefinition.condition()[source]

Return the name of the conditional inclusion rule, if any.

Returns None if the resource is included unconditionally.

ResourceDefinition.deletion_policy()[source]

Return the deletion policy for the resource.

The policy will be one of those listed in DELETION_POLICIES.

ResourceDefinition.dep_attrs(resource_name)[source]

Iterate over attributes of a given resource that this references.

Return an iterator over dependent attributes for specified resource_name in resources’ properties and metadata fields.

ResourceDefinition.dependencies(stack)[source]

Return the Resource objects in given stack on which this depends.

ResourceDefinition.external_id()[source]

Return the external resource id.

ResourceDefinition.freeze(**overrides)[source]

Return a frozen resource definition, with all functions resolved.

This return a new resource definition with fixed data (containing no intrinsic functions). Named arguments passed to this method override the values passed as arguments to the constructor.

ResourceDefinition.metadata()[source]

Return the resource metadata.

ResourceDefinition.properties(schema, context=None)[source]

Return a Properties object representing the resource properties.

The Properties object is constructed from the given schema, and may require a context to validate constraints.

ResourceDefinition.render_hot()[source]

Return a HOT snippet for the resource definition.

ResourceDefinition.reparse(stack, template)[source]

Reinterpret the resource definition in the context of a new stack.

This returns a new resource definition, with all of the functions parsed in the context of the specified stack and template.

ResourceDefinition.update_policy(schema, context=None)[source]

Return a Properties object representing the resource update policy.

The Properties object is constructed from the given schema, and may require a context to validate constraints.