Module: ActiveRecord::ShardFor::DatabaseTasks
Defined Under Namespace
Modules: TaskOrganizerForSingleClusterTask, TasksForMultipleClusters, TasksForSingleConnection
Class Method Summary
collapse
invoke_task, invoke_task_for_all_clusters
create_all_databases, drop_all_databases, load_schema_all_databases
create, drop, load_schema
Class Method Details
.ar417_above? ⇒ Boolean
32
33
34
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 32
def ar417_above?
ar41? && ActiveRecord::VERSION::TINY > 7
end
|
.ar41? ⇒ Boolean
27
28
29
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 27
def ar41?
ar4? && ActiveRecord::VERSION::MINOR == 1
end
|
.ar42? ⇒ Boolean
22
23
24
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 22
def ar42?
ar4? && ActiveRecord::VERSION::MINOR == 2
end
|
.ar4? ⇒ Boolean
17
18
19
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 17
def ar4?
ActiveRecord::VERSION::MAJOR == 4
end
|
.ar5? ⇒ Boolean
12
13
14
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 12
def ar5?
ActiveRecord::VERSION::MAJOR == 5
end
|
.ar6? ⇒ Boolean
7
8
9
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 7
def ar6?
ActiveRecord::VERSION::MAJOR == 6
end
|
.cluster_names ⇒ Array<Symbol>
58
59
60
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 58
def cluster_names
ActiveRecord::ShardFor.config.cluster_configs.keys
end
|
64
65
66
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 64
def clusters
ActiveRecord::ShardFor.config.cluster_configs.values
end
|
.exit_with_error ⇒ Object
77
78
79
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 77
def exit_with_error
exit 1
end
|
71
72
73
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 71
def fetch_cluster_config(cluster_name)
ActiveRecord::ShardFor.config.fetch_cluster_config(cluster_name)
end
|
.info ⇒ Object
Show information of database sharding config.
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 37
def info
puts 'All clusters registered to ActiveRecord::ShardFor'
puts
clusters.each do |cluster|
puts "= Cluster: #{cluster.name} ="
cluster.connections.each do |name|
puts "- #{name}"
end
puts
end
end
|
.to_rake_task(task_name) ⇒ Rake::Task
52
53
54
|
# File 'lib/activerecord/shard_for/database_tasks.rb', line 52
def to_rake_task(task_name)
Rake::Task[task_name]
end
|