redfish-python-sdk 1.0.0__tar.gz → 1.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {redfish_python_sdk-1.0.0/redfish_python_sdk.egg-info → redfish_python_sdk-1.1.0}/PKG-INFO +5 -1
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/README.md +4 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/pyproject.toml +1 -1
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0/redfish_python_sdk.egg-info}/PKG-INFO +5 -1
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/__init__.py +26 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/client.py +204 -1
- redfish_python_sdk-1.1.0/redfish_sdk/managers/managers.py +442 -0
- redfish_python_sdk-1.1.0/redfish_sdk/models/managers.py +465 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/oem.py +15 -1
- redfish_python_sdk-1.0.0/redfish_sdk/managers/managers.py +0 -120
- redfish_python_sdk-1.0.0/redfish_sdk/models/managers.py +0 -153
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/LICENSE +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_python_sdk.egg-info/SOURCES.txt +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_python_sdk.egg-info/dependency_links.txt +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_python_sdk.egg-info/requires.txt +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_python_sdk.egg-info/top_level.txt +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/exceptions.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/http_client.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/__init__.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/_log_helpers.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/account.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/chassis.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/event.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/registries.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/session.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/systems.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/task.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/__init__.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/base.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/h3c.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/inspur.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/lenovo.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/nettrix.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/registry.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/vendor_detect.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/xfusion.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/managers/update_strategies/zte.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/__init__.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/account.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/chassis.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/check.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/common.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/drive.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/event.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/fru.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/gpu.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/logs.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/memory.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/network_adapter.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/pcie_device.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/power.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/processor.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/registry.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/resource_key.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/root.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/session.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/storage.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/systems.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/task.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/thermal.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/redfish_sdk/models/update.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/setup.cfg +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_client_mock.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_log_entries_mock.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_models.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_models_mock.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_offline_json.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_real_bmc.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_sdk_mock.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_update_strategies.py +0 -0
- {redfish_python_sdk-1.0.0 → redfish_python_sdk-1.1.0}/tests/test_v1_1_apis_mock.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: redfish-python-sdk
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.1.0
|
|
4
4
|
Summary: A Python SDK for interacting with Redfish-compliant BMC endpoints
|
|
5
5
|
Author: RedNote Infrastructure
|
|
6
6
|
License: BSD 3-Clause License
|
|
@@ -65,6 +65,10 @@ Dynamic: license-file
|
|
|
65
65
|
|
|
66
66
|
# Redfish Python SDK
|
|
67
67
|
|
|
68
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
69
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
70
|
+
[](https://github.com/rednote-infra/redfish-python-sdk/blob/main/LICENSE)
|
|
71
|
+
|
|
68
72
|
[English](README.md) | [中文](README_zh.md)
|
|
69
73
|
|
|
70
74
|
> A lightweight Python SDK for managing server BMCs (Baseboard Management Controllers) via the [DMTF Redfish](https://www.dmtf.org/standards/redfish) protocol. Covers system inventory, hardware inspection, power control, boot management, event subscriptions, and more.
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Redfish Python SDK
|
|
2
2
|
|
|
3
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
4
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
5
|
+
[](https://github.com/rednote-infra/redfish-python-sdk/blob/main/LICENSE)
|
|
6
|
+
|
|
3
7
|
[English](README.md) | [中文](README_zh.md)
|
|
4
8
|
|
|
5
9
|
> A lightweight Python SDK for managing server BMCs (Baseboard Management Controllers) via the [DMTF Redfish](https://www.dmtf.org/standards/redfish) protocol. Covers system inventory, hardware inspection, power control, boot management, event subscriptions, and more.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: redfish-python-sdk
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.1.0
|
|
4
4
|
Summary: A Python SDK for interacting with Redfish-compliant BMC endpoints
|
|
5
5
|
Author: RedNote Infrastructure
|
|
6
6
|
License: BSD 3-Clause License
|
|
@@ -65,6 +65,10 @@ Dynamic: license-file
|
|
|
65
65
|
|
|
66
66
|
# Redfish Python SDK
|
|
67
67
|
|
|
68
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
69
|
+
[](https://pypi.org/project/redfish-python-sdk/)
|
|
70
|
+
[](https://github.com/rednote-infra/redfish-python-sdk/blob/main/LICENSE)
|
|
71
|
+
|
|
68
72
|
[English](README.md) | [中文](README_zh.md)
|
|
69
73
|
|
|
70
74
|
> A lightweight Python SDK for managing server BMCs (Baseboard Management Controllers) via the [DMTF Redfish](https://www.dmtf.org/standards/redfish) protocol. Covers system inventory, hardware inspection, power control, boot management, event subscriptions, and more.
|
|
@@ -38,6 +38,20 @@ from .exceptions import (
|
|
|
38
38
|
from .models.drive import Drive
|
|
39
39
|
from .models.event import EventService, Subscription
|
|
40
40
|
from .models.logs import Log, LogEntry
|
|
41
|
+
from .models.managers import KvmService
|
|
42
|
+
from .models.managers import (
|
|
43
|
+
DnsService,
|
|
44
|
+
FirewallRules,
|
|
45
|
+
HttpsCert,
|
|
46
|
+
LldpService,
|
|
47
|
+
NtpService,
|
|
48
|
+
SecurityService,
|
|
49
|
+
SnmpService,
|
|
50
|
+
SolSourceControlInfo,
|
|
51
|
+
SyslogService,
|
|
52
|
+
VirtualMedia,
|
|
53
|
+
VncService,
|
|
54
|
+
)
|
|
41
55
|
from .models.resource_key import RedfishResource
|
|
42
56
|
from .models.systems import BootOption
|
|
43
57
|
|
|
@@ -55,9 +69,21 @@ __all__ = [
|
|
|
55
69
|
"RedfishValidationError",
|
|
56
70
|
# Models commonly used at API boundary.
|
|
57
71
|
"BootOption",
|
|
72
|
+
"DnsService",
|
|
58
73
|
"Drive",
|
|
59
74
|
"EventService",
|
|
75
|
+
"FirewallRules",
|
|
76
|
+
"HttpsCert",
|
|
77
|
+
"KvmService",
|
|
78
|
+
"LldpService",
|
|
60
79
|
"Log",
|
|
61
80
|
"LogEntry",
|
|
81
|
+
"NtpService",
|
|
82
|
+
"SecurityService",
|
|
83
|
+
"SnmpService",
|
|
84
|
+
"SolSourceControlInfo",
|
|
62
85
|
"Subscription",
|
|
86
|
+
"SyslogService",
|
|
87
|
+
"VirtualMedia",
|
|
88
|
+
"VncService",
|
|
63
89
|
]
|
|
@@ -54,7 +54,24 @@ from .models.event import EventService, Subscription
|
|
|
54
54
|
from .models.fru import Fru
|
|
55
55
|
from .models.logs import Log, LogEntry
|
|
56
56
|
from .models.oem import MainBoard
|
|
57
|
-
from .models.managers import
|
|
57
|
+
from .models.managers import (
|
|
58
|
+
DnsService,
|
|
59
|
+
EthernetInterface,
|
|
60
|
+
FirewallRules,
|
|
61
|
+
HostInterface,
|
|
62
|
+
HttpsCert,
|
|
63
|
+
KvmService,
|
|
64
|
+
LldpService,
|
|
65
|
+
Manager,
|
|
66
|
+
NetworkProtocol,
|
|
67
|
+
NtpService,
|
|
68
|
+
SecurityService,
|
|
69
|
+
SnmpService,
|
|
70
|
+
SolSourceControlInfo,
|
|
71
|
+
SyslogService,
|
|
72
|
+
VirtualMedia,
|
|
73
|
+
VncService,
|
|
74
|
+
)
|
|
58
75
|
from .models.memory import Memory
|
|
59
76
|
from .models.power import Power, PowerSupply
|
|
60
77
|
from .models.processor import Processor
|
|
@@ -933,6 +950,192 @@ class RedfishClient:
|
|
|
933
950
|
"""
|
|
934
951
|
return self._managers.host_interfaces(manager_id)
|
|
935
952
|
|
|
953
|
+
def get_kvm_service(self, manager_id: str = "1") -> KvmService:
|
|
954
|
+
"""
|
|
955
|
+
Get KVM service configuration for a BMC manager.
|
|
956
|
+
|
|
957
|
+
The KVM service URI is dynamically discovered from the Manager's
|
|
958
|
+
OEM links (``Oem.{vendor}.KVM``).
|
|
959
|
+
|
|
960
|
+
Args:
|
|
961
|
+
manager_id: Manager ID (default "1")
|
|
962
|
+
|
|
963
|
+
Returns:
|
|
964
|
+
KvmService resource
|
|
965
|
+
|
|
966
|
+
Raises:
|
|
967
|
+
RedfishNotFoundError: If the manager does not expose a KVM link
|
|
968
|
+
"""
|
|
969
|
+
return self._managers.kvm_service(manager_id)
|
|
970
|
+
|
|
971
|
+
def get_ntp_service(self, manager_id: str = "1") -> NtpService:
|
|
972
|
+
"""
|
|
973
|
+
Get NTP service configuration for a BMC manager.
|
|
974
|
+
|
|
975
|
+
Args:
|
|
976
|
+
manager_id: Manager ID (default "1")
|
|
977
|
+
|
|
978
|
+
Returns:
|
|
979
|
+
NtpService resource
|
|
980
|
+
|
|
981
|
+
Raises:
|
|
982
|
+
RedfishNotFoundError: If the manager does not expose NtpService
|
|
983
|
+
"""
|
|
984
|
+
return self._managers.ntp_service(manager_id)
|
|
985
|
+
|
|
986
|
+
def get_syslog_service(self, manager_id: str = "1") -> SyslogService:
|
|
987
|
+
"""
|
|
988
|
+
Get Syslog service configuration for a BMC manager.
|
|
989
|
+
|
|
990
|
+
Args:
|
|
991
|
+
manager_id: Manager ID (default "1")
|
|
992
|
+
|
|
993
|
+
Returns:
|
|
994
|
+
SyslogService resource
|
|
995
|
+
|
|
996
|
+
Raises:
|
|
997
|
+
RedfishNotFoundError: If the manager does not expose SyslogService
|
|
998
|
+
"""
|
|
999
|
+
return self._managers.syslog_service(manager_id)
|
|
1000
|
+
|
|
1001
|
+
def get_snmp_service(self, manager_id: str = "1") -> SnmpService:
|
|
1002
|
+
"""
|
|
1003
|
+
Get SNMP service configuration for a BMC manager.
|
|
1004
|
+
|
|
1005
|
+
Args:
|
|
1006
|
+
manager_id: Manager ID (default "1")
|
|
1007
|
+
|
|
1008
|
+
Returns:
|
|
1009
|
+
SnmpService resource
|
|
1010
|
+
|
|
1011
|
+
Raises:
|
|
1012
|
+
RedfishNotFoundError: If the manager does not expose SnmpService
|
|
1013
|
+
"""
|
|
1014
|
+
return self._managers.snmp_service(manager_id)
|
|
1015
|
+
|
|
1016
|
+
def get_lldp_service(self, manager_id: str = "1") -> LldpService:
|
|
1017
|
+
"""
|
|
1018
|
+
Get LLDP service configuration for a BMC manager.
|
|
1019
|
+
|
|
1020
|
+
Args:
|
|
1021
|
+
manager_id: Manager ID (default "1")
|
|
1022
|
+
|
|
1023
|
+
Returns:
|
|
1024
|
+
LldpService resource
|
|
1025
|
+
|
|
1026
|
+
Raises:
|
|
1027
|
+
RedfishNotFoundError: If the manager does not expose LldpService
|
|
1028
|
+
"""
|
|
1029
|
+
return self._managers.lldp_service(manager_id)
|
|
1030
|
+
|
|
1031
|
+
def get_dns_service(self, manager_id: str = "1") -> DnsService:
|
|
1032
|
+
"""
|
|
1033
|
+
Get DNS service configuration for a BMC manager.
|
|
1034
|
+
|
|
1035
|
+
Note: Not all BMC vendors support this endpoint.
|
|
1036
|
+
|
|
1037
|
+
Args:
|
|
1038
|
+
manager_id: Manager ID (default "1")
|
|
1039
|
+
|
|
1040
|
+
Returns:
|
|
1041
|
+
DnsService resource
|
|
1042
|
+
|
|
1043
|
+
Raises:
|
|
1044
|
+
RedfishNotFoundError: If the manager does not expose DnsService
|
|
1045
|
+
"""
|
|
1046
|
+
return self._managers.dns_service(manager_id)
|
|
1047
|
+
|
|
1048
|
+
def get_vnc_service(self, manager_id: str = "1") -> VncService:
|
|
1049
|
+
"""
|
|
1050
|
+
Get VNC/RFB service configuration for a BMC manager.
|
|
1051
|
+
|
|
1052
|
+
Args:
|
|
1053
|
+
manager_id: Manager ID (default "1")
|
|
1054
|
+
|
|
1055
|
+
Returns:
|
|
1056
|
+
VncService resource
|
|
1057
|
+
|
|
1058
|
+
Raises:
|
|
1059
|
+
RedfishNotFoundError: If the manager does not expose VncService
|
|
1060
|
+
"""
|
|
1061
|
+
return self._managers.vnc_service(manager_id)
|
|
1062
|
+
|
|
1063
|
+
def get_security_service(self, manager_id: str = "1") -> SecurityService:
|
|
1064
|
+
"""
|
|
1065
|
+
Get Security service for a BMC manager.
|
|
1066
|
+
|
|
1067
|
+
Args:
|
|
1068
|
+
manager_id: Manager ID (default "1")
|
|
1069
|
+
|
|
1070
|
+
Returns:
|
|
1071
|
+
SecurityService resource
|
|
1072
|
+
|
|
1073
|
+
Raises:
|
|
1074
|
+
RedfishNotFoundError: If the manager does not expose SecurityService
|
|
1075
|
+
"""
|
|
1076
|
+
return self._managers.security_service(manager_id)
|
|
1077
|
+
|
|
1078
|
+
def get_https_cert(self, manager_id: str = "1") -> HttpsCert:
|
|
1079
|
+
"""
|
|
1080
|
+
Get HTTPS certificate information for a BMC manager.
|
|
1081
|
+
|
|
1082
|
+
Discovered via SecurityService links.
|
|
1083
|
+
|
|
1084
|
+
Args:
|
|
1085
|
+
manager_id: Manager ID (default "1")
|
|
1086
|
+
|
|
1087
|
+
Returns:
|
|
1088
|
+
HttpsCert resource
|
|
1089
|
+
|
|
1090
|
+
Raises:
|
|
1091
|
+
RedfishNotFoundError: If HttpsCert is not available
|
|
1092
|
+
"""
|
|
1093
|
+
return self._managers.https_cert(manager_id)
|
|
1094
|
+
|
|
1095
|
+
def get_firewall_rules(self, manager_id: str = "1") -> FirewallRules:
|
|
1096
|
+
"""
|
|
1097
|
+
Get Firewall rules collection for a BMC manager.
|
|
1098
|
+
|
|
1099
|
+
Args:
|
|
1100
|
+
manager_id: Manager ID (default "1")
|
|
1101
|
+
|
|
1102
|
+
Returns:
|
|
1103
|
+
FirewallRules collection resource
|
|
1104
|
+
|
|
1105
|
+
Raises:
|
|
1106
|
+
RedfishNotFoundError: If the manager does not expose FirewallRules
|
|
1107
|
+
"""
|
|
1108
|
+
return self._managers.firewall_rules(manager_id)
|
|
1109
|
+
|
|
1110
|
+
def get_virtual_media(self, manager_id: str = "1") -> List[VirtualMedia]:
|
|
1111
|
+
"""
|
|
1112
|
+
Get the list of virtual media resources for a BMC manager.
|
|
1113
|
+
|
|
1114
|
+
Args:
|
|
1115
|
+
manager_id: Manager ID (default "1")
|
|
1116
|
+
|
|
1117
|
+
Returns:
|
|
1118
|
+
List of VirtualMedia resources
|
|
1119
|
+
"""
|
|
1120
|
+
return self._managers.virtual_media(manager_id)
|
|
1121
|
+
|
|
1122
|
+
def get_sol_source(self, manager_id: str = "1") -> SolSourceControlInfo:
|
|
1123
|
+
"""
|
|
1124
|
+
Get SOL source control information for a BMC manager.
|
|
1125
|
+
|
|
1126
|
+
Note: Not all BMC vendors support this endpoint.
|
|
1127
|
+
|
|
1128
|
+
Args:
|
|
1129
|
+
manager_id: Manager ID (default "1")
|
|
1130
|
+
|
|
1131
|
+
Returns:
|
|
1132
|
+
SolSourceControlInfo resource
|
|
1133
|
+
|
|
1134
|
+
Raises:
|
|
1135
|
+
RedfishNotFoundError: If the manager does not expose SOLSourceControlInfo
|
|
1136
|
+
"""
|
|
1137
|
+
return self._managers.sol_source(manager_id)
|
|
1138
|
+
|
|
936
1139
|
# ==================================================================
|
|
937
1140
|
# Component query methods — Account service
|
|
938
1141
|
# ==================================================================
|