heat.rpc.client 模块

Heat 引擎 RPC API 的客户端。

class heat.rpc.client.EngineClient[源代码]

基类: object

Heat 引擎 rpc API 的客户端。

API 版本历史

1.0 - Initial version.
1.1 - Add support_status argument to list_resource_types()
1.4 - Add support for service list
1.9 - Add template_type option to generate_template()
1.10 - Add support for software config list
1.11 - Add support for template versions list
1.12 - Add with_detail option for stack resources list
1.13 - Add support for template functions list
1.14 - Add cancel_with_rollback option to stack_cancel_update
1.15 - Add preview_update_stack() call
1.16 - Adds version, type_name to list_resource_types()
1.17 - Add files to validate_template
1.18 - Add show_nested to validate_template
1.19 - Add show_output and list_outputs for returning stack outputs
1.20 - Add resolve_outputs to stack show
1.21 - Add deployment_id to create_software_deployment
1.22 - Add support for stack export
1.23 - Add environment_files to create/update/preview/validate
1.24 - Adds ignorable_errors to validate_template
1.25 - list_stack_resource filter update
1.26 - Add mark_unhealthy
1.27 - Add check_software_deployment
1.28 - Add get_environment call
1.29 - Add template_id to create_stack/update_stack
1.30 - Add possibility to resource_type_* return descriptions
1.31 - Add nested_depth to list_events, when nested_depth is specified
       add root_stack_id to response
1.32 - Add get_files call
1.33 - Remove tenant_safe from list_stacks, count_stacks
       and list_software_configs
1.34 - Add migrate_convergence_1 call
1.35 - Add with_condition to list_template_functions
1.36 - Add files_container to create/update/preview/validate
BASE_RPC_API_VERSION = '1.0'
abandon_stack(ctxt, stack_identity)[源代码]

删除给定的堆栈,但不会删除资源。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您要放弃的堆栈的名称。

authenticated_to_backend(ctxt)[源代码]

验证 RPC 上下文中的凭据。

验证 RPC 上下文中的凭据是否对当前的云后端有效。

参数:

ctxt – RPC 上下文。

call(ctxt, msg, version=None, timeout=None)[源代码]
cast(ctxt, msg, version=None)[源代码]
check_software_deployment(cnxt, deployment_id, timeout)[源代码]
count_stacks(ctxt, filters=None, show_deleted=False, show_nested=False, show_hidden=False, tags=None, tags_any=None, not_tags=None, not_tags_any=None)[源代码]

返回与给定筛选条件匹配的堆栈数量。

参数:
  • ctxt – RPC 上下文。

  • filters – 用于与堆栈匹配的 ATTR:VALUE 字典

  • show_deleted – 如果为 true,则计数将包括已删除的堆栈

  • show_nested – 如果为 true,则计数将包括嵌套堆栈

  • show_hidden – 如果为 true,则计数将包括隐藏堆栈

  • tags – 计数包含这些标签的堆栈。如果传递了多个标签,则将使用布尔 AND 表达式组合它们

  • tags_any – 计数包含这些标签的堆栈。如果传递了多个标签,则将使用布尔 OR 表达式组合它们

  • not_tags – 计数不包含这些标签的堆栈。如果传递了多个标签,则将使用布尔 AND 表达式组合它们

  • not_tags_any – 计数不包含这些标签的堆栈。如果传递了多个标签,则将使用布尔 OR 表达式组合它们

返回值:

表示匹配堆栈数量的整数

create_software_config(cnxt, group, name, config, inputs=None, outputs=None, options=None)[源代码]
create_software_deployment(cnxt, server_id, config_id=None, input_values=None, action='INIT', status='COMPLETE', status_reason='', stack_user_project_id=None, deployment_id=None)[源代码]
create_stack(ctxt, stack_name, template, params, files, args, environment_files=None, files_container=None)[源代码]

使用提供的模板创建新的堆栈。

请注意,在此阶段,如果使用模板 URL,则模板已从 heat-api 进程中获取。

参数:
  • ctxt – RPC 上下文。

  • stack_name – 您要创建的堆栈的名称。

  • template – 您要创建的堆栈的模板。

  • params – 堆栈输入参数/环境

  • files – 环境中引用的文件。

  • args – 从 API 传递的请求参数/参数

  • environment_files (listNone) – 可选的有序环境文件名列表,包含在 files 字典中

  • files_container – swift 容器的名称

delete_snapshot(cnxt, stack_identity, snapshot_id)[源代码]
delete_software_config(cnxt, config_id)[源代码]
delete_software_deployment(cnxt, deployment_id)[源代码]
delete_stack(ctxt, stack_identity, cast=False)[源代码]

删除给定的堆栈。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您要删除的堆栈的名称。

  • cast – 使用 cast 而不是 call 发送消息 (默认: False)

您可能永远不想使用 cast()。 如果这样做,您将永远无法得知调用可能引发的任何异常。

describe_stack_resource(ctxt, stack_identity, resource_name, with_attr=False)[源代码]

获取有关特定资源的详细资源信息。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 堆栈的名称。

  • resource_name – 资源。

