Add Software.Asset interface
SoftwareInventory schema exposes `Manufacturer` and `ReleaseDate`
property.
[1] https://redfish.dmtf.org/schemas/v1/SoftwareInventory.v1_11_0.json
Change-Id: I0930ce0799ef14a288351424a07c8b59493885c2
Signed-off-by: Prithvi Pai <ppai@nvidia.com>
diff --git a/gen/xyz/openbmc_project/Software/Asset/meson.build b/gen/xyz/openbmc_project/Software/Asset/meson.build
new file mode 100644
index 0000000..4c5272f
--- /dev/null
+++ b/gen/xyz/openbmc_project/Software/Asset/meson.build
@@ -0,0 +1,40 @@
+# Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Software/Asset'
+
+generated_sources += custom_target(
+ 'xyz/openbmc_project/Software/Asset__cpp'.underscorify(),
+ input: [
+ '../../../../../yaml/xyz/openbmc_project/Software/Asset.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/Software/Asset',
+ ],
+ 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/Software/meson.build b/gen/xyz/openbmc_project/Software/meson.build
index 1ec1ec1..96ba49b 100644
--- a/gen/xyz/openbmc_project/Software/meson.build
+++ b/gen/xyz/openbmc_project/Software/meson.build
@@ -4,6 +4,7 @@
subdir('ActivationProgress')
subdir('ApplyOptions')
subdir('ApplyTime')
+subdir('Asset')
subdir('ExtendedVersion')
subdir('Image')
subdir('MinimumVersion')
@@ -136,6 +137,30 @@
)
generated_markdown += custom_target(
+ 'xyz/openbmc_project/Software/Asset__markdown'.underscorify(),
+ input: [
+ '../../../../yaml/xyz/openbmc_project/Software/Asset.interface.yaml',
+ ],
+ output: ['Asset.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/Software/Asset',
+ ],
+ install: should_generate_markdown,
+ install_dir: [inst_markdown_dir / sdbusplus_current_path],
+ build_by_default: should_generate_markdown,
+)
+
+generated_markdown += custom_target(
'xyz/openbmc_project/Software/ExtendedVersion__markdown'.underscorify(),
input: [
'../../../../yaml/xyz/openbmc_project/Software/ExtendedVersion.interface.yaml',
diff --git a/yaml/xyz/openbmc_project/Software/Asset.interface.yaml b/yaml/xyz/openbmc_project/Software/Asset.interface.yaml
new file mode 100644
index 0000000..6031c9a
--- /dev/null
+++ b/yaml/xyz/openbmc_project/Software/Asset.interface.yaml
@@ -0,0 +1,21 @@
+description: >
+ Implement to provide software asset attributes.
+
+properties:
+ - name: Manufacturer
+ type: string
+ description: >
+ This property shall represent the name of the manufacturer or producer
+ of this software
+ flags:
+ - readonly
+ - name: ReleaseDate
+ type: string
+ description: >
+ Release date of the software in ISO 8601 format, either as YYYYMMDD or
+ YYYYMMDDThhmmssZ. Where 'T' is a literal character to separate date
+ fields from time and 'Z' is a literal character to indicate UTC. If
+ the time of day is unknown, the time of day portion of the property
+ shall contain `00:00:00Z`.
+ flags:
+ - readonly