From e4a7fe5205ee27bed2a22e71ff854a09e13008d2 Mon Sep 17 00:00:00 2001 From: Isha Sahni Date: Wed, 23 Jul 2025 01:35:06 -0500 Subject: [PATCH] Add Provisioning YAML File Signed-off-by: Isha Sahni --- .../Provisioning/Provisioning/meson.build | 40 +++++++++++++++++++ .../openbmc_project/Provisioning/meson.build | 29 ++++++++++++++ gen/xyz/openbmc_project/meson.build | 1 + .../Provisioning/Provisioning.interface.yaml | 28 +++++++++++++ 4 files changed, 98 insertions(+) create mode 100644 gen/xyz/openbmc_project/Provisioning/Provisioning/meson.build create mode 100644 gen/xyz/openbmc_project/Provisioning/meson.build create mode 100644 yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml diff --git a/gen/xyz/openbmc_project/Provisioning/Provisioning/meson.build b/gen/xyz/openbmc_project/Provisioning/Provisioning/meson.build new file mode 100644 index 00000000..2e2b3dcc --- /dev/null +++ b/gen/xyz/openbmc_project/Provisioning/Provisioning/meson.build @@ -0,0 +1,40 @@ +# Generated file; do not modify. + +sdbusplus_current_path = 'xyz/openbmc_project/Provisioning/Provisioning' + +generated_sources += custom_target( + 'xyz/openbmc_project/Provisioning/Provisioning__cpp'.underscorify(), + input: [ + '../../../../../yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml', + ], + output: [ + 'common.hpp', + 'server.hpp', + 'server.cpp', + 'aserver.hpp', + 'client.hpp', + ], + depend_files: sdbusplusplus_depfiles, + command: [ + sdbuspp_gen_meson_prog, + '--command', + 'cpp', + '--output', + meson.current_build_dir(), + '--tool', + sdbusplusplus_prog, + '--directory', + meson.current_source_dir() / '../../../../../yaml', + 'xyz/openbmc_project/Provisioning/Provisioning', + ], + install: should_generate_cpp, + install_dir: [ + get_option('includedir') / sdbusplus_current_path, + get_option('includedir') / sdbusplus_current_path, + false, + get_option('includedir') / sdbusplus_current_path, + get_option('includedir') / sdbusplus_current_path, + ], + build_by_default: should_generate_cpp, +) + diff --git a/gen/xyz/openbmc_project/Provisioning/meson.build b/gen/xyz/openbmc_project/Provisioning/meson.build new file mode 100644 index 00000000..a0ab4855 --- /dev/null +++ b/gen/xyz/openbmc_project/Provisioning/meson.build @@ -0,0 +1,29 @@ +# Generated file; do not modify. +subdir('Provisioning') + +sdbusplus_current_path = 'xyz/openbmc_project/Provisioning' + +generated_markdown += custom_target( + 'xyz/openbmc_project/Provisioning/Provisioning__markdown'.underscorify(), + input: [ + '../../../../yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml', + ], + output: ['Provisioning.md'], + depend_files: sdbusplusplus_depfiles, + command: [ + sdbuspp_gen_meson_prog, + '--command', + 'markdown', + '--output', + meson.current_build_dir(), + '--tool', + sdbusplusplus_prog, + '--directory', + meson.current_source_dir() / '../../../../yaml', + 'xyz/openbmc_project/Provisioning/Provisioning', + ], + install: should_generate_markdown, + install_dir: [inst_markdown_dir / sdbusplus_current_path], + build_by_default: should_generate_markdown, +) + diff --git a/gen/xyz/openbmc_project/meson.build b/gen/xyz/openbmc_project/meson.build index 01c93d8c..924e4167 100644 --- a/gen/xyz/openbmc_project/meson.build +++ b/gen/xyz/openbmc_project/meson.build @@ -27,6 +27,7 @@ subdir('Object') subdir('ObjectMapper') subdir('PFR') subdir('PLDM') +subdir('Provisioning') subdir('ScheduledTime') subdir('Sensor') subdir('Smbios') diff --git a/yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml b/yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml new file mode 100644 index 00000000..c8939ac2 --- /dev/null +++ b/yaml/xyz/openbmc_project/Provisioning/Provisioning.interface.yaml @@ -0,0 +1,28 @@ +description: > + Interface to represent the provisioning status of the BMC. Provides a + property to indicate whether the BMC is provisioned, and methods to initiate + provisioning and check the peer BMC connection. +properties: + - name: ProvisioningState + type: boolean + flags: + - readonly + default: false + description: > + True means the BMC is in a provisioned state. + +methods: + - name: StartProvisioning + description: > + Starts the provisioning process and updates the ProvisioningState + accordingly. + + - name: CheckPeerBMCConnection + description: > + Performs a check to determine if the peer BMC is reachable and and if + already provisioned. + returns: + - type: boolean + description: > + True if the peer BMC is reachable and provisioned. false if peer + BMC is not reachable or not-provisioned.