| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added support for watch and callback on 'interface added'
signal for the specified object paths.
Added mako scripts for events to auto create callback
and watch objects for the specified object path groups.
Clients specify object paths to watch and callbacks to
invoke in the config.yaml file
Change-Id: I3fa2ea1520649120b927c0cb83a16e5cace2f24e
Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Spelling errors found using github.com/lucasdemarchi/codespell
A tool to fix common misspellings.
This tool is licensed under GNU General Public License, version 2.
Change-Id: I78f191f26da14203dc21c97d4fc4a31f95ffc95f
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This callback class will create an error log with
exactly 1 metadata field, which takes a string. This
metadata field will be filled in with the property paths,
names, and values of the properties that passed the
condition checks that caused the callback to be called
in the first place.
Tested: Ran with YAML rules that used this callback and
checked that everything worked as specified.
Change-Id: Ib37206c63385939c583a09e7ba979d6e016691f6
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a count condition is a oneshot, it will only
trigger the callback the first time the condition
is true. The condition needs to evaluate to false
at least once to rearm the callback.
A use case for this would be when a group of properties
is being watched for a subset of them hit a certain value.
Even though every properties changed signal for every property
in the group would check the condition, only the first time
the condition is true would the callback be issued.
This behavior is specified with a 'oneshot: true' entry in
the YAML. If not present, it defaults to false which is
the original behavior.
Tested: Verify this does indeed do what is advertised by
modifying condition rules to consistently pass
and checking behavior.
Change-Id: Ie185621e86c605234bf329a5f38317267dbb6fb6
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Add parser support for template rendering of events.
Also defines the EventBase and Event classes.
EventBase is parent of Event.
Change-Id: I6b07b415acf510a8437529095bd489c0af73ddf5
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
| |
Change-Id: I16cbfa2a3ed646f3ca0aeee0e71b3ada39062941
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
| |
The callout to resolve is specified in the YAML.
Change-Id: If613fae1959c6a54279b2a50c7d858f3e7d831b9
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Spelling errors found using github.com/lucasdemarchi/codespell
A tool to fix common misspellings.
This tool is licensed under GNU General Public License, version 2.
Change-Id: I83c844373ea41d762367085cb16b01d31676e33d
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
| |
Added support for metadata in elog.hpp, elog mako file, and pdmgen.
This metadata will be added with the error log.
Change-Id: Iaf0fe24d71f6bdd02b51df208b2c1d66c68319d3
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Added support for "callback: elog" in PDM.
templates/elog.mako.cpp is used to generate the Elog call.
templates/errors.mako.hpp is used to generate the errors.hpp
used by generated.hpp to include any error.hpp files like
"xyz/openbmc_project/Common/error.hpp"
Change-Id: Id0ae3aca4282095f58a8939b70e398bec706d7f5
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
| |
Fix a number of bugs related to rendering and instantiation of
string and bool templates.
Change-Id: Ic75842b4016f4d96bf5850f9c4ad778d82e075ed
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
journald ignores lowercase metadata keys so require them
to be uppercase. Abort the config file parse when lowercase
keys are found.
Change-Id: Icffffdc6680b4d305329c3395f8e2fda6210964f
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Deferrable callbacks delay callback invocation until a
pre configured length of time has elapsed. One example
scenario where deferrable callbacks help is to avoid
oscillation when testing a condition and making callbacks
frequently.
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I180c99b57ec1c9bde4da76d947a026f809341c8a
|
|
|
|
|
|
|
|
|
| |
Add support for a method callback. The method callback enables
arbitrary DBus method calls. A sample use case could be
starting a systemd unit via the sytemd DBus API.
Change-Id: If25131d11497c82f862ae1f47da066c5fd8b2e2e
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add core support for rendering argument lists. Add a number of
decorators like:
-literal: Render a literal value.
-cast: Render a C++ cast.
-fixbool: Work around yaml boolean capitalization.
-quote: Quote a string literal.
Change-Id: I4364d9f7a8cb7bb932d347d34bfabb88e694020a
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
| |
Callbacks must ultimately be triggered when a property
is updated by a watch. Add that support.
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I20130a11c19ddcf2c4ae45800f2068b31950bcd6
|
|
|
|
|
|
|
| |
Enable conditional application of callbacks.
Change-Id: I9d765e5f585aac40994b65da3b51ea891beae9bf
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
| |
Allow named collections of callbacks to be defined and used anywhere
callbacks are used.
Change-Id: I3224aa06b2250e9a055bc70d20c186caecd033af
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
Callbacks are the response in the PDM 'trigger->response' model.
Add general support for implementing callbacks and implement
a log to systemd journal using that framework.
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Change-Id: I8bead5368ee5472a02b47e8bba9e9df3a1f346bc
|
|
|
|
|
|
|
|
|
| |
Property watches cache DBus property values given an externally
supplied index of property names and paths, in an externally
supplied storage location.
Change-Id: I155081da88c3ab0e4f6a13b012fc9719203b1888
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
Add support for defining groups of DBus properties. Groups are
a list of property/interface/metadata tuples. Metadata can be used to
give a property context when required.
Change-Id: I5fc27f4d815b53332a2ddea2d270fde8e355dcbc
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
Add support for defining groups of object paths. Groups are
a list of path/metadata tuples. Metadata can be used to
give a path context when required.
Change-Id: I355ebf76b40f2ffc8d783e94e888b930cde8ee9c
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add logic to parse each yaml file in three stages.
1 - Invoke factory methods for config file directives, generating
more factory methods.
2 - Invoke factory methods from 1 for the full set of renderable
items.
3 - Run 'setup' on all renderable items to resolve item cross
references.
Change-Id: I428a9ae1c41cf65e1efc05f3ec7177375822d772
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Add vars.mk for variable sharing across makefiles.
Stub and rename example YAML file and template.
Content to be re-introduced as support is added.
Move generated C++ to a header file.
Add input YAML path option to configure.
Change-Id: Ia06e392e8b120b1e1d8614046064fa432a6f9e18
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
| |
Add an option for specifying an alternate template for testcases.
Update the output option to include the desired output filename as
well as the directory.
Add an option for specifying the mako template search path.
Change-Id: I88634fee193409b25988eb1e7d7680aa866cc2e9
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Add a basic load/render skeleton.
Add docstrings.
Add multiple file parsing.
Steal indent utility from phosphor-inventory-manager.
Scan YAML for syntax and discard.
Change-Id: I48e5a3923dc1fadceae6241dd6f757388a2f1c51
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
Rename to pdmgen.py in the spirit of phosphor-inventory-manager.
Change-Id: Iaa0a2dadb8c051342e62c9126e5c7b7bef2fcdde
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|