def do_cli(function_identifier,  <EOL>template,<EOL>base_dir,<EOL>build_dir,<EOL>clean,<EOL>use_container,<EOL>manifest_path,<EOL>docker_network,<EOL>skip_pull_image,<EOL>parameter_overrides,<EOL>mode):
LOG.debug("<STR_LIT>")<EOL>if use_container:<EOL><INDENT>LOG.info("<STR_LIT>")<EOL><DEDENT>with BuildContext(function_identifier,<EOL>template,<EOL>base_dir,<EOL>build_dir,<EOL>clean=clean,<EOL>manifest_path=manifest_path,<EOL>use_container=use_container,<EOL>parameter_overrides=parameter_overrides,<EOL>docker_network=docker_network,<EOL>skip_pull_image=skip_pull_image,<EOL>mode=mode) as ctx:<EOL><INDENT>try:<EOL><INDENT>builder = ApplicationBuilder(ctx.functions_to_build,<EOL>ctx.build_dir,<EOL>ctx.base_dir,<EOL>manifest_path_override=ctx.manifest_path_override,<EOL>container_manager=ctx.container_manager,<EOL>mode=ctx.mode)<EOL><DEDENT>except FunctionNotFound as ex:<EOL><INDENT>raise UserException(str(ex))<EOL><DEDENT>try:<EOL><INDENT>artifacts = builder.build()<EOL>modified_template = builder.update_template(ctx.template_dict,<EOL>ctx.original_template_path,<EOL>artifacts)<EOL>move_template(ctx.original_template_path,<EOL>ctx.output_template_path,<EOL>modified_template)<EOL>click.secho("<STR_LIT>", fg="<STR_LIT>")<EOL>msg = gen_success_msg(os.path.relpath(ctx.build_dir),<EOL>os.path.relpath(ctx.output_template_path),<EOL>os.path.abspath(ctx.build_dir) == os.path.abspath(DEFAULT_BUILD_DIR))<EOL>click.secho(msg, fg="<STR_LIT>")<EOL><DEDENT>except (UnsupportedRuntimeException, BuildError, UnsupportedBuilderLibraryVersionError,<EOL>ContainerBuildNotSupported) as ex:<EOL><INDENT>click.secho("<STR_LIT>", fg="<STR_LIT>")<EOL>raise UserException(str(ex))<EOL><DEDENT><DEDENT>
Implementation of the ``cli`` method