Source code for insights.parsers.octavia

"""
Octavia - file ``octavia.conf``
===============================
"""
from insights.core import IniConfigFile
from insights.core.plugins import parser
from insights.core.filters import add_filter
from insights.specs import Specs

VALID_KEYS = [
    '[',
    'active_connection_max_retries',
    'active_connection_rety_interval',
    'admin_log_targets',
    'administrative_log_facility',
    'agent_request_read_timeout',
    'agent_server_ca',
    'agent_server_cert',
    'agent_server_network_dir',
    'agent_server_network_file',
    'agent_tls_protocol',
    'allow_pagination',
    'allow_ping_health_monitors',
    'allow_sorting',
    'allow_tls_terminated_listeners',
    'allow_vip_network_id',
    'allow_vip_port_id',
    'allow_vip_subnet_id',
    'amp_active_retries',
    'amp_active_wait_sec',
    'amp_boot_network_list',
    'amp_flavor_id',
    'amp_image_id',
    'amp_image_owner_id',
    'amp_image_tag',
    'amp_secgroup_list',
    'amp_ssh_access_allowed',
    'amphora_driver',
    'amphora_expiry_age',
    'amphora_udp_driver',
    'anti_affinity_policy',
    'api_base_uri',
    'audit_map_file',
    'auth_strategy',
    'auth_type',
    'availability_zone',
    'base_cert_dir',
    'base_path',
    'bind_host',
    'bind_ip',
    'bind_port',
    'build_active_retries',
    'build_rate_limit',
    'build_retry_interval',
    'ca_certificates_file',
    'cafile',
    'cert_generator',
    'cert_manager',
    'cert_validity_time',
    'cleanup_interval',
    'client_ca',
    'client_cert',
    'compute_driver',
    'connection_logging',
    'connection_max_retries',
    'connection_retry_interval',
    'controller_ip_port_list',
    'debug',
    'default_health_monitor_quota',
    'default_listener_quota',
    'default_load_balancer_quota',
    'default_member_quota',
    'default_pool_quota',
    'default_provider_driver',
    'disable_local_log_storage',
    'disable_revert',
    'distributor_driver',
    'driver',
    'enable_anti_affinity',
    'enable_proxy_headers_parsing',
    'enabled',
    'enabled_provider_agents',
    'enabled_provider_drivers',
    'endpoint_type',
    'engine',
    'failover_threads',
    'forward_all_logs',
    'get_socket_path',
    'graceful_shutdown_timeout',
    'haproxy_cmd',
    'haproxy_stick_size',
    'haproxy_template',
    'health_check_interval',
    'health_update_driver',
    'health_update_threads',
    'heartbeat_interval',
    'heartbeat_timeout',
    'ignore_req_list',
    'insecure',
    'lb_network_interface',
    'load_balancer_expiry_age',
    'loadbalancer_topology',
    'log_dir',
    'log_file',
    'log_protocol',
    'log_queue_size',
    'log_retry_count',
    'log_retry_interval',
    'logging_template_override',
    'max_process_warning_percent',
    'max_retries',
    'max_workers',
    'memcached_servers',
    'network_driver',
    'octavia_plugins',
    'pagination_max_limit',
    'policy_file',
    'port_detach_timeout',
    'provider_agent_shutdown_timeout',
    'random_amphora_name_length',
    'region_name',
    'respawn_count',
    'respawn_interval',
    'rest_request_conn_timeout',
    'rest_request_read_timeout',
    'retry_interval',
    'rpc_thread_pool_size',
    'server_ca',
    'service_name',
    'signing_digest',
    'sock_rlimit',
    'spare_amphora_pool_size',
    'spare_check_interval',
    'stats_max_processes',
    'stats_request_timeout',
    'stats_socket_path',
    'stats_update_driver',
    'stats_update_threads',
    'status_max_processes',
    'status_request_timeout',
    'status_socket_path',
    'status_update_threads',
    'storage_path',
    'tenant_log_targets',
    'topic',
    'topics',
    'udp_connect_min_interval_health_monitor',
    'use_oslo_messaging',
    'use_upstart',
    'user_data_config_drive',
    'user_log_facility',
    'user_log_format',
    'volume_create_max_retries',
    'volume_create_retry_interval',
    'volume_create_timeout',
    'volume_driver',
    'volume_size',
    'volume_type',
    'vrrp_advert_int',
    'vrrp_check_interval',
    'vrrp_fail_count',
    'vrrp_garp_refresh_count',
    'vrrp_garp_refresh_interval',
    'vrrp_success_count',
    'workers'
]

add_filter(Specs.octavia_conf, VALID_KEYS)


[docs] @parser(Specs.octavia_conf) class OctaviaConf(IniConfigFile): """ Provides a parser arser for file ``/var/lib/config-data/puppet-generated/octavia/etc/octavia/octavia.conf``. Filters have been added to this parser to ensure that the necessary data will be collected. Sample input data:: [DEFAULT] # Print debugging output (set logging level to DEBUG instead of default WARNING level). debug = False [api_settings] bind_host = 127.0.0.1 bind_port = 9876 # Default provider driver default_provider_driver = amphora # The minimum health monitor delay interval for UDP-CONNECT Health Monitor type udp_connect_min_interval_health_monitor = 3 Examples: >>> type(octavia_conf) <class 'insights.parsers.octavia.OctaviaConf'> >>> octavia_conf.defaults()['debug'] == 'False' True >>> octavia_conf.get('api_settings', 'bind_port') == '9876' True >>> octavia_conf.has_option('api_settings', 'missing_key') False """ pass