新增能力: - remote-enable 子命令:设置函数模块处理类型为远程启用(bgRFC/RFC 执行体必需)。 实现要点均按实机验证:PUT fmodule:processingType="rfc"(枚举值仅小写 rfc 有效, remoteEnabled/remote/RFC 等均 400);lockHandle 走 query 参数(放 header 报 ParameterNotFound);PUT 后 GET 复核回显;DDIC 结构参数才可远程启用(类本地类型 报"针对 RFC 不允许使用类或接口的类型")。 - create --type functiongroup 透传 --package / --corr_nr(此前 package 被静默写成 $TMP, 导致函数组无法归目标包)。 修复: - activate 请求体补重复引用:ADT CLAS 激活端点对 objectReferences 只有 1 个引用时 返回 HTTP 200 + 空 body 且不执行激活;引用数 ≥2 才真正激活(同对象重复亦可)。 - scanner 剥离 ADT 文件后缀(xxx.clas.abap 解析错误)。 守卫测试: - tests/unit/test_bgrfc_support.py(17 例):函数组 package 透传、processingType 助手、 remote-enable 命令(含 lockHandle 走 query/小写 rfc/错误透传/复核失配判失败)、 函数 URI 组装不得用组名冒充模块名。 - test_activate.py 增加激活请求体引用数守卫;test_repo_guards.py 增加后缀剥离守卫。 测试:tests/unit 676 + tests/test_sapcli.py 69 = 745 全绿 (PYTHONPATH=assets python -m unittest discover -s tests/unit -t tests)
114 lines
2.1 KiB
Python
114 lines
2.1 KiB
Python
"""sapcli 命令模块包。
|
|
|
|
将原 commands.py 按功能拆分为多个子模块,保持统一的导出接口。
|
|
"""
|
|
from sapcli.commands.crud import (
|
|
cmd_create,
|
|
cmd_delete,
|
|
cmd_download,
|
|
cmd_info,
|
|
cmd_sync,
|
|
cmd_unlock,
|
|
)
|
|
from sapcli.commands.batch import (
|
|
cmd_init,
|
|
cmd_refresh,
|
|
cmd_sync_all,
|
|
)
|
|
from sapcli.commands.config_cmd import (
|
|
cmd_config,
|
|
)
|
|
from sapcli.commands.search import (
|
|
cmd_list,
|
|
cmd_whereused,
|
|
cmd_search,
|
|
)
|
|
from sapcli.commands.transport import (
|
|
cmd_transport,
|
|
)
|
|
from sapcli.commands.quality import (
|
|
cmd_check,
|
|
cmd_format,
|
|
)
|
|
from sapcli.commands.diff_cmd import (
|
|
cmd_diff,
|
|
)
|
|
from sapcli.commands.package_cmd import (
|
|
cmd_package,
|
|
)
|
|
from sapcli.commands.cds import (
|
|
cmd_cds,
|
|
)
|
|
from sapcli.commands.analyze import (
|
|
cmd_analyze,
|
|
)
|
|
from sapcli.commands.scaffold import (
|
|
cmd_scaffold,
|
|
)
|
|
from sapcli.commands.ddl_query import (
|
|
cmd_show_table,
|
|
cmd_read_table,
|
|
)
|
|
from sapcli.commands.program_run import (
|
|
cmd_run_program,
|
|
)
|
|
from sapcli.commands.activate import (
|
|
cmd_activate,
|
|
)
|
|
from sapcli.commands.upload import (
|
|
cmd_upload,
|
|
)
|
|
from sapcli.commands.syntax_check import (
|
|
cmd_syntax_check,
|
|
)
|
|
from sapcli.commands.unit_test import (
|
|
cmd_unit_test,
|
|
)
|
|
from sapcli.commands.history import (
|
|
cmd_history,
|
|
)
|
|
from sapcli.commands.clone import (
|
|
cmd_clone,
|
|
)
|
|
from sapcli.commands.enhancement import (
|
|
cmd_enhancement,
|
|
)
|
|
from sapcli.commands.remote_enable import (
|
|
cmd_remote_enable,
|
|
)
|
|
|
|
__all__ = [
|
|
"cmd_create",
|
|
"cmd_delete",
|
|
"cmd_unlock",
|
|
"cmd_download",
|
|
"cmd_info",
|
|
"cmd_init",
|
|
"cmd_refresh",
|
|
"cmd_sync",
|
|
"cmd_sync_all",
|
|
"cmd_config",
|
|
"cmd_list",
|
|
"cmd_whereused",
|
|
"cmd_search",
|
|
"cmd_transport",
|
|
"cmd_check",
|
|
"cmd_format",
|
|
"cmd_diff",
|
|
"cmd_package",
|
|
"cmd_cds",
|
|
"cmd_analyze",
|
|
"cmd_scaffold",
|
|
"cmd_show_table",
|
|
"cmd_read_table",
|
|
"cmd_run_program",
|
|
"cmd_activate",
|
|
"cmd_upload",
|
|
"cmd_syntax_check",
|
|
"cmd_unit_test",
|
|
"cmd_history",
|
|
"cmd_clone",
|
|
"cmd_enhancement",
|
|
"cmd_remote_enable",
|
|
]
|