heat.objects.stack module

Stack 对象。

class heat.objects.stack.Stack(context=None, **kwargs)[source]

基类: HeatObject, VersionedObjectDictCompat, ComparableVersionedObject

classmethod count_all(context, **kwargs)[source]
classmethod count_total_resources(context, stack_id)[source]
classmethod create(context, values)[source]
classmethod delete(context, stack_id)[source]
classmethod encrypt_hidden_parameters(tmpl)[source]
fields = {'action': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'backup': Boolean(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'convergence': Boolean(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'current_deps': Json(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'current_traversal': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'deleted_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'disable_rollback': Boolean(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'nested_depth': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'owner_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'parent_resource_name': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'prev_raw_template': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'prev_raw_template_id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'raw_template_id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'raw_template_obj': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'stack_user_project_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'status': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'status_reason': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'tenant': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'timeout': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'user_creds_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'username': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}
classmethod get_all(context, limit=None, sort_keys=None, marker=None, sort_dir=None, filters=None, show_deleted=False, show_nested=False, show_hidden=False, tags=None, tags_any=None, not_tags=None, not_tags_any=None, eager_load=False)[source]
classmethod get_all_by_owner_id(context, owner_id)[source]
classmethod get_all_by_root_owner_id(context, root_owner_id)[source]
classmethod get_by_id(context, stack_id, **kwargs)[source]
classmethod get_by_name(context, stack_name)[source]
classmethod get_by_name_and_owner_id(context, stack_name, owner_id)[source]
classmethod get_root_id(context, stack_id)[source]
classmethod get_status(context, stack_id)[source]

返回给定堆栈的操作和状态。

identifier()[source]

返回此堆栈的标识符。

classmethod persist_state_and_release_lock(context, stack_id, engine_id, values)[source]
property raw_template
refresh()[source]
classmethod select_and_update(context, stack_id, values, exp_trvsl=None)[source]

通过遍历 ID 选择更新堆栈。

使用 UPDATE … WHERE (比较和交换) 来捕获任何并发更新问题。

如果使用给定的遍历找到堆栈,则会更新它。

如果更新时发生竞争,只有一次会成功,其他会得到返回值 False。

property tags
update_and_save(values)[source]
classmethod update_by_id(context, stack_id, values)[source]

更新并返回(布尔值)如果已更新。

注意:底层的 stack_update 根据 current_traversal 和 stack_id 进行过滤。