sushy 包

子包

子模块

sushy.auth 模块

class sushy.auth.AuthBase(username=None, password=None)

基类: object

authenticate()

执行身份验证。

引发:

RuntimeError

abstract can_refresh_session()

方法用于断言是否可以进行基于会话的刷新。

close()

关闭 Redfish 身份验证对象

撤销应撤销的内容以取消经过身份验证的会话。

set_context(root_resource, connector)

设置身份验证对象的上下文。

参数:
  • root_resource – 根 sushy 对象

  • connector – 用于 http 连接的连接器

class sushy.auth.BasicAuth(username=None, password=None)

基类:AuthBase

基本身份验证类。

这是一个用于封装基本身份验证会话的类。

参数:
  • username – 具有 admin/server-profile 访问权限的用户帐户。

  • password – 用户帐户密码。

can_refresh_session()

方法用于断言是否可以进行基于会话的刷新。

class sushy.auth.SessionAuth(username=None, password=None)

基类:AuthBase

会话身份验证类。

这是一个用于封装 Redfish 会话的类。

can_refresh_session()

方法用于断言是否可以进行基于会话的刷新。

close()

关闭 Redfish 会话。

尝试从远程 Redfish 控制器删除已建立的 RedfishSession。

get_session_key()

返回会话密钥。

返回值:

会话密钥。

get_session_resource_id()

返回会话资源 ID。

返回值:

会话资源 ID。

refresh_session()

方法用于刷新到 Redfish 控制器的会话。

如果之前已建立会话,并且之前的会话已超时或过期,则调用此方法以创建新的会话。

引发:

MissingXAuthToken

引发:

ConnectionError

引发:

AccessError

引发:

HTTPError

reset_session_attrs()

重置活动会话相关属性。

class sushy.auth.SessionOrBasicAuth(username=None, password=None)

基类:SessionAuth

refresh_session()

方法用于刷新到 Redfish 控制器的会话。

如果之前已建立 RedfishSession,则调用此方法以创建新的 RedfishSession,并且之前的会话已超时或过期。 如果我们之前没有建立会话,则只需返回我们的 BasicAuthentication requests.Session。

sushy.connector 模块

class sushy.connector.Connector(url, username=None, password=None, verify=True, response_callback=None, server_side_retries=0, server_side_retries_delay=0, default_request_timeout=60)

基类: object

check_retry_on_exception(exception_msg)

检查是否需要重试异常。

close()

关闭此连接器和关联的 HTTP 会话。

delete(path='', data=None, headers=None, blocking=False, timeout=None, **extra_session_req_kwargs)

HTTP DELETE 方法。

参数:
  • path – 可选的子 URI 路径,指向资源。

  • data – 可选的 JSON 数据。

  • headers – 可选的头部字典。

  • blocking – 是否阻塞异步操作。

  • timeout – 阻塞异步调用允许的最大秒数。默认为 Connector 上的 default_request_timeout。

  • extra_session_req_kwargs – 可选的关键字参数,用于传递 requests 库的参数,这些参数将传递给 requests 会话对象。

返回值:

来自 requests 库的响应对象。

引发:

ConnectionError

引发:

HTTPError

get(path='', data=None, headers=None, blocking=False, timeout=None, **extra_session_req_kwargs)

HTTP GET 方法。

参数:
  • path – 可选的子 URI 路径,指向资源。

  • data – 可选的 JSON 数据。

  • headers – 可选的头部字典。

  • blocking – 是否阻塞异步操作。

  • timeout – 阻塞异步调用允许的最大秒数。默认为 Connector 上的 default_request_timeout。

  • extra_session_req_kwargs – 可选的关键字参数,用于传递 requests 库的参数,这些参数将传递给 requests 会话对象。

返回值:

来自 requests 库的响应对象。

引发:

ConnectionError

引发:

HTTPError

patch(path='', data=None, headers=None, etag=None, blocking=False, timeout=None, **extra_session_req_kwargs)

HTTP PATCH 方法。

参数:
  • path – 可选的子 URI 路径,指向资源。

  • data – 可选的 JSON 数据。

  • headers – 可选的头部字典。

  • etag – 可选的 ETag 字符串。

  • blocking – 是否阻塞异步操作。

  • timeout – 阻塞异步调用允许的最大秒数。默认为 Connector 上的 default_request_timeout。

  • extra_session_req_kwargs – 可选的关键字参数,用于传递 requests 库的参数,这些参数将传递给 requests 会话对象。

