.rb cookbook-if检查配置['variable']的语句存在

huus2vyu  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(163)

我的食谱中有以下代码:

if File.file?('/etc/test.yml')
  config = YAML.load(File.read('/etc/test.yml'))
 else
  config = Hash.new
 end
 config['license_key'] = node['test']['license']
 config['verbose'] = 0
 config['metrics_process_sample_rate'] = 60
 file '/etc/test.yml' do
  content config.to_yaml
 end

我的代码的工作原理是,如果.yml文件不存在,将创建该文件,并在创建.yml文件时使用三个变量填充该文件。但我试图添加到这段代码中的是确认.yml文件是否已经存在,以及这三个变量是否也存在于.yml文件中。我需要在每个config['variable']=行中添加一个检查,以确认此变量是否存在以及是否缺少该变量,从而将该变量添加到.yml文件中。
如果您对实现此目标所需的代码有任何建议,我们将不胜感激。
非常感谢。

zour9fqk

zour9fqk1#

config = Hash.new
 if File.file?('/etc/test.yml')
  config = YAML.load(File.read('/etc/test.yml'))
 end
  config['license_key'] ||= node['test']['license']
  config['verbose'] ||= 0
  config['metrics_process_sample_rate'] ||= 60

  file '/etc/test.yml' do
   content config.to_yaml
  end

相关问题