Module: MilkTea::VendoredTools

Defined in:
lib/milk_tea/bindings/vendored_tools.rb

Class Method Summary collapse

Class Method Details

.all(root: MilkTea.root) ⇒ Object



5
6
7
8
9
# File 'lib/milk_tea/bindings/vendored_tools.rb', line 5

def self.all(root: MilkTea.root)
  [
    *VendoredTracy.all_tools(root:),
  ]
end

.build_all!(root: MilkTea.root) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/milk_tea/bindings/vendored_tools.rb', line 11

def self.build_all!(root: MilkTea.root)
  data = MilkTea.writable_root_for(root)
  results = all(root:).map do |tool|
    binary = tool.build!
    install = tool.install_path(root: data)
    FileUtils.mkdir_p(File.dirname(install))
    FileUtils.cp(binary, install)
    FileUtils.chmod(0o755, install)
    { tool: tool, binary: install }
  end
  results
end