SnmpKit.SnmpSim.Config (snmpkit v0.6.4)
Configuration management for SnmpSim with support for JSON and YAML files.
This module provides a convenient way to configure SnmpSim using external configuration files, making it especially useful for container deployments and development environments.
Supported formats
- JSON files
- YAML files (requires
yaml_elixir
dependency) - Elixir configuration maps
Usage
# Load from JSON file
{:ok, config} = SnmpKit.SnmpSim.Config.load_from_file("config/devices.json")
{:ok, devices} = SnmpKit.SnmpSim.Config.start_from_config(config)
# Load from YAML file
{:ok, config} = SnmpKit.SnmpSim.Config.load_yaml("config/devices.yaml")
{:ok, devices} = SnmpKit.SnmpSim.Config.start_from_config(config)
# Load from environment
{:ok, config} = SnmpKit.SnmpSim.Config.load_from_environment()
{:ok, devices} = SnmpKit.SnmpSim.Config.start_from_config(config)
Summary
Functions
Loads configuration from environment variables.
Loads configuration from a JSON file.
Loads configuration from a YAML file.
Creates a sample configuration for reference.
Starts devices and services based on the provided configuration.
Validates a configuration map and provides helpful error messages.
Writes a sample configuration to a file.
Functions
Loads configuration from environment variables.
This function reads common environment variables and creates a configuration map suitable for starting devices and configuring the system.
Loads configuration from a JSON file.
Loads configuration from a YAML file.
Requires the yaml_elixir
dependency to be added to your mix.exs:
{:yaml_elixir, "~> 2.9"}
Creates a sample configuration for reference.
Starts devices and services based on the provided configuration.
Validates a configuration map and provides helpful error messages.
Writes a sample configuration to a file.