describe_stack_resources(ctxt, stack_identity, resource_name)[源代码]

获取有关一个或多个资源的详细资源信息。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 堆栈的名称。

  • resource_name – 资源。

export_stack(ctxt, stack_identity)[源代码]

以 JSON 格式导出堆栈数据。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您要导出的堆栈的名称。

find_physical_resource(ctxt, physical_resource_id)[源代码]

返回资源的标识符。

参数:
  • ctxt – RPC 上下文。

  • physcial_resource_id – 要查找的物理资源 ID。

generate_template(ctxt, type_name, template_type='cfn')[源代码]

根据指定的类型生成模板。

参数:
  • ctxt – RPC 上下文。

  • type_name – 要生成模板的资源类型名称。

  • template_type – 要生成的模板类型,cfn 或 hot。

get_environment(context, stack_identity)[源代码]

返回现有堆栈的环境。

参数:
  • context – RPC 上下文

  • stack_identity – 标识堆栈

返回类型:

dict

get_files(context, stack_identity)[源代码]

返回现有堆栈的文件。

参数:
  • context – RPC 上下文

  • stack_identity – 标识堆栈

返回类型:

dict

get_revision(ctxt)[源代码]
get_template(ctxt, stack_identity)[source]

获取模板。

参数:
  • ctxt – RPC 上下文。

  • stack_name – 您想要查看的堆栈的名称。

identify_stack(ctxt, stack_name)[source]

返回单个活动堆栈的完整堆栈标识符。

参数:
  • ctxt – RPC 上下文。

  • stack_name – 您想要查看的堆栈的名称,或者 None 以查看所有堆栈

ignore_error_by_name(name)[source]

返回一个上下文管理器,用于过滤具有给定名称的异常。

参数:

name – 要与本地异常名称进行比较的名称。

list_events(ctxt, stack_identity, filters=None, limit=None, marker=None, sort_keys=None, sort_dir=None, nested_depth=None)[source]

列出与给定堆栈关联的所有事件。

它支持分页(limitmarker)、排序(sort_keyssort_dir)和过滤(filters)结果。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您想要获取事件的堆栈的名称

  • filters – 一个包含属性:值的字典,用于过滤列表

  • limit – 要列出的事件数量(整数或字符串)

  • marker – 上一页中最后一个事件的 ID

  • sort_keys – 用于对列表进行排序的字段数组

  • sort_dir – 排序方向(‘asc’ 或 ‘desc’)。

  • nested_depth – 列出事件的嵌套堆栈的层级。

list_outputs(cntx, stack_identity)[source]
list_resource_types(ctxt, support_status=None, type_name=None, heat_version=None, with_description=False)[source]

获取有效资源类型的列表。

参数:
  • ctxt – RPC 上下文。

  • support_status – 资源类型的支持状态

  • type_name – 资源类型的名称(允许正则表达式)

  • heat_version – Heat 版本

  • with_description – 是否返回资源类型描述

list_services(cnxt)[source]
list_software_configs(cnxt, limit=None, marker=None)[source]
list_software_deployments(cnxt, server_id=None)[source]
list_stack_resources(ctxt, stack_identity, nested_depth=0, with_detail=False, filters=None)[source]

列出属于堆栈的资源。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 堆栈的名称。

  • nested_depth – 列出嵌套堆栈资源的层级。

  • with_detail – 在列表中显示资源的详细信息。

  • filters – 一个包含属性:值的字典,用于搜索资源

list_stacks(ctxt, limit=None, marker=None, sort_keys=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)[source]

返回所有堆栈的属性。

它支持分页(limitmarker)、排序(sort_keyssort_dir)和过滤(filters)结果。

参数:
  • ctxt – RPC 上下文。

  • limit – 要列出的堆栈数量(整数或字符串)

  • marker – 上一页中最后一个项目的 ID

  • sort_keys – 用于对列表进行排序的字段数组

  • sort_dir – 排序方向(‘asc’ 或 ‘desc’)

  • filters – 一个包含属性:值的字典,用于过滤列表

  • show_deleted – 如果为 true,则显示软删除的堆栈

  • show_nested – 如果为 true,则显示嵌套堆栈

  • show_hidden – 如果为 true,则显示隐藏堆栈

  • tags – 显示包含这些标签的堆栈。如果传递了多个标签,它们将使用布尔 AND 表达式组合

  • tags_any – 显示包含这些标签的堆栈。如果传递了多个标签,它们将使用布尔 OR 表达式组合

  • not_tags – 显示不包含这些标签的堆栈。如果传递了多个标签,它们将使用布尔 AND 表达式组合

  • not_tags_any – 显示不包含这些标签的堆栈。如果传递了多个标签,它们将使用布尔 OR 表达式组合

返回值:

一个堆栈列表

list_template_functions(ctxt, template_version, with_condition=False)[source]

获取给定模板类型中可用函数的列表。

参数:
  • ctxt – RPC 上下文

  • template_version – 您想要获取函数列表的模板格式/版本元组。

  • with_condition – 返回包含条件函数。