返回值:

来自 requests 库的响应对象。

引发:

ConnectionError

引发:

HTTPError

post(path='', data=None, headers=None, blocking=False, timeout=None, **extra_session_req_kwargs)

HTTP POST 方法。

参数:
  • path – 可选的子 URI 路径,指向资源。

  • data – 可选的 JSON 数据。

  • headers – 可选的头部字典。

  • blocking – 是否阻塞异步操作。

  • timeout – 阻塞异步调用允许的最大秒数。默认为 Connector 上的 default_request_timeout。

  • extra_session_req_kwargs – 可选的关键字参数,用于传递 requests 库的参数,这些参数将传递给 requests 会话对象。

返回值:

来自 requests 库的响应对象。

引发:

ConnectionError

引发:

HTTPError

put(path='', data=None, headers=None, blocking=False, timeout=None, **extra_session_req_kwargs)

HTTP PUT 方法。

参数:
  • path – 可选的子 URI 路径,指向资源。

  • data – 可选的 JSON 数据。

  • headers – 可选的头部字典。

  • blocking – 是否阻塞异步操作。

  • timeout – 阻塞异步调用允许的最大秒数。默认为 Connector 上的 default_request_timeout。

  • extra_session_req_kwargs – 可选的关键字参数,用于传递 requests 库的参数,这些参数将传递给 requests 会话对象。

返回值:

来自 requests 库的响应对象。

引发:

ConnectionError

引发:

HTTPError

set_auth(auth)

设置连接器的身份验证机制。

set_http_basic_auth(username, password)

设置 HTTP 基本身份验证信息。

set_http_session_auth(session_auth_token)

设置会话身份验证信息。

sushy.exceptions 模块

异常 sushy.exceptions.AccessError(method, url, response)

继承自 HTTPError

异常 sushy.exceptions.ArchiveParsingError(message=None, **kwargs)

继承自 SushyError

message = '解析归档文件失败 "%(path)s": %(error)s'
异常 sushy.exceptions.BadRequestError(method, url, response)

继承自 HTTPError

异常 sushy.exceptions.ConnectionError(message=None, **kwargs)

继承自 SushyError

message = '无法连接到 %(url)s。错误: %(error)s'
异常 sushy.exceptions.ExtensionError(message=None, **kwargs)

继承自 SushyError

message = 'Sushy 扩展错误: %(error)s'
异常 sushy.exceptions.HTTPError(method, url, response)

继承自 SushyError

HTTP 错误的基本异常

body = None

错误 JSON 主体(如果存在)。

code = 'Base.1.0.GeneralError'

Redfish 规范中定义的错误代码(如果存在)。

detail = None

Redfish 规范中定义的错误消息(如果存在)。

extended_info = None

响应中提供的扩展信息。

message = 'HTTP %(method)s %(url)s 返回代码 %(code)s。%(error)s 扩展信息: %(ext_info)s'
属性 related_properties

与错误相关的属性列表。

status_code = None

HTTP 状态码。

异常 sushy.exceptions.InvalidParameterValueError(message=None, **kwargs)

继承自 SushyError

message = '参数 "%(parameter)s" 的值 "%(value)s" 无效。有效值为: %(valid_values)s'
异常 sushy.exceptions.MalformedAttributeError(message=None, **kwargs)

继承自 SushyError

message = '属性 %(attribute)s 在资源 %(resource)s 中格式错误: %(error)s'
异常 sushy.exceptions.MissingActionError(message=None, **kwargs)

继承自 SushyError

message = '操作 %(action)s 缺失于资源 %(resource)s'
异常 sushy.exceptions.MissingAttributeError(message=None, **kwargs)

继承自 SushyError

message = '属性 %(attribute)s 缺失于资源 %(resource)s'
异常 sushy.exceptions.MissingHeaderError(message=None, **kwargs)

继承自 SushyError

message = '响应 %(target_uri)s 未包含 一个 %(header)s 头部'
异常 sushy.exceptions.MissingXAuthToken(method, url, response)

继承自 HTTPError

message = '未从远程主机返回 X-Auth-Token ,尝试建立会话时。错误: %(error)s'
异常 sushy.exceptions.NotAcceptableError(method, url, response)

