Moved code from install -> formula_installer
This commit is contained in:
parent
56bde378f3
commit
f0222c3eb7
@ -259,7 +259,6 @@ module Homebrew
|
||||
|
||||
formulae.each do |f|
|
||||
Migrator.migrate_if_needed(f)
|
||||
forbidden_license_check(f)
|
||||
install_formula(f)
|
||||
Cleanup.install_formula_clean!(f)
|
||||
end
|
||||
@ -342,30 +341,4 @@ module Homebrew
|
||||
rescue CannotInstallFormulaError => e
|
||||
ofail e.message
|
||||
end
|
||||
|
||||
def env_forbidden_licenses
|
||||
Homebrew::EnvConfig.forbidden_licenses.split(" ")
|
||||
end
|
||||
|
||||
def forbidden_license_check(f)
|
||||
return if ENV["HOMEBREW_FORBIDDEN_LICENSES"].blank?
|
||||
|
||||
forbidden_licenses = env_forbidden_licenses
|
||||
|
||||
if forbidden_licenses.include? f.license
|
||||
raise CannotInstallFormulaError, <<~EOS
|
||||
#{f.name} has a forbidden license #{f.license}.
|
||||
EOS
|
||||
end
|
||||
|
||||
fi = FormulaInstaller.new(f)
|
||||
fi.compute_dependencies.each do |dep, _|
|
||||
dep_f = dep.to_formula
|
||||
next unless forbidden_licenses.include? dep_f.license
|
||||
|
||||
raise CannotInstallFormulaError, <<~EOS
|
||||
The installation of #{f.name} has a dependency on #{dep.name} with a forbidden license #{dep_f.license}.
|
||||
EOS
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@ -149,7 +149,7 @@ class FormulaInstaller
|
||||
def prelude
|
||||
Tab.clear_cache
|
||||
verify_deps_exist unless ignore_deps?
|
||||
Homebrew.forbidden_license_check(formula)
|
||||
forbidden_license_check(formula)
|
||||
|
||||
check_install_sanity
|
||||
end
|
||||
@ -1105,4 +1105,30 @@ class FormulaInstaller
|
||||
|
||||
$stderr.puts @requirement_messages
|
||||
end
|
||||
|
||||
def env_forbidden_licenses
|
||||
Homebrew::EnvConfig.forbidden_licenses.split(" ")
|
||||
end
|
||||
|
||||
def forbidden_license_check(f)
|
||||
return if ENV["HOMEBREW_FORBIDDEN_LICENSES"].blank?
|
||||
|
||||
forbidden_licenses = env_forbidden_licenses
|
||||
|
||||
if forbidden_licenses.include? f.license
|
||||
raise CannotInstallFormulaError, <<~EOS
|
||||
#{f.name} has a forbidden license #{f.license}.
|
||||
EOS
|
||||
end
|
||||
|
||||
fi = FormulaInstaller.new(f)
|
||||
fi.compute_dependencies.each do |dep, _|
|
||||
dep_f = dep.to_formula
|
||||
next unless forbidden_licenses.include? dep_f.license
|
||||
|
||||
raise CannotInstallFormulaError, <<~EOS
|
||||
The installation of #{f.name} has a dependency on #{dep.name} with a forbidden license #{dep_f.license}.
|
||||
EOS
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user