in chalice/deploy/deployer.py [0:0]
def create_build_stage(osutils, ui, swagger_gen, config):
# type: (OSUtils, UI, SwaggerGenerator, Config) -> BuildStage
pip_runner = PipRunner(pip=SubprocessPip(osutils=osutils),
osutils=osutils)
dependency_builder = PipDependencyBuilder(
osutils=osutils,
pip_runner=pip_runner
)
deployment_packager = cast(BaseDeployStep, None)
if config.automatic_layer:
deployment_packager = ManagedLayerDeploymentPackager(
lambda_packager=AppOnlyDeploymentPackager(
osutils=osutils,
dependency_builder=dependency_builder,
ui=ui,
),
layer_packager=LayerDeploymentPackager(
osutils=osutils,
dependency_builder=dependency_builder,
ui=ui,
)
)
else:
deployment_packager = DeploymentPackager(
packager=LambdaDeploymentPackager(
osutils=osutils,
dependency_builder=dependency_builder,
ui=ui,
)
)
build_stage = BuildStage(
steps=[
InjectDefaults(),
deployment_packager,
PolicyGenerator(
policy_gen=AppPolicyGenerator(
osutils=osutils
),
osutils=osutils,
),
SwaggerBuilder(
swagger_generator=swagger_gen,
),
LambdaEventSourcePolicyInjector(),
WebsocketPolicyInjector()
],
)
return build_stage