)]}'
{
  "commit": "79c5ff08d764e025d38c701ac2cc6455f620cd7a",
  "tree": "46f4a7dcca73f3f40814eb7a797e192f1ea4ba08",
  "parents": [
    "7c9cfa12a230ea5420fcfcdadf5eadeca0162e39"
  ],
  "author": {
    "name": "Josh Lehan",
    "email": "krellan@google.com",
    "time": "Sat Jun 25 20:17:41 2022 -0700"
  },
  "committer": {
    "name": "Rahul Kapoor",
    "email": "rahulkpr@google.com",
    "time": "Wed Aug 02 19:52:54 2023 +0000"
  },
  "message": "bmcweb: New LogServices feature ExternalStorer\n\nThis is a new feature that lets external users dynamically update\ncertain areas of the Redfish tree at runtime. The first usage is in\nLogServices.\n\nDesign document:\nhttps://gerrit.openbmc-project.xyz/c/openbmc/docs/+/52150\nAPI/examples/tutorial document:\nhttps://gerrit.openbmc-project.xyz/c/openbmc/docs/+/52295\n\nThe GET and POST commands are complete, the remaining commands will\nbe implemented soon. The integration hook is complete for LogServices.\nThe filesystem is used for all backing storage.\n\nTested: The unit tests pass. With this script providing appropriate\nexternal input, the Redfish Service Validator passes:\nhttps://gist.github.com/Krellan/f511e65166ebe5435fde3f847d28fe73\n\nPatch Tracking Bug: b/236410938\nUpstream info / review: https://gerrit.openbmc.org/c/openbmc/bmcweb/+/51303/38\nUpstream-Status: Denied\nJustification:\nEd disagrees with the architecture of this feature, and wants it to be\nsomething that can globally apply to all of the Redfish tree instead,\nnot just to specific endpoints patched to become ExternalStorer hooks.\nHe also wants it to be schema-aware, performing schema validation,\ninstead of just accepting any valid JSON.\n\nChange-Id: Iec65d9ff421cbe77afd5f47cbcb6e4330caa0ef1\nSigned-off-by: Josh Lehan \u003ckrellan@google.com\u003e\n\n%% original patch: 0001-bmcweb-New-LogServices-feature-ExternalStorer.patch\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9c42e7a6fe6907ab40a0655dd87ec82ad0746728",
      "old_mode": 33188,
      "old_path": "meson.build",
      "new_id": "f444e30ab016bd6438353dfafe7da95468a22f8f",
      "new_mode": 33188,
      "new_path": "meson.build"
    },
    {
      "type": "modify",
      "old_id": "26a8f8bd0c8eeba68704ed9e460db0ff9150fbed",
      "old_mode": 33188,
      "old_path": "redfish-core/include/redfish.hpp",
      "new_id": "cbdf28b6f5b87f5858d1cc89af4adc5927809555",
      "new_mode": 33188,
      "new_path": "redfish-core/include/redfish.hpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "976a7ac58ad124314bbf4bf26e9871aae2a42419",
      "new_mode": 33188,
      "new_path": "redfish-core/lib/external_storer.hpp"
    },
    {
      "type": "modify",
      "old_id": "f54939798aaef2087b9e705a9ad49470d4a0e300",
      "old_mode": 33188,
      "old_path": "redfish-core/lib/log_services.hpp",
      "new_id": "b89cfa3e46c333661162fe9c2d7e3e930a28355c",
      "new_mode": 33188,
      "new_path": "redfish-core/lib/log_services.hpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "113c36e723995c2de3a0565221b75391bd394563",
      "new_mode": 33188,
      "new_path": "test/redfish-core/lib/external_storer_test.cpp"
    }
  ]
}
