Class: Kettle::Family::ReleaseWaves

Inherits:
Object
  • Object
show all
Defined in:
lib/kettle/family/release_waves.rb

Instance Method Summary collapse

Constructor Details

#initialize(members:, configured_waves: []) ⇒ ReleaseWaves

Returns a new instance of ReleaseWaves.



6
7
8
9
# File 'lib/kettle/family/release_waves.rb', line 6

def initialize(members:, configured_waves: [])
  @members = members
  @configured_waves = configured_waves
end

Instance Method Details

#wavesObject



11
12
13
14
15
16
17
# File 'lib/kettle/family/release_waves.rb', line 11

def waves
  configured = configured_waves_for_selected_members
  configured_names = configured.flatten.map(&:name)
  remaining_members = members.reject { |member| configured_names.include?(member.name) }

  configured + inferred_waves(remaining_members)
end