继承自 HTTPError

异常 sushy.exceptions.OEMExtensionNotFoundError(message=None, **kwargs)

继承自 SushyError

message = '未找到名为 "%(name)s" %(resource)s OEM 扩展。'
异常 sushy.exceptions.ResourceNotFoundError(method, url, response)

继承自 HTTPError

message = '资源 %(url)s 未找到'
异常 sushy.exceptions.ServerSideError(method, url, response)

继承自 HTTPError

异常 sushy.exceptions.SushyError(message=None, **kwargs)

基础: Exception

Sushy 抛出的错误的基类

message = None
异常 sushy.exceptions.UnknownDefaultError(message=None, **kwargs)

继承自 SushyError

message = '确定 "%(entity)s" 的默认值失败: %(error)s'
sushy.exceptions.raise_for_response(method, url, response)

如果需要,抛出正确的错误类。

sushy.main 模块

sushy.main.LazyRegistries(service_root)

继承自 MutableMapping

按需下载注册表。

Redfish 消息注册表可能非常大。此外,它们的使用频率不高。因此,除非消费者实际尝试使用它们,否则不要从 BMC 下载它们。

参数:

service_root (sushy.main.Sushy) – Redfish 服务根对象

属性 registries
sushy.main.ProtocolFeaturesSupportedField(*args, **kwargs)

基类: CompositeField

excerpt_query = <sushy.resources.base.Field 对象>

支持 excerpt 查询参数

expand_query = <sushy.resources.base.Field 对象>

支持 expand 查询参数

filter_query = <sushy.resources.base.Field 对象>

支持 filter 查询参数

only_member_query = <sushy.resources.base.Field 对象>

支持 only 查询参数

select_query = <sushy.resources.base.Field 对象>

支持 select 查询参数

sushy.main.Sushy(base_url, username=None, password=None, root_prefix='/redfish/v1/', verify=True, auth=None, connector=None, public_connector=None, language='en', server_side_retries=10, server_side_retries_delay=3)

基类: ResourceBase

create_session(username=None, password=None)

创建不调用 SessionService 的会话。

用于建立新连接。在发出请求之前,删除先前的会话和身份验证数据。

参数:
  • username – 用于与远程端点创建会话的用户名。

  • password – 用于与远程端点创建会话的密码。

返回值:

会话密钥和 uri 的形式为元组

引发:

MissingXAuthToken

引发:

ConnectionError

引发:

AccessError

引发:

HTTPError

引发:

MissingAttributeError

get_certificate_service()

获取 CertificateService 对象

返回值:

CertificateService 对象

get_chassis(identity=None)

给定身份返回一个 Chassis 对象

参数:

identity – Chassis 资源的身份。如果未提供,sushy 将默认为单个可用的 chassis,或者如果列出的 chassis 数量多于或少于一个,则会失败。

引发:

UnknownDefaultError 如果无法确定默认系统。

返回值:

Chassis 对象

get_chassis_collection()

获取 ChassisCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 ChassisCollection 对象

get_composition_service()

获取 CompositionService 对象

引发:

MissingAttributeError,如果未找到 composition service 属性

返回值:

CompositionService 对象

get_event_service()

获取 EventService 对象

引发:

MissingAttributeError,如果未找到 EventService

返回值:

EventService 对象

get_fabric(identity)

给定身份返回一个 Fabric 对象

参数:

identity – Fabric 资源的身份

返回值:

Fabric 对象

get_fabric_collection()

获取 FabricCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 FabricCollection 对象

get_manager(identity=None)

给定身份返回一个 Manager 对象

参数:

identity – Manager 资源的身份。如果未提供,sushy 将默认为单个可用的 Manager,或者如果列出的 Manager 数量多于或少于一个,则会失败。

返回值:

Manager 对象

get_manager_collection()

获取 ManagerCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 ManagerCollection 对象

get_session(identity)

给定身份返回一个 Session 对象

参数:

identity – 会话资源的身份

返回值:

Session 对象

get_session_service()

获取 SessionService 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

作为 SessionCollection 对象

get_sessions_path()

返回 Sessions url

get_system(identity=None)

给定身份返回一个 System 对象

参数:

identity – System 资源的身份。如果未提供,sushy 将默认为单个可用的 System,或者如果列出的 System 数量多于或少于一个,则会失败。

引发:

