From c99f1b91761df588e18cbe8b758e5ddaf4be059b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E5=8D=9A=E4=BA=9E?= Date: Wed, 27 Mar 2024 00:09:46 +0800 Subject: [PATCH] Add carrierwave migration. --- announcement.gemspec | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/announcement.gemspec b/announcement.gemspec index 35577e4..52d04ce 100644 --- a/announcement.gemspec +++ b/announcement.gemspec @@ -300,6 +300,21 @@ if bundle_update_flag c = YAML.dump(r).sub("---\n",'') open("#{env_pwd}/config/mongoid.yml",'w+'){|f| f.write(c)} end + if !File.exist?("#{env_pwd}/.carrierwave_upgraded") + upgrading = File.exist?("#{env_pwd}/.carrierwave_upgrading") + File.open("#{env_pwd}/.carrierwave_upgrading", "w") {} + uploaders = Dir.chdir(env_pwd){ Dir.glob("app/uploaders/*") } + uploaders.each do |uploader| + if upgrading + bundler_with_clean_env{%x[cd #{env_pwd} && git checkout -- #{uploader}]} + end + uploader_contents = File.read("#{env_pwd}/#{uploader}") + uploader_contents.gsub!(/^[ \t]*require[ \t]+['"]carrierwave\/processing\/mime_types['"][ \t]*$/, '') + uploader_contents.gsub!(/^[ \t]*include[ \t]+CarrierWave::MimeTypes[ \t]*$/, '') + File.open("#{env_pwd}/#{uploader}", "w"){|f| f.write(uploader_contents)} + end + File.open("#{env_pwd}/.carrierwave_upgraded", "w") {} + end end # Describe your gem and declare its dependencies: Gem::Specification.new do |s|