class Bosh::Cli::Command::Prepare

Public Instance Methods

prepare() click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 14
def prepare
  require_project_deployment
  auth_required
  offline! if options[:local]
  nl
  prepare_release_repos
  nl
  prepare_releases
  nl
  prepare_stemcells
end

Private Instance Methods

cached_stemcell_upload(stemcell) click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 83
def cached_stemcell_upload(stemcell)
  unless stemcell.downloaded?
    err "Stemcell not available offline: #{stemcell.file_name}" if offline?
    say "Downloading '#{stemcell.name_version.make_green}'"
    stemcell_download(stemcell)
  end
  say "Uploading '#{stemcell.name_version.make_green}'"
  stemcell_upload(stemcell.file)
end
prepare_release(release) click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 55
def prepare_release(release)
  if release_uploaded?(release.name, release.version)
    say "Release '#{release.name_version.make_green}' exists"
    say "Skipping upload"
  elsif release.url
    say "Uploading '#{release.url}'"
    release_upload_from_url(release.url)
  else
    say "Uploading '#{release.name_version.make_green}'"
    release_upload(release.manifest_file, release.release_dir)
  end
end
prepare_release_repos() click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 28
def prepare_release_repos
  project_deployment_releases.each do |release|
    require_git_url_error if release.git_url.nil?
    say "Fetching release '#{release.name.make_green}' to satisfy template references"
    release.update_repo
    print_prepare_release_repo_message(release)
  end
end
prepare_releases() click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 49
def prepare_releases
  project_deployment_releases.each do |release|
    prepare_release(release)
  end
end
prepare_stemcell(stemcell) click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 74
def prepare_stemcell(stemcell)
  if stemcell_uploaded?(stemcell.name, stemcell.version)
    say "Stemcell '#{stemcell.name_version.make_green}' exists"
    say "Skipping upload"
  else
    cached_stemcell_upload(stemcell)
  end
end
prepare_stemcells() click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 68
def prepare_stemcells
  project_deployment_stemcells.each do |stemcell|
    prepare_stemcell(stemcell)
  end
end
print_prepare_release_repo_message(release) click to toggle source
require_git_url_error() click to toggle source
# File lib/bosh/cli/commands/prepare.rb, line 44
def require_git_url_error
  say "`bosh prepare deployment' can not be used:"
  err("`git:' is missing from `release:'".make_red)
end