UnknownDefaultError 如果无法确定默认系统。

返回值:

System 对象

get_system_collection()

获取 SystemCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 SystemCollection 对象

get_task_monitor(task_monitor_uri)

用于通过任务监控 URI 获取 TaskMonitor。

参数:

task_monitor_uri – 任务监控 URI

返回值:

一个任务监控。

get_task_service()

获取 TaskService 对象

返回值:

TaskService 对象

get_update_service()

获取 UpdateService 对象

返回值:

UpdateService 对象

identity = <sushy.resources.base.Field 对象>

Redfish 根服务标识

property lazy_registries

获取并组合所有消息注册表

从 Redfish 服务获取所有注册表(如果有),并与打包的标准注册表组合在一起。

返回值:

组合的注册表字典,其中键为 Registry_name.Major_version.Minor_version,值为注册表本身。

name = <sushy.resources.base.Field 对象>

Redfish 根服务名称

product = <sushy.resources.base.Field 对象>

与此 Redfish 服务关联的产品

protocol_features_supported = <sushy.main.ProtocolFeaturesSupportedField 对象>

服务支持的协议功能信息

property registries

获取并组合所有注册表

从 Redfish 服务获取所有注册表(如果有),并与打包的标准注册表组合在一起。Redfish 服务支持消息注册表和属性注册表。

返回值:

组合的注册表字典,键为注册表名称 (Registry_name.Major_version.Minor_version) 和注册表文件标识,值为实际的注册表。

uuid = <sushy.resources.base.Field 对象>

Redfish 根服务 UUID

sushy.taskmonitor 模块

class sushy.taskmonitor.TaskMonitor(connector, task_monitor_uri, redfish_version=None, registries=None, response=None)

基类: object

property cancellable

重试前的睡眠时间

返回值:

一个布尔值,指示任务是否可取消。

property check_is_processing

刷新任务并检查它是否仍在处理中

返回值:

一个布尔值,指示任务是否仍在处理中。

static from_response(conn, response, target_uri, redfish_version=None, registries=None)

从接收到的响应构造 TaskMonitor 实例。

响应:

未处理的响应

Target_uri:

用于启动异步操作的 URI

Redfish_version:

Redfish 版本。在内部使用时可选。

Registries:

Redfish 注册表。在内部使用时可选。

返回值:

TaskMonitor 实例

引发:

如果响应中缺少 Location,则引发 MissingHeaderError

get_task()

从任务监控 URI 构造 Task 实例。

返回值:

Task 实例。

property is_processing

指示任务是否仍在处理中

返回值:

一个布尔值,指示任务是否仍在处理中。

refresh()

刷新任务

重新获取/获取任务。引发:ResourceNotFoundError,ConnectionError,HTTPError

property response

未处理的响应。

仅供内部使用。返回:未处理的响应。

property sleep_for

客户端在查询操作状态之前应等待的秒数

如果响应中未指定 Retry-After,则默认为 1 秒。

返回值:

等待的秒数

property task

正在执行的任务

返回值:

正在执行的任务。

property task_monitor_uri

任务监控 URI

返回值:

任务监控 URI。

wait(timeout_sec)

等待任务完成或超时。

参数:

timeout_sec – 等待超时

引发:

超时时发生 ConnectionError

sushy.utils 模块

sushy.utils.bool_or_none(x)

给定一个值 x,此方法返回一个布尔值或 None

参数:

x – 要转换和返回的值

返回值:

None 或 x 转换为布尔值

sushy.utils.cache_clear(res_selfie, force_refresh, only_these=None)

清除资源的某些或所有缓存值。

如果缓存变量引用资源实例,则调用该实例的 invalidate() 方法。否则将其设置为 None。如果需要强制刷新资源及其子资源,即“级联刷新”,则将 force_refresh 设置为 True。

这是 cache_it 装饰器的补充方法。

参数:
  • res_selfie – 资源实例。

  • force_refreshinvalidate() 方法的 force_refresh 参数。

  • only_these – 期望一个特定的方法名称序列,仅清除这些方法的缓存值。如果为 None,则清除所有缓存值。

sushy.utils.cache_it(res_accessor_method)

实用装饰器,用于缓存被装饰方法的返回值。

