Name Date Size #Lines LOC

..Today-

inc/H20-Sep-2022-216158

src/H18-Nov-2024-1,2111,033

subprojects/H24-May-2022-2115

.clang-formatH A D19-Dec-20243.7 KiB137135

.gitignoreH A D24-May-202226 53

LICENSEH A D24-May-2022558 1410

OWNERSH A D13-Nov-20241.7 KiB4944

README.mdH A D12-Dec-20221.3 KiB3221

meson.buildH A D13-Nov-20241.9 KiB6254

meson.optionsH A D16-Aug-2023117 54

srvcfg-manager.serviceH A D24-May-2022260 1310

README.md

1# Service config manager
2
3The service config manager provides a D-Bus interface to manage BMC services as
4described by the [service management D-Bus interfaces][].
5
6The configuration settings are intended to persist across BMC reboots.
7
8An example use case for this service is BMCWeb's implementation of the Redfish
9NetworkProtocol schema.
10
11[service management d-bus interfaces]:
12  https://github.com/openbmc/phosphor-dbus-interfaces/tree/master/yaml/xyz/openbmc_project/Control/Service
13[bmcweb's implementation of the redfish networkprotocol schema]:
14  https://github.com/openbmc/bmcweb/blob/master/redfish-core/lib/network_protocol.hpp
15
16## Design
17
18Implementation details are described in the [D-Bus interface README].
19
20The service config manager generally makes configuration changes to `systemd`
21units via D-Bus interfaces.
22
23The design pattern to add new services or controls is:
24
25- Determine if the service you want to control is socket activated.
26- To control the `Running` and `Enabled` properties of a service:
27  - For a service which uses socket activation, control the socket.
28  - For other services, control the service unit itself.
29
30[d-bus interface readme]:
31  https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Control/Service/README.md
32