Source code for insights.parsers.openvswitch_other_config

"""
OpenvSwitchOtherConfig - command ``ovs-vsctl -t 5 get Open_vSwitch . other_config``
===================================================================================

Class OpenvSwitchOtherConfig process the output of the following OpenvSwitch command:

ovs-vsctl -t 5 get Open_vSwitch . other_config


Sample input::

    {dpdk-init="true", dpdk-lcore-mask="30000003000", dpdk-socket-mem="4096,4096", pmd-cpu-mask="30000003000"}

Examples:

    >>> type(ovs_other_conf)
    <class 'insights.parsers.openvswitch_other_config.OpenvSwitchOtherConfig'>
    >>> ovs_other_conf.get("dpdk-init")
    true
    >>> ovs_other_conf["dpdk-lcore-mask"]
    30000003000
    >>> dpdk-socket-mem in ovs_other_conf
    True

"""

from .. import parser, LegacyItemAccess, CommandParser
from insights.specs import Specs
from . import optlist_to_dict


[docs] @parser(Specs.openvswitch_other_config) class OpenvSwitchOtherConfig(LegacyItemAccess, CommandParser): """Parses output of the ovs-vsctl -t 5 get Open_vSwitch . other_config command"""
[docs] def parse_content(self, content): self.data = {} one_line_content = ''.join(content).strip() if one_line_content.startswith("{"): new_line = one_line_content.strip("{}") if new_line: self.data = optlist_to_dict(new_line, opt_sep=", ", strip_quotes=True)