此装饰器用于任何 Sushy 资源类方法。它将在资源上内部创建一个名为 _cache_<decorated_method_name> 的属性。这被称为“缓存属性”。此属性最终将保存方法调用结果(在方法第一次调用时),对于后续对该方法的调用,将返回此缓存值。它期望被装饰的方法包含自己的评估逻辑。

它还会在资源上分配一个名为 _cache_attr_names 的变量。此变量维护所有现有“缓存属性”名称的集合。

要使缓存失效或清除缓存,请使用 cache_clear()。用法

class SomeResource(base.ResourceBase):
  ...
  @cache_it
  def get_summary(self):
    # do some calculation and return the result
    # and this result will be cached.
    return result
  ...
  def _do_refresh(self, force):
    cache_clear(self, force)

如果返回值为 Sushy 资源实例或其元素为 Sushy 资源类型的序列,它将处理调用该资源的 refresh() 方法的情况。这是为了避免不必要地重新创建一个已经创建的新资源实例,而不是从头开始重新获取资源 json 数据。同样,force 参数故意设置为 False,以仅执行资源的“轻量刷新”(仅重新获取资源),而不是执行完整的“级联刷新”(资源及其所有嵌套子资源递归)。

class SomeResource(base.ResourceBase):
  ...
  @property
  @cache_it
  def nested_resource(self):
    return NestedResource(
      self._conn, "Path/to/NestedResource",
      redfish_version=self.redfish_version)
  ...
  def _do_refresh(self, force):
    # selective attribute clearing
    cache_clear(self, force, only_these=['nested_resource'])

请注意,这并非线程安全的。因此,请保护您的代码以防止在使用此装饰器时出现任何并发问题。

参数:

res_accessor_method – 被装饰的资源访问器方法。

sushy.utils.camelcase_to_underscore_joined(camelcase_str)

将驼峰式字符串转换为下划线连接的字符串

参数:

camelcase_str – 驼峰式字符串

返回值:

等效的下划线连接的字符串

sushy.utils.get_members_identities(members)

提取并返回成员标识的元组

参数:

members – JSON 格式的成员列表

返回值:

包含成员路径的元组

sushy.utils.get_sub_resource_path_by(resource, subresource_name, is_collection=False)

辅助函数,用于查找子资源路径

参数:
  • resource – 在其上查询名称的 ResourceBase 实例。

  • subresource_name – 要获取 @odata.id’ 的资源字段的名称。

  • is_collection – 如果 True,则期望一个资源列表来获取 @odata.id’。

返回值:

资源路径(如果 is_collectionFalse)或资源路径列表(如果 is_collectionTrue)。

sushy.utils.int_or_none(x)

给定一个值 x,将其转换为 int 或 None

参数:

x – 要转换和返回的值

返回值:

None 或 x 转换为 int

sushy.utils.max_safe(iterable, default=0)

内置 max() 函数的辅助包装器。

此函数只是对内置 max() 的包装,没有 key 参数。 default 参数指定一个在提供的 iterable 为空时返回的对象。它还会过滤掉 None 类型的数值。

参数:
  • iterable – 一个可迭代对象

  • default – 默认值为 0

sushy.utils.process_apply_time_input(payload, apply_time, maint_window_start_time, maint_window_duration)

验证异步操作的 apply time 输入

参数:
  • payload – 用于处理 apply time 设置的有效载荷

  • apply_time – 更新属性的时间。可选。一个 sushy.ApplyTime 值。

  • maint_window_start_time – The start time of a maintenance window, datetime. Required when updating during maintenance window and default maintenance window not set by the system.

  • maint_window_duration – Duration of maintenance time since maintenance window start time in seconds. Required when updating during maintenance window and default maintenance window not set by the system.

引发:

ValueError – 当输入 apply time 设置不正确时

返回值:

如果有效,则带有调整后的 apply time 设置的有效载荷

sushy.utils.revert_dictionary(dictionary)

反转给定字典的映射

参数:

dictionary – 要反转的字典

返回值:

一个键和值反转后的字典

sushy.utils.sanitize(item)

从 item 中移除密码。

sushy.utils.setdefaultattr(obj, name, default)

Python 的 dict.setdefault 应用于 Python 对象。

如果 name 是 obj 的一个属性,则返回其值。如果不是,则将 name 属性设置为 default 的值并返回 default。

参数:
  • obj – 一个 python 对象

  • name – 属性名称

  • default – 默认值

sushy.utils.synchronized(wrapped)

