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
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
Execute the specified components of the job.

 @param components [Array<symbol>] list of components to execute (e.g., `:transforms`, `:load_targets`)

 @return [self]