Method: Bosh::Director::Jobs::UpdateRelease#use_existing_jobs

Defined in:
lib/bosh/director/jobs/update_release.rb

#use_existing_jobs(jobs) ⇒ void

This method returns an undefined value.

Parameters:



559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
# File 'lib/bosh/director/jobs/update_release.rb', line 559

def use_existing_jobs(jobs)
  return if jobs.empty?

  n_jobs = jobs.size
  event_log.begin_stage("Processing #{n_jobs} existing " +
                        "job#{n_jobs > 1 ? "s" : ""}", 1)

  event_log.track("Verifying checksums") do
    jobs.each do |template, job_meta|
      job_desc = "#{template.name}/#{template.version}"

      logger.info("Job `#{job_desc}' already exists, " +
                  "verifying checksum")

      expected = template.sha1
      received = job_meta["sha1"]

      if expected != received
        raise ReleaseExistingJobHashMismatch,
              "`#{job_desc}' checksum mismatch, " +
              "expected #{expected} but received #{received}"
      end

      logger.info("Job `#{job_desc}' verified")
      register_template(template)
    end
  end
end