configures delayed_jobs
This commit is contained in:
2
Gemfile
2
Gemfile
@@ -43,6 +43,8 @@ gem 'paranoia'
|
|||||||
gem 'savon'
|
gem 'savon'
|
||||||
gem 'dalli'
|
gem 'dalli'
|
||||||
gem 'rollbar', '~> 2.2.1'
|
gem 'rollbar', '~> 2.2.1'
|
||||||
|
gem 'delayed_job_active_record'
|
||||||
|
gem 'daemons'
|
||||||
|
|
||||||
gem 'ahoy_matey', '~> 1.2.1'
|
gem 'ahoy_matey', '~> 1.2.1'
|
||||||
gem 'groupdate' # group temporary data
|
gem 'groupdate' # group temporary data
|
||||||
|
|||||||
@@ -107,9 +107,15 @@ GEM
|
|||||||
simplecov (~> 0.10.0)
|
simplecov (~> 0.10.0)
|
||||||
term-ansicolor (~> 1.3)
|
term-ansicolor (~> 1.3)
|
||||||
thor (~> 0.19.1)
|
thor (~> 0.19.1)
|
||||||
|
daemons (1.2.3)
|
||||||
dalli (2.7.4)
|
dalli (2.7.4)
|
||||||
database_cleaner (1.5.0)
|
database_cleaner (1.5.0)
|
||||||
debug_inspector (0.0.2)
|
debug_inspector (0.0.2)
|
||||||
|
delayed_job (4.0.6)
|
||||||
|
activesupport (>= 3.0, < 5.0)
|
||||||
|
delayed_job_active_record (4.0.3)
|
||||||
|
activerecord (>= 3.0, < 5.0)
|
||||||
|
delayed_job (>= 3.0, < 4.1)
|
||||||
devise (3.5.2)
|
devise (3.5.2)
|
||||||
bcrypt (~> 3.0)
|
bcrypt (~> 3.0)
|
||||||
orm_adapter (~> 0.1)
|
orm_adapter (~> 0.1)
|
||||||
@@ -402,8 +408,10 @@ DEPENDENCIES
|
|||||||
ckeditor
|
ckeditor
|
||||||
coffee-rails (~> 4.1.0)
|
coffee-rails (~> 4.1.0)
|
||||||
coveralls
|
coveralls
|
||||||
|
daemons
|
||||||
dalli
|
dalli
|
||||||
database_cleaner
|
database_cleaner
|
||||||
|
delayed_job_active_record
|
||||||
devise
|
devise
|
||||||
email_spec
|
email_spec
|
||||||
factory_girl_rails
|
factory_girl_rails
|
||||||
|
|||||||
5
bin/delayed_job
Executable file
5
bin/delayed_job
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
|
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))
|
||||||
|
require 'delayed/command'
|
||||||
|
Delayed::Command.new(ARGV).daemonize
|
||||||
@@ -33,5 +33,6 @@ module Participacion
|
|||||||
# Add lib to the autoload path
|
# Add lib to the autoload path
|
||||||
config.autoload_paths << Rails.root.join('lib')
|
config.autoload_paths << Rails.root.join('lib')
|
||||||
config.time_zone = 'Madrid'
|
config.time_zone = 'Madrid'
|
||||||
|
config.active_job.queue_adapter = :delayed_job
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
9
config/initializers/delayed_job_config.rb
Normal file
9
config/initializers/delayed_job_config.rb
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
Delayed::Worker.destroy_failed_jobs = false
|
||||||
|
Delayed::Worker.sleep_delay = 2
|
||||||
|
Delayed::Worker.max_attempts = 3
|
||||||
|
Delayed::Worker.max_run_time = 30.seconds
|
||||||
|
Delayed::Worker.read_ahead = 10
|
||||||
|
Delayed::Worker.default_queue_name = 'default'
|
||||||
|
Delayed::Worker.delay_jobs = !Rails.env.test?
|
||||||
|
Delayed::Worker.raise_signal_exceptions = :term
|
||||||
|
Delayed::Worker.logger = Logger.new(File.join(Rails.root, 'log', 'delayed_job.log'))
|
||||||
22
db/migrate/20150903200440_create_delayed_jobs.rb
Normal file
22
db/migrate/20150903200440_create_delayed_jobs.rb
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
class CreateDelayedJobs < ActiveRecord::Migration
|
||||||
|
def self.up
|
||||||
|
create_table :delayed_jobs, force: true do |table|
|
||||||
|
table.integer :priority, default: 0, null: false # Allows some jobs to jump to the front of the queue
|
||||||
|
table.integer :attempts, default: 0, null: false # Provides for retries, but still fail eventually.
|
||||||
|
table.text :handler, null: false # YAML-encoded string of the object that will do work
|
||||||
|
table.text :last_error # reason for last failure (See Note below)
|
||||||
|
table.datetime :run_at # When to run. Could be Time.zone.now for immediately, or sometime in the future.
|
||||||
|
table.datetime :locked_at # Set when a client is working on this object
|
||||||
|
table.datetime :failed_at # Set when all retries have failed (actually, by default, the record is deleted instead)
|
||||||
|
table.string :locked_by # Who is working on this object (if locked)
|
||||||
|
table.string :queue # The name of the queue this job is in
|
||||||
|
table.timestamps null: true
|
||||||
|
end
|
||||||
|
|
||||||
|
add_index :delayed_jobs, [:priority, :run_at], name: "delayed_jobs_priority"
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.down
|
||||||
|
drop_table :delayed_jobs
|
||||||
|
end
|
||||||
|
end
|
||||||
26
db/schema.rb
26
db/schema.rb
@@ -11,7 +11,7 @@
|
|||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 20150903155146) do
|
ActiveRecord::Schema.define(version: 20150903200440) do
|
||||||
|
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
@@ -90,8 +90,8 @@ ActiveRecord::Schema.define(version: 20150903155146) do
|
|||||||
t.integer "author_id"
|
t.integer "author_id"
|
||||||
t.datetime "created_at", null: false
|
t.datetime "created_at", null: false
|
||||||
t.datetime "updated_at", null: false
|
t.datetime "updated_at", null: false
|
||||||
t.datetime "hidden_at"
|
|
||||||
t.string "visit_id"
|
t.string "visit_id"
|
||||||
|
t.datetime "hidden_at"
|
||||||
t.integer "flags_count", default: 0
|
t.integer "flags_count", default: 0
|
||||||
t.datetime "ignored_flag_at"
|
t.datetime "ignored_flag_at"
|
||||||
t.integer "cached_votes_total", default: 0
|
t.integer "cached_votes_total", default: 0
|
||||||
@@ -109,6 +109,22 @@ ActiveRecord::Schema.define(version: 20150903155146) do
|
|||||||
add_index "debates", ["cached_votes_up"], name: "index_debates_on_cached_votes_up", using: :btree
|
add_index "debates", ["cached_votes_up"], name: "index_debates_on_cached_votes_up", using: :btree
|
||||||
add_index "debates", ["hidden_at"], name: "index_debates_on_hidden_at", using: :btree
|
add_index "debates", ["hidden_at"], name: "index_debates_on_hidden_at", using: :btree
|
||||||
|
|
||||||
|
create_table "delayed_jobs", force: :cascade do |t|
|
||||||
|
t.integer "priority", default: 0, null: false
|
||||||
|
t.integer "attempts", default: 0, null: false
|
||||||
|
t.text "handler", null: false
|
||||||
|
t.text "last_error"
|
||||||
|
t.datetime "run_at"
|
||||||
|
t.datetime "locked_at"
|
||||||
|
t.datetime "failed_at"
|
||||||
|
t.string "locked_by"
|
||||||
|
t.string "queue"
|
||||||
|
t.datetime "created_at"
|
||||||
|
t.datetime "updated_at"
|
||||||
|
end
|
||||||
|
|
||||||
|
add_index "delayed_jobs", ["priority", "run_at"], name: "delayed_jobs_priority", using: :btree
|
||||||
|
|
||||||
create_table "flags", force: :cascade do |t|
|
create_table "flags", force: :cascade do |t|
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
t.string "flaggable_type"
|
t.string "flaggable_type"
|
||||||
@@ -200,13 +216,12 @@ ActiveRecord::Schema.define(version: 20150903155146) do
|
|||||||
t.string "unconfirmed_email"
|
t.string "unconfirmed_email"
|
||||||
t.boolean "email_on_debate_comment", default: false
|
t.boolean "email_on_debate_comment", default: false
|
||||||
t.boolean "email_on_comment_reply", default: false
|
t.boolean "email_on_comment_reply", default: false
|
||||||
|
t.string "phone_number", limit: 30
|
||||||
t.string "official_position"
|
t.string "official_position"
|
||||||
t.integer "official_level", default: 0
|
t.integer "official_level", default: 0
|
||||||
t.datetime "hidden_at"
|
t.datetime "hidden_at"
|
||||||
t.string "phone_number", limit: 30
|
|
||||||
t.string "username"
|
|
||||||
t.datetime "confirmed_hide_at"
|
|
||||||
t.string "sms_confirmation_code"
|
t.string "sms_confirmation_code"
|
||||||
|
t.string "username"
|
||||||
t.string "document_number"
|
t.string "document_number"
|
||||||
t.string "document_type"
|
t.string "document_type"
|
||||||
t.datetime "residence_verified_at"
|
t.datetime "residence_verified_at"
|
||||||
@@ -218,6 +233,7 @@ ActiveRecord::Schema.define(version: 20150903155146) do
|
|||||||
t.string "unconfirmed_phone"
|
t.string "unconfirmed_phone"
|
||||||
t.string "confirmed_phone"
|
t.string "confirmed_phone"
|
||||||
t.datetime "letter_requested_at"
|
t.datetime "letter_requested_at"
|
||||||
|
t.datetime "confirmed_hide_at"
|
||||||
t.string "letter_verification_code"
|
t.string "letter_verification_code"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user