lib/remi/job.rb in remi-0.3.0 vs lib/remi/job.rb in remi-0.3.1

- old
+ new

@@ -269,21 +269,23 @@ def inspect "#<#{Remi::Job}>: #{self.class}\n" + " parameters: #{params.to_h.keys}\n" + " sources: #{sources}\n" + " targets: #{targets}\n" + - " transforms: #{transforms}" + " transforms: #{transforms}\n" + + " sub_jobs: #{sub_jobs}" end # Execute the specified components of the job. # # @param components [Array<symbol>] list of components to execute (e.g., `:transforms`, `:load_targets`) # # @return [self] def execute(*components) execute_transforms if components.empty? || components.include?(:transforms) + execute_sub_jobs if components.empty? || components.include?(:sub_jobs) execute_load_targets if components.empty? || components.include?(:load_targets) self end private @@ -329,9 +331,15 @@ end # Loads all targets defined def execute_load_targets targets.each { |t| send(t).load } + self + end + + # Executes all subjobs (not already executed) + def execute_sub_jobs + sub_jobs.each { |sj| send(sj).execute } self end # Adds all parameters listed to the job parameters def add_params(**kargs)