Redfish 2025.3
1 line change in scripts/update_schemas.py to point at 2025.3 and run
the script.
See below for more info on this release [1]
Tested: Inspection only. These have not broke things in the past.
Symlinks are getting updated:
```
head -n 4 redfish-core/schema/dmtf/json-schema-installed/ComputerSystem.v1_*.json
{
"$id": "http://redfish.dmtf.org/schemas/v1/ComputerSystem.v1_26_0.json",
"$ref": "#/definitions/ComputerSystem",
"$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
```
[1]: https://www.dmtf.org/sites/default/files/Redfish_Release_2025.3_Overview.pdf
Change-Id: Icc0e7b2bc775be6fa0f842670820319b79606507
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
diff --git a/redfish-core/include/aggregation_utils.hpp b/redfish-core/include/aggregation_utils.hpp
index c71ff0e..3a88c22 100644
--- a/redfish-core/include/aggregation_utils.hpp
+++ b/redfish-core/include/aggregation_utils.hpp
@@ -20,12 +20,14 @@
{
// Note that each URI actually begins with "/redfish/v1"
// They've been omitted to save space and reduce search time
-constexpr std::array<std::string_view, 55> topCollections{
+constexpr std::array<std::string_view, 58> topCollections{
"/AggregationService/Aggregates",
"/AggregationService/AggregationSources",
"/AggregationService/ConnectionMethods",
"/AutomationNodes",
"/Cables",
+ "/CertificateService/CertificateEnrollments",
+ "/CertificateService/EnrollmentCACertificates",
"/Chassis",
"/ComponentIntegrity",
"/CompositionService/ActivePool",
@@ -73,6 +75,7 @@
"/ThermalEquipment/RPUs",
"/UpdateService/ClientCertificates",
"/UpdateService/FirmwareInventory",
+ "/UpdateService/LocalImageStore",
"/UpdateService/RemoteServerCertificates",
"/UpdateService/RemoteServerSSHKeys",
"/UpdateService/SoftwareInventory",
diff --git a/redfish-core/include/generated/enums/certificate.hpp b/redfish-core/include/generated/enums/certificate.hpp
index 9969393..bd09f17 100644
--- a/redfish-core/include/generated/enums/certificate.hpp
+++ b/redfish-core/include/generated/enums/certificate.hpp
@@ -15,6 +15,21 @@
PKCS12,
};
+enum class CertificateUsageType{
+ Invalid,
+ User,
+ Web,
+ SSH,
+ Device,
+ Platform,
+ BIOS,
+ IDevID,
+ LDevID,
+ IAK,
+ LAK,
+ EK,
+};
+
enum class KeyUsage{
Invalid,
DigitalSignature,
@@ -34,21 +49,6 @@
OCSPSigning,
};
-enum class CertificateUsageType{
- Invalid,
- User,
- Web,
- SSH,
- Device,
- Platform,
- BIOS,
- IDevID,
- LDevID,
- IAK,
- LAK,
- EK,
-};
-
NLOHMANN_JSON_SERIALIZE_ENUM(CertificateType, {
{CertificateType::Invalid, "Invalid"},
{CertificateType::PEM, "PEM"},
@@ -57,6 +57,21 @@
{CertificateType::PKCS12, "PKCS12"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(CertificateUsageType, {
+ {CertificateUsageType::Invalid, "Invalid"},
+ {CertificateUsageType::User, "User"},
+ {CertificateUsageType::Web, "Web"},
+ {CertificateUsageType::SSH, "SSH"},
+ {CertificateUsageType::Device, "Device"},
+ {CertificateUsageType::Platform, "Platform"},
+ {CertificateUsageType::BIOS, "BIOS"},
+ {CertificateUsageType::IDevID, "IDevID"},
+ {CertificateUsageType::LDevID, "LDevID"},
+ {CertificateUsageType::IAK, "IAK"},
+ {CertificateUsageType::LAK, "LAK"},
+ {CertificateUsageType::EK, "EK"},
+});
+
NLOHMANN_JSON_SERIALIZE_ENUM(KeyUsage, {
{KeyUsage::Invalid, "Invalid"},
{KeyUsage::DigitalSignature, "DigitalSignature"},
@@ -76,20 +91,5 @@
{KeyUsage::OCSPSigning, "OCSPSigning"},
});
-NLOHMANN_JSON_SERIALIZE_ENUM(CertificateUsageType, {
- {CertificateUsageType::Invalid, "Invalid"},
- {CertificateUsageType::User, "User"},
- {CertificateUsageType::Web, "Web"},
- {CertificateUsageType::SSH, "SSH"},
- {CertificateUsageType::Device, "Device"},
- {CertificateUsageType::Platform, "Platform"},
- {CertificateUsageType::BIOS, "BIOS"},
- {CertificateUsageType::IDevID, "IDevID"},
- {CertificateUsageType::LDevID, "LDevID"},
- {CertificateUsageType::IAK, "IAK"},
- {CertificateUsageType::LAK, "LAK"},
- {CertificateUsageType::EK, "EK"},
-});
-
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/certificate_enrollment.hpp b/redfish-core/include/generated/enums/certificate_enrollment.hpp
new file mode 100644
index 0000000..7a5973d
--- /dev/null
+++ b/redfish-core/include/generated/enums/certificate_enrollment.hpp
@@ -0,0 +1,65 @@
+// SPDX-License-Identifier: Apache-2.0
+// SPDX-FileCopyrightText: Copyright OpenBMC Authors
+#pragma once
+#include <nlohmann/json.hpp>
+
+namespace certificate_enrollment
+{
+// clang-format off
+
+enum class EnrollmentProtocolType{
+ Invalid,
+ ACME,
+ SCEP,
+ OEM,
+};
+
+enum class LastOperationType{
+ Invalid,
+ Renew,
+ UpdateAcmeEmail,
+};
+
+enum class OperationStatus{
+ Invalid,
+ Success,
+ Failed,
+ InProgress,
+ Unknown,
+};
+
+enum class ACMEChallengeType{
+ Invalid,
+ Http01,
+ Dns01,
+};
+
+NLOHMANN_JSON_SERIALIZE_ENUM(EnrollmentProtocolType, {
+ {EnrollmentProtocolType::Invalid, "Invalid"},
+ {EnrollmentProtocolType::ACME, "ACME"},
+ {EnrollmentProtocolType::SCEP, "SCEP"},
+ {EnrollmentProtocolType::OEM, "OEM"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(LastOperationType, {
+ {LastOperationType::Invalid, "Invalid"},
+ {LastOperationType::Renew, "Renew"},
+ {LastOperationType::UpdateAcmeEmail, "UpdateAcmeEmail"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(OperationStatus, {
+ {OperationStatus::Invalid, "Invalid"},
+ {OperationStatus::Success, "Success"},
+ {OperationStatus::Failed, "Failed"},
+ {OperationStatus::InProgress, "InProgress"},
+ {OperationStatus::Unknown, "Unknown"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(ACMEChallengeType, {
+ {ACMEChallengeType::Invalid, "Invalid"},
+ {ACMEChallengeType::Http01, "Http01"},
+ {ACMEChallengeType::Dns01, "Dns01"},
+});
+
+}
+// clang-format on
diff --git a/redfish-core/include/generated/enums/chassis.hpp b/redfish-core/include/generated/enums/chassis.hpp
index c88bf88..61be261 100644
--- a/redfish-core/include/generated/enums/chassis.hpp
+++ b/redfish-core/include/generated/enums/chassis.hpp
@@ -80,6 +80,20 @@
Open,
};
+enum class RackUnits{
+ Invalid,
+ OpenU,
+ EIA_310,
+};
+
+enum class RackMountWidth{
+ Invalid,
+ OpenU,
+ EIA_310,
+ EIA_310_Telco,
+ HalfWidth,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(ChassisType, {
{ChassisType::Invalid, "Invalid"},
{ChassisType::Rack, "Rack"},
@@ -153,5 +167,19 @@
{DoorState::Open, "Open"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(RackUnits, {
+ {RackUnits::Invalid, "Invalid"},
+ {RackUnits::OpenU, "OpenU"},
+ {RackUnits::EIA_310, "EIA_310"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(RackMountWidth, {
+ {RackMountWidth::Invalid, "Invalid"},
+ {RackMountWidth::OpenU, "OpenU"},
+ {RackMountWidth::EIA_310, "EIA_310"},
+ {RackMountWidth::EIA_310_Telco, "EIA_310_Telco"},
+ {RackMountWidth::HalfWidth, "HalfWidth"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/computer_system.hpp b/redfish-core/include/generated/enums/computer_system.hpp
index f1dc07a..f9632e9 100644
--- a/redfish-core/include/generated/enums/computer_system.hpp
+++ b/redfish-core/include/generated/enums/computer_system.hpp
@@ -215,6 +215,29 @@
Unknown,
};
+enum class ExportType{
+ Invalid,
+ NonDestructive,
+ CloneWithinFabric,
+ Replacement,
+};
+
+enum class Component{
+ Invalid,
+ All,
+ Manager,
+ BIOS,
+ Network,
+ Storage,
+};
+
+enum class ExportSecurity{
+ Invalid,
+ IncludeSensitiveData,
+ HashedDataOnly,
+ ExcludeSensitiveData,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(BootSource, {
{BootSource::Invalid, "Invalid"},
{BootSource::None, "None"},
@@ -423,5 +446,28 @@
{LastResetCauses::Unknown, "Unknown"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportType, {
+ {ExportType::Invalid, "Invalid"},
+ {ExportType::NonDestructive, "NonDestructive"},
+ {ExportType::CloneWithinFabric, "CloneWithinFabric"},
+ {ExportType::Replacement, "Replacement"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(Component, {
+ {Component::Invalid, "Invalid"},
+ {Component::All, "All"},
+ {Component::Manager, "Manager"},
+ {Component::BIOS, "BIOS"},
+ {Component::Network, "Network"},
+ {Component::Storage, "Storage"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportSecurity, {
+ {ExportSecurity::Invalid, "Invalid"},
+ {ExportSecurity::IncludeSensitiveData, "IncludeSensitiveData"},
+ {ExportSecurity::HashedDataOnly, "HashedDataOnly"},
+ {ExportSecurity::ExcludeSensitiveData, "ExcludeSensitiveData"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/coolant_connector.hpp b/redfish-core/include/generated/enums/coolant_connector.hpp
index 979adca..485ef31 100644
--- a/redfish-core/include/generated/enums/coolant_connector.hpp
+++ b/redfish-core/include/generated/enums/coolant_connector.hpp
@@ -16,6 +16,19 @@
Closed,
};
+enum class ValveState{
+ Invalid,
+ Open,
+ Closed,
+};
+
+enum class ValveStateReason{
+ Invalid,
+ Normal,
+ NotInUse,
+ LeakDetected,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(CoolantConnectorType, {
{CoolantConnectorType::Invalid, "Invalid"},
{CoolantConnectorType::Pair, "Pair"},
@@ -25,5 +38,18 @@
{CoolantConnectorType::Closed, "Closed"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(ValveState, {
+ {ValveState::Invalid, "Invalid"},
+ {ValveState::Open, "Open"},
+ {ValveState::Closed, "Closed"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(ValveStateReason, {
+ {ValveStateReason::Invalid, "Invalid"},
+ {ValveStateReason::Normal, "Normal"},
+ {ValveStateReason::NotInUse, "NotInUse"},
+ {ValveStateReason::LeakDetected, "LeakDetected"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/cooling_loop.hpp b/redfish-core/include/generated/enums/cooling_loop.hpp
index 85d6c18..9be2711 100644
--- a/redfish-core/include/generated/enums/cooling_loop.hpp
+++ b/redfish-core/include/generated/enums/cooling_loop.hpp
@@ -15,6 +15,13 @@
Dielectric,
};
+enum class CoolingLoopType{
+ Invalid,
+ FWS,
+ TCS,
+ RowTCS,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(CoolantType, {
{CoolantType::Invalid, "Invalid"},
{CoolantType::Water, "Water"},
@@ -23,5 +30,12 @@
{CoolantType::Dielectric, "Dielectric"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(CoolingLoopType, {
+ {CoolingLoopType::Invalid, "Invalid"},
+ {CoolingLoopType::FWS, "FWS"},
+ {CoolingLoopType::TCS, "TCS"},
+ {CoolingLoopType::RowTCS, "RowTCS"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/cooling_unit.hpp b/redfish-core/include/generated/enums/cooling_unit.hpp
index c220439..8580ecf 100644
--- a/redfish-core/include/generated/enums/cooling_unit.hpp
+++ b/redfish-core/include/generated/enums/cooling_unit.hpp
@@ -21,6 +21,27 @@
Disabled,
};
+enum class ExportType{
+ Invalid,
+ Clone,
+ Replacement,
+};
+
+enum class Component{
+ Invalid,
+ All,
+ Manager,
+ ManagerAccounts,
+ CoolingUnit,
+};
+
+enum class ExportSecurity{
+ Invalid,
+ IncludeSensitiveData,
+ HashedDataOnly,
+ ExcludeSensitiveData,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(CoolingEquipmentType, {
{CoolingEquipmentType::Invalid, "Invalid"},
{CoolingEquipmentType::CDU, "CDU"},
@@ -35,5 +56,26 @@
{CoolingUnitMode::Disabled, "Disabled"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportType, {
+ {ExportType::Invalid, "Invalid"},
+ {ExportType::Clone, "Clone"},
+ {ExportType::Replacement, "Replacement"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(Component, {
+ {Component::Invalid, "Invalid"},
+ {Component::All, "All"},
+ {Component::Manager, "Manager"},
+ {Component::ManagerAccounts, "ManagerAccounts"},
+ {Component::CoolingUnit, "CoolingUnit"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportSecurity, {
+ {ExportSecurity::Invalid, "Invalid"},
+ {ExportSecurity::IncludeSensitiveData, "IncludeSensitiveData"},
+ {ExportSecurity::HashedDataOnly, "HashedDataOnly"},
+ {ExportSecurity::ExcludeSensitiveData, "ExcludeSensitiveData"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/cxl_logical_device.hpp b/redfish-core/include/generated/enums/cxl_logical_device.hpp
index 2745c09..02b38e6 100644
--- a/redfish-core/include/generated/enums/cxl_logical_device.hpp
+++ b/redfish-core/include/generated/enums/cxl_logical_device.hpp
@@ -14,6 +14,12 @@
CXLmem,
};
+enum class PassphraseType{
+ Invalid,
+ User,
+ Master,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(CXLSemantic, {
{CXLSemantic::Invalid, "Invalid"},
{CXLSemantic::CXLio, "CXLio"},
@@ -21,5 +27,11 @@
{CXLSemantic::CXLmem, "CXLmem"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(PassphraseType, {
+ {PassphraseType::Invalid, "Invalid"},
+ {PassphraseType::User, "User"},
+ {PassphraseType::Master, "Master"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/leak_detector.hpp b/redfish-core/include/generated/enums/leak_detector.hpp
index c3bb432..1279128 100644
--- a/redfish-core/include/generated/enums/leak_detector.hpp
+++ b/redfish-core/include/generated/enums/leak_detector.hpp
@@ -13,6 +13,15 @@
FloatSwitch,
};
+enum class DetectorState{
+ Invalid,
+ OK,
+ Warning,
+ Critical,
+ Unavailable,
+ Absent,
+};
+
enum class ReactionType{
Invalid,
None,
@@ -26,6 +35,15 @@
{LeakDetectorType::FloatSwitch, "FloatSwitch"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(DetectorState, {
+ {DetectorState::Invalid, "Invalid"},
+ {DetectorState::OK, "OK"},
+ {DetectorState::Warning, "Warning"},
+ {DetectorState::Critical, "Critical"},
+ {DetectorState::Unavailable, "Unavailable"},
+ {DetectorState::Absent, "Absent"},
+});
+
NLOHMANN_JSON_SERIALIZE_ENUM(ReactionType, {
{ReactionType::Invalid, "Invalid"},
{ReactionType::None, "None"},
diff --git a/redfish-core/include/generated/enums/memory.hpp b/redfish-core/include/generated/enums/memory.hpp
index 1edfaab..a46b98c 100644
--- a/redfish-core/include/generated/enums/memory.hpp
+++ b/redfish-core/include/generated/enums/memory.hpp
@@ -50,6 +50,7 @@
GDDR5,
GDDR5X,
GDDR6,
+ GDDR7,
DDR5,
OEM,
LPDDR5_SDRAM,
@@ -155,6 +156,7 @@
{MemoryDeviceType::GDDR5, "GDDR5"},
{MemoryDeviceType::GDDR5X, "GDDR5X"},
{MemoryDeviceType::GDDR6, "GDDR6"},
+ {MemoryDeviceType::GDDR7, "GDDR7"},
{MemoryDeviceType::DDR5, "DDR5"},
{MemoryDeviceType::OEM, "OEM"},
{MemoryDeviceType::LPDDR5_SDRAM, "LPDDR5_SDRAM"},
diff --git a/redfish-core/include/generated/enums/port.hpp b/redfish-core/include/generated/enums/port.hpp
index 17ce40b..0fbe7f2 100644
--- a/redfish-core/include/generated/enums/port.hpp
+++ b/redfish-core/include/generated/enums/port.hpp
@@ -166,6 +166,7 @@
Type2,
Type3SLD,
Type3MLD,
+ PBRComponent,
};
enum class HostDeviceType{
@@ -334,6 +335,7 @@
{ConnectedDeviceType::Type2, "Type2"},
{ConnectedDeviceType::Type3SLD, "Type3SLD"},
{ConnectedDeviceType::Type3MLD, "Type3MLD"},
+ {ConnectedDeviceType::PBRComponent, "PBRComponent"},
});
NLOHMANN_JSON_SERIALIZE_ENUM(HostDeviceType, {
diff --git a/redfish-core/include/generated/enums/power_distribution.hpp b/redfish-core/include/generated/enums/power_distribution.hpp
index b551f7e..8caa25d 100644
--- a/redfish-core/include/generated/enums/power_distribution.hpp
+++ b/redfish-core/include/generated/enums/power_distribution.hpp
@@ -26,6 +26,27 @@
Low,
};
+enum class ExportType{
+ Invalid,
+ Clone,
+ Replacement,
+};
+
+enum class Component{
+ Invalid,
+ All,
+ Manager,
+ ManagerAccounts,
+ PowerDistribution,
+};
+
+enum class ExportSecurity{
+ Invalid,
+ IncludeSensitiveData,
+ HashedDataOnly,
+ ExcludeSensitiveData,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(PowerEquipmentType, {
{PowerEquipmentType::Invalid, "Invalid"},
{PowerEquipmentType::RackPDU, "RackPDU"},
@@ -45,5 +66,26 @@
{TransferSensitivityType::Low, "Low"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportType, {
+ {ExportType::Invalid, "Invalid"},
+ {ExportType::Clone, "Clone"},
+ {ExportType::Replacement, "Replacement"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(Component, {
+ {Component::Invalid, "Invalid"},
+ {Component::All, "All"},
+ {Component::Manager, "Manager"},
+ {Component::ManagerAccounts, "ManagerAccounts"},
+ {Component::PowerDistribution, "PowerDistribution"},
+});
+
+NLOHMANN_JSON_SERIALIZE_ENUM(ExportSecurity, {
+ {ExportSecurity::Invalid, "Invalid"},
+ {ExportSecurity::IncludeSensitiveData, "IncludeSensitiveData"},
+ {ExportSecurity::HashedDataOnly, "HashedDataOnly"},
+ {ExportSecurity::ExcludeSensitiveData, "ExcludeSensitiveData"},
+});
+
}
// clang-format on
diff --git a/redfish-core/include/generated/enums/processor.hpp b/redfish-core/include/generated/enums/processor.hpp
index 60e2d5f4..ff976d9 100644
--- a/redfish-core/include/generated/enums/processor.hpp
+++ b/redfish-core/include/generated/enums/processor.hpp
@@ -68,6 +68,7 @@
GDDR5,
GDDR5X,
GDDR6,
+ GDDR7,
DDR,
DDR2,
DDR3,
@@ -180,6 +181,7 @@
{ProcessorMemoryType::GDDR5, "GDDR5"},
{ProcessorMemoryType::GDDR5X, "GDDR5X"},
{ProcessorMemoryType::GDDR6, "GDDR6"},
+ {ProcessorMemoryType::GDDR7, "GDDR7"},
{ProcessorMemoryType::DDR, "DDR"},
{ProcessorMemoryType::DDR2, "DDR2"},
{ProcessorMemoryType::DDR3, "DDR3"},
diff --git a/redfish-core/include/generated/enums/storage.hpp b/redfish-core/include/generated/enums/storage.hpp
index d7d4a84..8c1cabc 100644
--- a/redfish-core/include/generated/enums/storage.hpp
+++ b/redfish-core/include/generated/enums/storage.hpp
@@ -58,6 +58,13 @@
CommandUnsupported,
};
+enum class VolumeAssignmentPolicy{
+ Invalid,
+ Unassigned,
+ Supervisor,
+ WeightedRoundRobin,
+};
+
NLOHMANN_JSON_SERIALIZE_ENUM(ResetToDefaultsType, {
{ResetToDefaultsType::Invalid, "Invalid"},
{ResetToDefaultsType::ResetAll, "ResetAll"},
@@ -109,5 +116,12 @@
{ConfigLockOptions::CommandUnsupported, "CommandUnsupported"},
});
+NLOHMANN_JSON_SERIALIZE_ENUM(VolumeAssignmentPolicy, {
+ {VolumeAssignmentPolicy::Invalid, "Invalid"},
+ {VolumeAssignmentPolicy::Unassigned, "Unassigned"},
+ {VolumeAssignmentPolicy::Supervisor, "Supervisor"},
+ {VolumeAssignmentPolicy::WeightedRoundRobin, "WeightedRoundRobin"},
+});
+
}
// clang-format on