| commit | 1bf712bcd6b8d06a5d412cdf03cdc05cb6d25901 | [log] [tgz] | 
|---|---|---|
| author | Ayushi Smriti <smriti.ayushi@linux.intel.com> | Wed May 13 21:39:25 2020 +0530 | 
| committer | AppaRao Puli <apparao.puli@linux.intel.com> | Fri May 29 18:27:55 2020 +0000 | 
| tree | 58e8179d2b9125768c8936d4c147eca92d36ccb3 | |
| parent | 471a5eb867c6a3e625bc5745edac8e56ad2e549c [diff] | 
EventService:persistent config & subscription info
This commit is to persist EventService configuration and subscription
information across the bmcweb service restart or bmc reboot by
reading/writing config store data to the json file
(location: /var/lib/bmcweb/eventservice_config.json) and loads this
while initializing bmcweb EventService.
URI's:
/redfish/v1/EventService
/redfish/v1/EventService/Subscriptions
/redfish/v1/EventService/Subscriptions/<id>
Tested:
 - Validated initialization and reading of config and subscription info
   from persist store.
 - Validated updation and writing of config and subscription info to the
   persist store:
      - Added new subscription using POST and validated using GET.
      - Validated delete subscription.
 - Validated subscription list is persistent after multiple bmc reboots
      - Verified by GET req on subscription collection and getting
        specific subscription id's.
 - Ran redfish validator successfully
      - Created some subscriptions
      - Rebooted BMC
      - Previous subscriptions were intact
      - Ran validator and verified.
Change-Id: I9f044887b0c5b7559be58a6564b04585dc384be2
Signed-off-by: Ayushi Smriti <smriti.ayushi@linux.intel.com>
Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>
This component attempts to be a "do everything" embedded webserver for openbmc.
At this time, the webserver implements a few interfaces:
BMCWeb is configured by setting -D flags that correspond to options in bmcweb/CMakeLists.txt and then compiling.  For example, cmake -DBMCWEB_ENABLE_KVM=NO ... followed by make.  The option names become C++ preprocessor symbols that control which code is compiled into the program.
When BMCWeb starts running, it reads persistent configuration data (such as UUID and session data) from a local file. If this is not usable, it generates a new configuration.
When BMCWeb SSL support is enabled and a usable certificate is not found, it will generate a self-sign a certificate before launching the server.  The keys are generated by the secp384r1 algorithm.  The certificate
C=US, O=OpenBMC, CN=testhost,SHA-256 algorithm.