Vanity は実験ファイルを代替値などの信頼できる情報源として使用するため、これらのファイルをコピーするのが最も簡単な方法です。(もしかしたら、git サブモジュールがそれらを 1 か所にまとめておくのに役立つでしょうか?)
少しハッキーなことが問題ない場合、これは読み取り専用アプリで機能する可能性があります。
# config/initializers/vanity.rb
::Rails.configuration.after_initialize do
Vanity::Adapters::ActiveRecordAdapter::VanityExperiment.all.each do |experiment|
id = experiment.experiment_id
experiment = Vanity::Experiment::AbTest.new(Vanity.playground, id, id.humanize)
experiment.default(Vanity::Adapters::ActiveRecordAdapter::VanityParticipant.where(experiment_id: id).first.seen)
used_alternatives = Vanity::Adapters::ActiveRecordAdapter::VanityParticipant.where(experiment_id: id).pluck(:seen).uniq
if used_alternatives.size >= 2
# If we have at least 2 alternatives, set them, otherwise use the default true/false
experiment.alternatives(*used_alternatives)
end
Vanity.playground.experiments[id] = experiment
end
end
これにより、データベースから利用可能な情報が取得され (代替名はなく、実験ファイル内の代替のインデックス番号のみが含まれます)、いくつかの仮定が行われますが、データが読み込まれるようです。