52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
#!/usr/bin/env python
|
||
"""COBOL 迁移验证平台统一入口。
|
||
|
||
用法:
|
||
python run.py verify <主工程参数...> # 透传给 main.py (COBOL->Java/Spark 迁移验证)
|
||
python run.py blackbox <黑盒参数...> # 透传给 black-box-data-create/main.py (LLM 测试数据生成)
|
||
|
||
子命令后的参数原样转发给目标 main.py,由目标自行解析,本脚本不做任何处理。
|
||
"""
|
||
import os
|
||
import subprocess
|
||
import sys
|
||
|
||
ROOT = os.path.dirname(os.path.abspath(__file__))
|
||
|
||
TARGETS = {
|
||
"verify": os.path.join(ROOT, "main.py"),
|
||
"blackbox": os.path.join(ROOT, "black-box-data-create", "main.py"),
|
||
}
|
||
|
||
USAGE = """\
|
||
用法: python run.py <verify|blackbox> [参数...]
|
||
|
||
子命令:
|
||
verify - 主工程: COBOL->Java/Spark 迁移验证(透传给 main.py)
|
||
blackbox - 黑盒工程: LLM 测试数据生成(透传给 black-box-data-create/main.py)
|
||
"""
|
||
|
||
|
||
def main():
|
||
if len(sys.argv) < 2:
|
||
print(USAGE, file=sys.stderr)
|
||
return 2
|
||
|
||
engine = sys.argv[1]
|
||
target = TARGETS.get(engine)
|
||
if target is None:
|
||
print(f"错误: 未知子命令 '{engine}'\n", file=sys.stderr)
|
||
print(USAGE, file=sys.stderr)
|
||
return 2
|
||
|
||
if not os.path.exists(target):
|
||
print(f"错误: 找不到目标脚本: {target}", file=sys.stderr)
|
||
return 2
|
||
|
||
passthrough = sys.argv[2:]
|
||
return subprocess.run([sys.executable, target] + passthrough).returncode
|
||
|
||
|
||
if __name__ == "__main__":
|
||
sys.exit(main())
|