MCPcopy Create free account
hub / github.com/UbiquitousLearning/mllm / run

Method run

task.py:457–514  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

455 super().__init__(config)
456
457 def run(self):
458 logging.info("MLLM CLI Build Task Start...")
459
460 build_dir = self.config.get("build_dir", "build")
461 cli_root = self.config.get("cli_root", "mllm-cli")
462
463 build_path = PROJECT_ROOT_PATH / build_dir
464 build_path.mkdir(parents=True, exist_ok=True)
465 logging.info(f"Build directory: {build_path}")
466
467 go_build_cmd = [
468 "go",
469 "build",
470 "-o",
471 build_path.as_posix(),
472 ]
473
474 go_build_args = self.config.get("go_build_args", [])
475 if go_build_args:
476 go_build_cmd.extend(go_build_args)
477
478 work_dir = PROJECT_ROOT_PATH / cli_root
479
480 logging.info(f"Working directory: {work_dir}")
481 logging.info(f"Command: {' '.join(go_build_cmd)}")
482
483 original_cwd = os.getcwd()
484 try:
485 os.chdir(work_dir)
486 throw_error_if_failed(os.system(self.make_command_str(go_build_cmd)))
487 finally:
488 os.chdir(original_cwd)
489
490 sdk_lib_src = PROJECT_ROOT_PATH / cli_root / "mllm" / "SDK" / "lib"
491 sdk_lib_dest = build_path / "lib"
492
493 if sdk_lib_src.exists():
494 logging.info(f"Copying SDK lib from {sdk_lib_src} to {sdk_lib_dest}")
495 if sdk_lib_dest.exists():
496 shutil.rmtree(sdk_lib_dest)
497 shutil.copytree(sdk_lib_src, sdk_lib_dest)
498 else:
499 logging.warning(f"SDK lib directory not found: {sdk_lib_src}")
500
501 sdk_include_src = PROJECT_ROOT_PATH / cli_root / "mllm" / "SDK" / "include"
502 sdk_include_dest = build_path / "include"
503
504 if sdk_include_src.exists():
505 logging.info(
506 f"Copying SDK include from {sdk_include_src} to {sdk_include_dest}"
507 )
508 if sdk_include_dest.exists():
509 shutil.rmtree(sdk_include_dest)
510 shutil.copytree(sdk_include_src, sdk_include_dest)
511 else:
512 logging.warning(f"SDK include directory not found: {sdk_include_src}")
513
514 logging.info("MLLM CLI Build Task Completed")

Callers

nothing calls this directly

Calls 3

throw_error_if_failedFunction · 0.85
make_command_strMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected