in builder/core/project.py [0:0]
def pre_build(self, env):
imports = self.get_imports(env.spec)
build_imports = []
for i in imports:
import_steps = _build_project(i, env)
if import_steps:
build_imports += [Script(import_steps, name='resolve {}'.format(i.name))]
if build_imports:
build_imports = [Script(build_imports, name='resolve imports')]
deps = self.get_dependencies(env.spec)
build_deps = []
for d in deps:
dep_steps = _build_project(d, env)
if dep_steps:
build_deps += [Script(dep_steps, name='build {}'.format(d.name))]
if build_deps:
build_deps = [Script(build_deps, name='build dependencies')]
all_steps = build_imports + build_deps + self.config.get('pre_build_steps', [])
if len(all_steps) == 0:
return None
all_steps = [
partial(_pushd, self.path),
partial(_pushenv, self, 'pre_build_env'),
*all_steps,
_popenv,
_popd
]
return Script(all_steps, name='pre_build {}'.format(self.name))