Module: Octopus::Migration::ClassMethods
Instance Method Summary
collapse
#announce_with_octopus, #get_current_shard
Instance Method Details
#shards ⇒ Object
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# File 'lib/octopus/migration.rb', line 51
def shards
shards = Set.new
if groups = current_group
Array.wrap(groups).each do |group|
group_shards = connection.shards_for_group(group)
shards.merge(group_shards) if group_shards
end
elsif shard = current_shard
shards.merge(Array.wrap(shard))
end
shards.to_a.presence || [:master]
end
|
#using(*args) ⇒ Object
37
38
39
40
41
42
|
# File 'lib/octopus/migration.rb', line 37
def using(*args)
return self unless connection.is_a?(Octopus::Proxy)
self.current_shard = args
self
end
|
#using_group(*groups) ⇒ Object
44
45
46
47
48
49
|
# File 'lib/octopus/migration.rb', line 44
def using_group(*groups)
return self unless connection.is_a?(Octopus::Proxy)
self.current_group = groups
self
end
|