Method: Cnvrg::Experiment#end

Defined in:
lib/cnvrg/experiment.rb

#end(output, exit_status, end_commit, cpu_average, memory_average, end_time: nil) ⇒ Object



154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
# File 'lib/cnvrg/experiment.rb', line 154

def end(output, exit_status, end_commit, cpu_average, memory_average, end_time: nil)
  #if remote try to remove
  tries = 0
  success = false
  end_time ||= Time.now
  while tries < 10 and success.blank?
    sleep (tries*rand) ** 2 ### exponential backoff
                            ## this call is super important so we cant let it crash.

    tries += 1
    response = Cnvrg::API.request(@base_resource + "experiment/end", 'POST', {output: output, exp_slug: @slug,
                                                                            exit_status: exit_status, end_commit: end_commit,
                                                                            cpu_average: cpu_average, memory_average: memory_average, end_time: end_time})
    success = Cnvrg::CLI.is_response_success(response,false)
  end

  begin
    FileUtils.rm_rf(["/home/ds/.cnvrg/tmp/exec.log"])
  rescue

  end
end