SoftLayer createFirmwareUpdateTransaction 似乎忽略了我的输入
SoftLayer createFirmwareUpdateTransaction seems to ignore my input
我正在使用 CLI 为用户指定的硬件组件更新我们的服务器固件。这是我正在使用的函数:
def update_firmware(client, fqdn, ipmi=False, raid_controller=False,
bios=False, hard_drive=False):
"""Update firmware on selected components."""
machine_summary = get_machine_summary(client, fqdn)
try:
hardware_mgr = SoftLayer.managers.hardware.HardwareManager(client)
hardware_mgr.update_firmware(machine_summary["id"], ipmi,
raid_controller, bios, hard_drive)
except SoftLayer.exceptions.SoftLayerAPIError as e:
LOG.warn("SoftLayer API Error: %s", e)
我遇到的问题是,无论用户提供什么输入,交易都需要大约一小时才能完成。这甚至包括当我将 False 传递给所有组件值时。我什至可以使用 SoftLayer 自己的 CLI 重现此行为:
slcli call-api --id $id Hardware_Server createFirmwareUpdateTransaction 0 0 0 0
任何人都可以帮助澄清我在这里做错了什么吗?我的 slcli 版本是 v5.2.0。我还尝试在函数中传递 0 / 1 而不是 False / True。如何更新单个硬件的固件?在过去,我们曾遇到过 raid 控制器上的缓冲区溢出错误问题,作为我为什么希望对特定部分执行此操作的示例。
API 文档参考:https://softlayer.github.io/python/update_firmware/
目前我们正在检查此行为,我们将在工单和此处更新有关它的任何消息。对于给您带来的不便,我深表歉意。
在与 API 支持反复讨论之后,答案是即使您没有指定要更新固件的组件,也会进行库存检查。 None 的组件已更新,但主机仍会关闭以执行这些检查。
我正在使用 CLI 为用户指定的硬件组件更新我们的服务器固件。这是我正在使用的函数:
def update_firmware(client, fqdn, ipmi=False, raid_controller=False,
bios=False, hard_drive=False):
"""Update firmware on selected components."""
machine_summary = get_machine_summary(client, fqdn)
try:
hardware_mgr = SoftLayer.managers.hardware.HardwareManager(client)
hardware_mgr.update_firmware(machine_summary["id"], ipmi,
raid_controller, bios, hard_drive)
except SoftLayer.exceptions.SoftLayerAPIError as e:
LOG.warn("SoftLayer API Error: %s", e)
我遇到的问题是,无论用户提供什么输入,交易都需要大约一小时才能完成。这甚至包括当我将 False 传递给所有组件值时。我什至可以使用 SoftLayer 自己的 CLI 重现此行为:
slcli call-api --id $id Hardware_Server createFirmwareUpdateTransaction 0 0 0 0
任何人都可以帮助澄清我在这里做错了什么吗?我的 slcli 版本是 v5.2.0。我还尝试在函数中传递 0 / 1 而不是 False / True。如何更新单个硬件的固件?在过去,我们曾遇到过 raid 控制器上的缓冲区溢出错误问题,作为我为什么希望对特定部分执行此操作的示例。
API 文档参考:https://softlayer.github.io/python/update_firmware/
目前我们正在检查此行为,我们将在工单和此处更新有关它的任何消息。对于给您带来的不便,我深表歉意。
在与 API 支持反复讨论之后,答案是即使您没有指定要更新固件的组件,也会进行库存检查。 None 的组件已更新,但主机仍会关闭以执行这些检查。