简单的同步装饰器。

像这样装饰一个方法

@synchronized
def foo(self, *args):
  ...

确保一次只有一个线程将执行 foo 方法。

模块内容

class sushy.Sushy(base_url, username=None, password=None, root_prefix='/redfish/v1/', verify=True, auth=None, connector=None, public_connector=None, language='en', server_side_retries=10, server_side_retries_delay=3)

基类: ResourceBase

create_session(username=None, password=None)

创建不调用 SessionService 的会话。

用于建立新连接。在发出请求之前,删除先前的会话和身份验证数据。

参数:
  • username – 用于与远程端点创建会话的用户名。

  • password – 用于与远程端点创建会话的密码。

返回值:

会话密钥和 uri 的形式为元组

引发:

MissingXAuthToken

引发:

ConnectionError

引发:

AccessError

引发:

HTTPError

引发:

MissingAttributeError

get_certificate_service()

获取 CertificateService 对象

返回值:

CertificateService 对象

get_chassis(identity=None)

给定身份返回一个 Chassis 对象

参数:

identity – Chassis 资源的身份。如果未提供,sushy 将默认为单个可用的 chassis,或者如果列出的 chassis 数量多于或少于一个,则会失败。

引发:

UnknownDefaultError 如果无法确定默认系统。

返回值:

Chassis 对象

get_chassis_collection()

获取 ChassisCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 ChassisCollection 对象

get_composition_service()

获取 CompositionService 对象

引发:

MissingAttributeError,如果未找到 composition service 属性

返回值:

CompositionService 对象

get_event_service()

获取 EventService 对象

引发:

MissingAttributeError,如果未找到 EventService

返回值:

EventService 对象

get_fabric(identity)

给定身份返回一个 Fabric 对象

参数:

identity – Fabric 资源的身份

返回值:

Fabric 对象

get_fabric_collection()

获取 FabricCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 FabricCollection 对象

get_manager(identity=None)

给定身份返回一个 Manager 对象

参数:

identity – Manager 资源的身份。如果未提供,sushy 将默认为单个可用的 Manager,或者如果列出的 Manager 数量多于或少于一个,则会失败。

返回值:

Manager 对象

get_manager_collection()

获取 ManagerCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 ManagerCollection 对象

get_session(identity)

给定身份返回一个 Session 对象

参数:

identity – 会话资源的身份

返回值:

Session 对象

get_session_service()

获取 SessionService 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

作为 SessionCollection 对象

get_sessions_path()

返回 Sessions url

get_system(identity=None)

给定身份返回一个 System 对象

参数:

identity – System 资源的身份。如果未提供,sushy 将默认为单个可用的 System,或者如果列出的 System 数量多于或少于一个,则会失败。

引发:

UnknownDefaultError 如果无法确定默认系统。

返回值:

System 对象

get_system_collection()

获取 SystemCollection 对象

引发:

MissingAttributeError,如果未找到 collection 属性

返回值:

一个 SystemCollection 对象

get_task_monitor(task_monitor_uri)

用于通过任务监控 URI 获取 TaskMonitor。

参数:

task_monitor_uri – 任务监控 URI

返回值:

一个任务监控。

get_task_service()

获取 TaskService 对象

返回值:

TaskService 对象

get_update_service()

获取 UpdateService 对象

返回值:

UpdateService 对象

identity = <sushy.resources.base.Field object>

Redfish 根服务标识

property lazy_registries

获取并组合所有消息注册表

从 Redfish 服务获取所有注册表(如果有),并与打包的标准注册表组合在一起。

返回值:

组合的注册表字典,其中键为 Registry_name.Major_version.Minor_version,值为注册表本身。

name = <sushy.resources.base.Field object>

Redfish 根服务名称

product = <sushy.resources.base.Field object>

与此 Redfish 服务关联的产品

protocol_features_supported = <sushy.main.ProtocolFeaturesSupportedField object>

服务支持的协议功能信息

property registries

获取并组合所有注册表

从 Redfish 服务获取所有注册表(如果有),并与打包的标准注册表组合在一起。Redfish 服务支持消息注册表和属性注册表。

返回值:

组合的注册表字典,键为注册表名称 (Registry_name.Major_version.Minor_version) 和注册表文件标识,值为实际的注册表。

uuid = <sushy.resources.base.Field object>

Redfish 根服务 UUID