log-manager: enable non-standard path for local tests
Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purposes. This required some refactoring throughout as to
how paths were handled.
Tested:
After running tests, `/tmp/phosphor-logging` is populated with
entries. Launching `./builddir/phosphor-log-manager
/tmp/phosphor-logging`, the log-manager will have the entries on
dbus:
```
$ busctl --user tree xyz.openbmc_project.Logging
└─ /xyz
└─ /xyz/openbmc_project
└─ /xyz/openbmc_project/logging
├─ /xyz/openbmc_project/logging/entry
│ ├─ /xyz/openbmc_project/logging/entry/100
│ ├─ /xyz/openbmc_project/logging/entry/101
│ ├─ /xyz/openbmc_project/logging/entry/102
│ ├─ /xyz/openbmc_project/logging/entry/103
```
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I84968edeed0dcf73aaf8bb653060b6d3400b9b7b
diff --git a/extensions/openpower-pels/meson.build b/extensions/openpower-pels/meson.build
index fb6282b..db57568 100644
--- a/extensions/openpower-pels/meson.build
+++ b/extensions/openpower-pels/meson.build
@@ -68,6 +68,7 @@
'severity.cpp',
'user_header.cpp',
'temporary_file.cpp',
+ '../../paths.cpp',
'../../util.cpp',
extra_sources,
)
@@ -86,7 +87,7 @@
libpel_lib = static_library(
'pel',
libpel_sources,
- 'paths.cpp', # paths is separate because it is overridden during test.
+ 'pel_paths.cpp', # paths is separate because it is overridden during test.
include_directories: include_directories('../..', '../../gen'),
cpp_args: extra_args,
dependencies: [
diff --git a/extensions/openpower-pels/paths.hpp b/extensions/openpower-pels/paths.hpp
index 600073a..b837d7c 100644
--- a/extensions/openpower-pels/paths.hpp
+++ b/extensions/openpower-pels/paths.hpp
@@ -1,4 +1,6 @@
#pragma once
+#include "../../paths.hpp"
+
#include <filesystem>
namespace openpower
diff --git a/extensions/openpower-pels/paths.cpp b/extensions/openpower-pels/pel_paths.cpp
similarity index 91%
rename from extensions/openpower-pels/paths.cpp
rename to extensions/openpower-pels/pel_paths.cpp
index 14e5d71..6ea4219 100644
--- a/extensions/openpower-pels/paths.cpp
+++ b/extensions/openpower-pels/pel_paths.cpp
@@ -30,14 +30,14 @@
fs::path getPELIDFile()
{
- fs::path logIDPath{EXTENSION_PERSIST_DIR};
+ fs::path logIDPath{phosphor::logging::paths::extension()};
logIDPath /= fs::path{"pels"} / fs::path{"pelID"};
return logIDPath;
}
fs::path getPELRepoPath()
{
- std::filesystem::path repoPath{EXTENSION_PERSIST_DIR};
+ std::filesystem::path repoPath{phosphor::logging::paths::extension()};
repoPath /= "pels";
return repoPath;
}
diff --git a/extensions/openpower-pels/tools/peltool.cpp b/extensions/openpower-pels/tools/peltool.cpp
index 85fe9d1..810223a 100644
--- a/extensions/openpower-pels/tools/peltool.cpp
+++ b/extensions/openpower-pels/tools/peltool.cpp
@@ -65,7 +65,7 @@
std::string pelLogDir()
{
- return std::string(EXTENSION_PERSIST_DIR) + "/pels/logs";
+ return std::string(phosphor::logging::paths::extension()) + "/pels/logs";
}
/**