在rails中,我想找到一个增加的数字,或者至少随着每个部署或git commit / push的变化而增加。
我需要这个来缓存破坏CDN。
config.action_controller.asset_path = proc { |asset_path|
"/rel-#{RELEASE_NUMBER}#{asset_path}"
}
有什么建议吗?感谢
答案 0 :(得分:1)
喜欢什么?
def release_sha
@release_sha ||= `git log -1 --pretty=format:%h 2>/dev/null`
end
使用这种方法可以做得更好,并获得不同文件夹/文件的SHA。
def release_sha(path=nil)
@release_sha ||= {}
@release_sha[path] ||= `git log -1 --pretty=format:%h #{path} 2>/dev/null`
end
然后将其称为release_sha('/public/images')
,以获取该文件夹的最新SHA。
答案 1 :(得分:0)
只需使用当前时间戳(纪元)..
Time.now.usec
您可以将此值写入常量并将其放在config / initlaizers / cache_buster.rb中,例如使用脚本(或编写您自己的rake任务)。