如何将环境变量加载到 ruby gem

How to load environment variables into ruby gem

我有一个 ruby gem 从 yaml 文件加载配置变量。目前正在用 YAML.load_file 解析它。在 rails 中,可以像下面这样在 yaml 文件中解析 ruby(例如 settings.yaml):

key: <%= ENV["key"] || "default value" %>

在 ruby gem 中产生类似结果的最佳方法是什么?

这只是 ERB,因此您可以在使用 YAML 解析文件之前通过 ERB 运行 您的文件:

YAML.load(ERB.new(File.read(your_file_path)).result)