Class: Jets::Builders::RackPackager

Inherits:
RubyPackager show all
Defined in:
lib/jets/builders/rack_packager.rb

Instance Attribute Summary

Attributes inherited from RubyPackager

#full_app_root

Instance Method Summary collapse

Methods inherited from RubyPackager

#bundle_install, #clean_old_submodules, #copy_bundled_cache, #copy_gemfile_lock, #copy_gemfiles, #ensure_build_cache_bundle_config_exists!, #extract_gems, #extract_ruby, #gemfile_exist?, #initialize, #install, #lambdagem_options, #reconfigure_ruby_version, #setup_bundle_config, #tidy, #tidy_project

Methods included from Util

#full, #headline, #poly_only?, #sh

Constructor Details

This class inherits a constructor from Jets::Builders::RubyPackager

Instance Method Details

#copy_rackup_wrappersObject



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/jets/builders/rack_packager.rb', line 17

def copy_rackup_wrappers
  # IE: @full_app_root: /tmp/jets/demo/stage/code/rack
  rack_bin = "#{@full_app_root}/bin"
  %w[rackup rackup.rb].each do |file|
    src = File.expand_path("./rackup_wrappers/#{file}", File.dirname(__FILE__))
    dest = "#{rack_bin}/#{file}"
    FileUtils.mkdir_p(rack_bin) unless File.exist?(rack_bin)
    FileUtils.cp(src, dest)
    FileUtils.chmod 0755, dest
  end
end

#finishObject



3
4
5
6
7
8
# File 'lib/jets/builders/rack_packager.rb', line 3

def finish
  return unless gemfile_exist?

  symlink_rack_bundled
  copy_rackup_wrappers
end


10
11
12
13
14
15
# File 'lib/jets/builders/rack_packager.rb', line 10

def symlink_rack_bundled
  # IE: @full_app_root: /tmp/jets/demo/stage/code/rack
  rack_bundled = "#{@full_app_root}/bundled"
  FileUtils.rm_f(rack_bundled) # looks like FileUtils.ln_sf doesnt remove existing symlinks
  FileUtils.ln_sf("/var/task/bundled", rack_bundled)
end