open-wripeはamazonSQSを利用して非同期化処理を行っています。そのためamazonSQSの情報を設定ファイルに記述しないとメモの保存時などにエラーが出てしまいます。そこで、amazonSQSへのアクセスを回避するようにソースコードを修正してみました。
https://github.com/masuidrive/open-wripe/pull/5/files
基本的に上記URL通りに修正しましたが、それだけでは回避しきれないようなのでさらに修正しています。
vim Gemfile --------------------------------------------------------------------------------- ...(略) gem 'settingslogic' #末尾に追記 ---------------------------------------------------------------------------------
vim app/controllers/application_controller.rb --------------------------------------------------------------------------------- ...(略) #around_filter :active_record_queue_filter around_filter :active_record_queue_filter if !Settings.flags.disable_ar_async ...(略) ---------------------------------------------------------------------------------
vim app/models/settings.rb --------------------------------------------------------------------------------- class Settings < Settingslogic source "#{Rails.root}/config/application.yml" namespace Rails.env end ---------------------------------------------------------------------------------
vim config/application.yml --------------------------------------------------------------------------------- defaults: &defaults flags: disable_ar_async: on development: <<: *defaults test: <<: *defaults production: <<: *defaults ---------------------------------------------------------------------------------
vim lib/ar_async.rb --------------------------------------------------------------------------------- ...(略) #asyncメソッドを書き換え def async(methodname, args=[]) message = async_message_dump(methodname, args) if !Settings.flags.disable_ar_async if ActiveRecordAsync.config['inline'] ActiveRecordAsync.async_message_run(message) else if ActiveRecordAsync.async_batch_messages.nil? ActiveRecordAsync.sqs.send_message(message) else ActiveRecordAsync.async_batch_messages << message end end else message = Marshal.load(Base64.decode64(message)) message[:result] = message[:obj].send message[:method], *message[:args] message end end ...(略) ---------------------------------------------------------------------------------