1

有没有在本地验证 YAML 的好方法?我在部署时的生产环境中有几个 YAML 问题,例如

https://gist.github.com/anonymous/78bed61832ff72ff3426

信息量不是很大,我想知道发生这种情况的文件。是否可以进一步改进调试 yaml 问题?

我也不确定为什么这只发生在生产中而不是开发中。

4

2 回答 2

2

我最终编写了一个 rake 任务来执行此操作:例如另存为 /lib/yaml.rake (.rake !不是 .rb)

namespace :yaml do

desc "Test YAML files"
task :check => :environment do
  require 'yaml'

  d = Dir["./**/*.yml"]
  d.each do |file|
    begin
      puts "checking : #{file}"
      f = YAML.load_file(file)
    rescue Exception
      puts "failed to read #{file}: #{$!}"
    end
  end
end
end
于 2013-09-27T10:05:13.627 回答
0

好吧,根据我的经验,在 YAML 中追踪错误并不容易。像yamllint这样的在线工具通常会给出类似 Psych 提供的错误消息。

我唯一能建议的是:检查本地/生产 YAML 文件的差异,看看有什么变化。

于 2013-09-25T19:57:03.803 回答