class EnginePack::EnginePackage

Attributes

engine[R]
gem_specs[R]
io[R]
package_config[R]

Public Class Methods

new( engine, io: Adaptors::IO.new, package_config: PackageConfig.new(EnginePack.gem_specs.find { |s| s.name == engine }&.full_gem_path) ) click to toggle source
# File lib/engine_pack/engine_package.rb, line 6
def initialize(
  engine,
  io: Adaptors::IO.new,
  package_config: PackageConfig.new(EnginePack.gem_specs.find { |s| s.name == engine }&.full_gem_path)
)
  @engine = engine
  @io = io
  @package_config = package_config
end

Public Instance Methods

with_path() { |tmp_path| ... } click to toggle source
# File lib/engine_pack/engine_package.rb, line 16
def with_path
  io.mkdir(path: tmp_path)
  copy_specified_files(tmp_path)

  yield tmp_path
end

Private Instance Methods

copy_specified_files(dir) click to toggle source
# File lib/engine_pack/engine_package.rb, line 27
def copy_specified_files(dir)
  io.copy_files(
    files: package_config.package_files_paths,
    to: dir
  )
end
package_json?() click to toggle source
# File lib/engine_pack/engine_package.rb, line 34
def package_json?
  io.exist?(path: "#{engine_path}/package.json")
end
tmp_path() click to toggle source
# File lib/engine_pack/engine_package.rb, line 38
def tmp_path
  "#{io.tmpdir}/enginepack/#{engine}"
end