list_template_versions(ctxt)[source]

获取可用模板版本的列表。

参数:

ctxt – RPC 上下文。

local_error_name(error)[source]

返回错误名称,并删除任何 _Remote 后缀。

参数:

error – 要从中派生名称的远程引发的错误。

static make_msg(method, **kwargs)[source]
metadata_software_deployments(cnxt, server_id)[source]
migrate_convergence_1(ctxt, stack_id)[source]

将堆栈迁移到收敛引擎

参数:
  • ctxt – RPC 上下文

  • stack_name – 您想要迁移的堆栈的名称

preview_stack(ctxt, stack_name, template, params, files, args, environment_files=None, files_container=None)[source]

模拟使用提供的模板创建一个新的堆栈。

请注意,在此阶段,如果使用模板 URL,则模板已从 heat-api 进程中获取。

参数:
  • ctxt – RPC 上下文。

  • stack_name – 您要创建的堆栈的名称。

  • template – 您要创建的堆栈的模板。

  • params – 堆栈输入参数/环境

  • files – 环境中引用的文件。

  • args – 从 API 传递的请求参数/参数

  • environment_files (listNone) – 可选的有序环境文件名列表,包含在 files 字典中

  • files_container – swift 容器的名称

preview_update_stack(ctxt, stack_identity, template, params, files, args, environment_files=None, files_container=None)[source]

返回在更新中将被更改的资源。

基于提供的模板和参数。

需要 RPC 版本 1.15 或更高版本。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您希望更新的堆栈的名称。

  • template – 堆栈的新模板。

  • params – 堆栈输入参数/环境

  • files – 环境中引用的文件。

  • args – 从 API 传递的请求参数/参数

  • environment_files (listNone) – 可选的有序环境文件名列表,包含在 files 字典中

  • files_container – swift 容器的名称

resource_mark_unhealthy(ctxt, stack_identity, resource_name, mark_unhealthy, resource_status_reason=None)[source]

将资源标记为不健康或健康。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 堆栈的名称。

  • resource_name – 资源。

  • mark_unhealthy – 指示资源是否不健康。

  • resource_status_reason – 健康状态更改的原因。

resource_schema(ctxt, type_name, with_description=False)[source]

获取资源类型的模式。

参数:
  • ctxt – RPC 上下文。

  • with_description – 返回带有描述的资源还是不返回。

resource_signal(ctxt, stack_identity, resource_name, details, sync_call=False)[source]

在资源上生成警报。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 堆栈的名称。

  • resource_name – 资源。

  • details – 信号的详细信息。

show_output(cntx, stack_identity, output_key)[source]
show_snapshot(cnxt, stack_identity, snapshot_id)[source]
show_software_config(cnxt, config_id)[source]
show_software_deployment(cnxt, deployment_id)[source]
show_stack(ctxt, stack_identity, resolve_outputs=True)[source]

返回一个或所有堆栈的详细信息。

参数:
  • ctxt – RPC 上下文。

  • stack_identity – 您想要显示的堆栈的名称,或者 None 以显示所有堆栈

  • resolve_outputs – 如果为 True,则将解析堆栈输出

signal_software_deployment(cnxt, deployment_id, details, updated_at=None)[source]
stack_cancel_update(ctxt, stack_identity, cancel_with_rollback=True)[source]
stack_check(ctxt, stack_identity)[source]
stack_list_snapshots(cnxt, stack_identity)[source]
stack_restore(cnxt, stack_identity, snapshot_id)[source]
stack_resume(ctxt, stack_identity)[source]
stack_snapshot(ctxt, stack_identity, name)[source]
stack_suspend(ctxt, stack_identity)[source]
update_software_deployment(cnxt, deployment_id, config_id=None, input_values=None, output_values=None, action=None, status=None, status_reason=None, updated_at=None)[source]
update_stack(ctxt, stack_identity, template, params, files, args, environment_files=None, files_container=None)[source]

基于提供的模板和参数更新现有的堆栈。

请注意,在此阶段,如果使用模板 URL,则模板已从 heat-api 进程中获取。

参数:
  • ctxt – RPC 上下文。

  • stack_name – 您要创建的堆栈的名称。

  • template – 您要创建的堆栈的模板。

  • params – 堆栈输入参数/环境

  • files – 环境中引用的文件。

  • args – 从 API 传递的请求参数/参数

  • environment_files (listNone) – 可选的有序环境文件名列表,包含在 files 字典中

  • files_container – swift 容器的名称

validate_template(ctxt, template, params=None, files=None, environment_files=None, files_container=None, show_nested=False, ignorable_errors=None)[source]

使用堆栈解析器检查模板的有效性。

参数:
  • ctxt – RPC 上下文。

  • template – 您要创建的堆栈的模板。

  • params – 堆栈输入参数/环境

  • files – 环境/模板中引用的文件。

  • environment_files – 包含在 files 字典中的环境文件名的有序列表

  • files_container – swift 容器的名称

  • show_nested – 如果为 True,则将验证嵌套模板

  • ignorable_errors – 作为验证的一部分要忽略的 error_code 列表