YAML をローカルで検証する良い方法はありますか? デプロイ時の本番環境で YAML の問題がいくつかあります。
https://gist.github.com/anonymous/78bed61832ff72ff3426
あまり有益ではありませんが、これが発生するファイルを知りたいです.yamlの問題のデバッグをもう少し改善することは可能ですか?
また、これが本番環境でのみ発生し、開発環境では発生しない理由もわかりません。
YAML をローカルで検証する良い方法はありますか? デプロイ時の本番環境で YAML の問題がいくつかあります。
https://gist.github.com/anonymous/78bed61832ff72ff3426
あまり有益ではありませんが、これが発生するファイルを知りたいです.yamlの問題のデバッグをもう少し改善することは可能ですか?
また、これが本番環境でのみ発生し、開発環境では発生しない理由もわかりません。
これを行うための 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
私の経験からすると、YAML のバグを追跡するのは簡単ではありません。通常、 yamllintなどのオンライン ツールは、Psych が提供するものと同様のエラー メッセージを表示します。
私がアドバイスできる唯一のことは、ローカル/実稼働 YAML ファイルからの差分をチェックし、何が変更されたかを確認することです。