acidic_job 1.0.0.pre29 → 1.0.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/FUNDING.yml +13 -0
- data/.github/workflows/main.yml +12 -15
- data/.gitignore +3 -1
- data/.rubocop.yml +50 -5
- data/.ruby-version +1 -0
- data/Gemfile.lock +114 -198
- data/README.md +163 -246
- data/TODO +77 -0
- data/acidic_job.gemspec +8 -10
- data/app/models/acidic_job/entry.rb +19 -0
- data/app/models/acidic_job/execution.rb +50 -0
- data/app/models/acidic_job/record.rb +11 -0
- data/app/models/acidic_job/value.rb +7 -0
- data/bin/console +5 -2
- data/bin/test_all +26 -0
- data/gemfiles/rails_7.0.gemfile +4 -1
- data/gemfiles/rails_7.1.gemfile +11 -0
- data/gemfiles/rails_7.2.gemfile +11 -0
- data/gemfiles/rails_8.0.gemfile +11 -0
- data/lib/acidic_job/arguments.rb +31 -0
- data/lib/acidic_job/builder.rb +29 -0
- data/lib/acidic_job/context.rb +26 -0
- data/lib/acidic_job/engine.rb +46 -0
- data/lib/acidic_job/errors.rb +91 -12
- data/lib/acidic_job/log_subscriber.rb +50 -0
- data/lib/acidic_job/serializers/exception_serializer.rb +31 -0
- data/lib/acidic_job/serializers/job_serializer.rb +27 -0
- data/lib/acidic_job/serializers/new_record_serializer.rb +25 -0
- data/lib/acidic_job/serializers/range_serializer.rb +28 -0
- data/lib/acidic_job/testing.rb +8 -12
- data/lib/acidic_job/version.rb +1 -1
- data/lib/acidic_job/workflow.rb +185 -0
- data/lib/acidic_job.rb +15 -284
- data/lib/generators/acidic_job/install_generator.rb +3 -3
- data/lib/generators/acidic_job/templates/create_acidic_job_tables_migration.rb.erb +33 -0
- metadata +45 -115
- data/.ruby_version +0 -1
- data/.tool-versions +0 -1
- data/gemfiles/rails_6.1.gemfile +0 -8
- data/lib/acidic_job/awaiting.rb +0 -102
- data/lib/acidic_job/extensions/action_mailer.rb +0 -29
- data/lib/acidic_job/extensions/active_job.rb +0 -40
- data/lib/acidic_job/extensions/noticed.rb +0 -54
- data/lib/acidic_job/extensions/sidekiq.rb +0 -111
- data/lib/acidic_job/finished_point.rb +0 -16
- data/lib/acidic_job/idempotency_key.rb +0 -82
- data/lib/acidic_job/perform_wrapper.rb +0 -22
- data/lib/acidic_job/recovery_point.rb +0 -18
- data/lib/acidic_job/rspec_configuration.rb +0 -31
- data/lib/acidic_job/run.rb +0 -100
- data/lib/acidic_job/serializer.rb +0 -163
- data/lib/acidic_job/staging.rb +0 -38
- data/lib/acidic_job/step.rb +0 -104
- data/lib/acidic_job/test_case.rb +0 -9
- data/lib/acidic_job/upgrade_service.rb +0 -118
- data/lib/generators/acidic_job/drop_tables_generator.rb +0 -26
- data/lib/generators/acidic_job/templates/create_acidic_job_runs_migration.rb.erb +0 -19
- data/lib/generators/acidic_job/templates/drop_acidic_job_keys_migration.rb.erb +0 -27
@@ -1,26 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "rails/generators/active_record"
|
4
|
-
|
5
|
-
module AcidicJob
|
6
|
-
module Generators
|
7
|
-
class DropTablesGenerator < ::Rails::Generators::Base
|
8
|
-
include ActiveRecord::Generators::Migration
|
9
|
-
source_root File.expand_path("templates", __dir__)
|
10
|
-
|
11
|
-
desc "Drops the pre-1.0 tables for the AcidicJob::Key and AcidicJob::Staged models."
|
12
|
-
|
13
|
-
def copy_migration
|
14
|
-
migration_template "drop_acidic_job_keys_migration.rb.erb",
|
15
|
-
"db/migrate/drop_old_acidic_job_tables.rb",
|
16
|
-
migration_version: migration_version
|
17
|
-
end
|
18
|
-
|
19
|
-
protected
|
20
|
-
|
21
|
-
def migration_version
|
22
|
-
"[#{ActiveRecord::VERSION::MAJOR}.#{ActiveRecord::VERSION::MINOR}]"
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
class <%= migration_class_name %> < ActiveRecord::Migration<%= migration_version %>
|
2
|
-
def change
|
3
|
-
create_table :acidic_job_runs do |t|
|
4
|
-
t.boolean :staged, null: false, default: -> { false }
|
5
|
-
t.string :idempotency_key, null: false, index: { unique: true }
|
6
|
-
t.text :serialized_job, null: false
|
7
|
-
t.string :job_class, null: false
|
8
|
-
t.datetime :last_run_at, null: true, default: -> { "CURRENT_TIMESTAMP" }
|
9
|
-
t.datetime :locked_at, null: true
|
10
|
-
t.string :recovery_point, null: true
|
11
|
-
t.text :error_object, null: true
|
12
|
-
t.text :attr_accessors, null: true
|
13
|
-
t.text :workflow, null: true
|
14
|
-
t.references :awaited_by, null: true, index: true
|
15
|
-
t.text :returning_to, null: true
|
16
|
-
t.timestamps
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
class <%= migration_class_name %> < ActiveRecord::Migration<%= migration_version %>
|
2
|
-
def change
|
3
|
-
drop_table :acidic_job_keys do |t|
|
4
|
-
t.string :idempotency_key, null: false
|
5
|
-
t.string :job_name, null: false
|
6
|
-
t.text :job_args, null: true
|
7
|
-
t.datetime :last_run_at, null: false, default: -> { "CURRENT_TIMESTAMP" }
|
8
|
-
t.datetime :locked_at, null: true
|
9
|
-
t.string :recovery_point, null: false
|
10
|
-
t.text :error_object
|
11
|
-
t.text :attr_accessors
|
12
|
-
t.text :workflow
|
13
|
-
t.timestamps
|
14
|
-
|
15
|
-
t.index %i[idempotency_key job_name job_args],
|
16
|
-
unique: true,
|
17
|
-
name: "idx_acidic_job_keys_on_idempotency_key_n_job_name_n_job_args"
|
18
|
-
end
|
19
|
-
|
20
|
-
drop_table :staged_acidic_jobs do |t|
|
21
|
-
t.string :adapter, null: false
|
22
|
-
t.string :job_name, null: false
|
23
|
-
t.text :job_args, null: true
|
24
|
-
t.timestamps
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|