class JoobQ::YamlConfigLoader

Overview

YAML configuration loader for JoobQ

Defined in:

joobq/yaml_config_loader.cr

Constant Summary

DEFAULT_SEARCH_PATHS = ["./joobq.yml", "./config/joobq.yml", "./config/joobq.yaml", "./joobq.yaml", ENV["JOOBQ_CONFIG_PATH"]?, ENV["JOOBQ_CONFIG_FILE"]?, "~/.joobq/joobq.yml", "/etc/joobq/joobq.yml"].compact

Configuration file search paths (in order of precedence)

ENV_FILE_PATTERNS = ["./config/joobq.#{ENV["JOOBQ_ENV"]? || "development"}.yml", "./config/joobq.#{ENV["RACK_ENV"]? || "development"}.yml", "./config/joobq.#{ENV["CRYSTAL_ENV"]? || "development"}.yml"]

Environment-specific file patterns

Class Method Summary

Class Method Detail

def self.find_config_file : String | Nil #

[View source]
def self.load_auto : Configure #

Auto-discovery methods


[View source]
def self.load_from_cli_args(args : Array(String)) : Configure #

CLI and programmatic configuration methods


[View source]
def self.load_from_file(path : String) : Configure #

Main entry points


[View source]
def self.load_from_sources(sources : Array(String)) : Configure #

Load from multiple sources with merging


[View source]
def self.load_from_string(yaml_content : String, source_path : String | Nil = nil) : Configure #

[View source]
def self.load_with_env_overrides(base_path : String | Nil = nil, env : String | Nil = nil) : Configure #

Load with environment override support


[View source]