Class: Buildpack::Packager::Package
- Inherits:
-
Struct
- Object
- Struct
- Buildpack::Packager::Package
- Defined in:
- lib/buildpack/packager/package.rb
Instance Attribute Summary collapse
-
#options ⇒ Object
Returns the value of attribute options.
Instance Method Summary collapse
- #build_dependencies(temp_dir) ⇒ Object
- #build_zip_file(temp_dir) ⇒ Object
- #copy_buildpack_to_temp_dir(temp_dir) ⇒ Object
- #defaults ⇒ Object
- #download_dependencies(dependencies, local_cache_directory, dependency_dir) ⇒ Object
- #list ⇒ Object
- #zip_file_path ⇒ Object
Instance Attribute Details
#options ⇒ Object
Returns the value of attribute options
11 12 13 |
# File 'lib/buildpack/packager/package.rb', line 11 def end |
Instance Method Details
#build_dependencies(temp_dir) ⇒ Object
17 18 19 20 21 22 23 24 25 |
# File 'lib/buildpack/packager/package.rb', line 17 def build_dependencies(temp_dir) local_cache_directory = [:cache_dir] || "#{ENV['HOME']}/.buildpack-packager/cache" FileUtils.mkdir_p(local_cache_directory) dependency_dir = File.join(temp_dir, "dependencies") FileUtils.mkdir_p(dependency_dir) download_dependencies(manifest[:dependencies], local_cache_directory, dependency_dir) end |
#build_zip_file(temp_dir) ⇒ Object
56 57 58 59 |
# File 'lib/buildpack/packager/package.rb', line 56 def build_zip_file(temp_dir) FileUtils.rm_rf(zip_file_path) zip_files(temp_dir, zip_file_path, manifest[:exclude_files]) end |
#copy_buildpack_to_temp_dir(temp_dir) ⇒ Object
12 13 14 15 |
# File 'lib/buildpack/packager/package.rb', line 12 def copy_buildpack_to_temp_dir(temp_dir) FileUtils.cp_r(File.join([:root_dir], '.'), temp_dir) FileUtils.cp([:manifest_path], File.join(temp_dir, 'manifest.yml')) end |
#defaults ⇒ Object
65 66 67 |
# File 'lib/buildpack/packager/package.rb', line 65 def defaults DefaultVersionsPresenter.new(manifest['default_versions']).present end |
#download_dependencies(dependencies, local_cache_directory, dependency_dir) ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/buildpack/packager/package.rb', line 27 def download_dependencies(dependencies, local_cache_directory, dependency_dir) dependencies.each do |dependency| safe_uri = uri_without_credentials(dependency['uri']) translated_filename = uri_cache_path(safe_uri) local_cached_file = File.(File.join(local_cache_directory, translated_filename)) if [:force_download] || !File.exist?(local_cached_file) puts "Downloading #{dependency['name']} version #{dependency['version']} from: #{safe_uri}" download_file(dependency['uri'], local_cached_file) human_readable_size = `du -h #{local_cached_file} | cut -f1`.strip puts " Using #{dependency['name']} version #{dependency['version']} with size #{human_readable_size}" from_local_cache = false else human_readable_size = `du -h #{local_cached_file} | cut -f1`.strip puts "Using #{dependency['name']} version #{dependency['version']} from local cache at: #{local_cached_file} with size #{human_readable_size}" from_local_cache = true end ensure_correct_dependency_checksum({ local_cached_file: local_cached_file, dependency: dependency, from_local_cache: from_local_cache }) FileUtils.cp(local_cached_file, dependency_dir) end end |
#list ⇒ Object
61 62 63 |
# File 'lib/buildpack/packager/package.rb', line 61 def list DependenciesPresenter.new(manifest['dependencies']).present end |
#zip_file_path ⇒ Object
69 70 71 |
# File 'lib/buildpack/packager/package.rb', line 69 def zip_file_path Shellwords.escape(File.join([:root_dir], zip_file_name)) end |