MCPcopy
hub / github.com/larksuite/cli / resolveExecuteSQL

Function resolveExecuteSQL

shortcuts/apps/apps_db_execute.go:303–316  ·  view source on GitHub ↗

resolveExecuteSQL 返回要执行的 SQL,在用时(DryRun/Execute)现读,使 --file 的内容 不被写回公开的 --sql flag(避免泄露进 flag dump / 结构化日志)。优先 --sql(内联或 stdin, 已由输入框架解析到 flag 值);否则现读 --file。Validate 已先行校验可读且非空。

(rctx *common.RuntimeContext)

Source from the content-addressed store, hash-verified

301// 不被写回公开的 --sql flag(避免泄露进 flag dump / 结构化日志)。优先 --sql(内联或 stdin,
302// 已由输入框架解析到 flag 值);否则现读 --file。Validate 已先行校验可读且非空。
303func resolveExecuteSQL(rctx *common.RuntimeContext) (string, error) {
304 if strings.TrimSpace(rctx.Str("sql")) != "" {
305 return rctx.Str("sql"), nil
306 }
307 file := strings.TrimSpace(rctx.Str("file"))
308 if file == "" {
309 return "", nil
310 }
311 data, err := cmdutil.ReadInputFile(rctx.FileIO(), file)
312 if err != nil {
313 return "", err
314 }
315 return string(data), nil
316}
317
318// buildDBSQLBody 构造 sql 接口的 body:仅 sql(由 resolveExecuteSQL 在用时解析,--file 不入 flag)。
319func buildDBSQLBody(rctx *common.RuntimeContext) map[string]interface{} {

Callers 1

buildDBSQLBodyFunction · 0.85

Calls 3

ReadInputFileFunction · 0.92
FileIOMethod · 0.80
StrMethod · 0.65

Tested by

no test coverage detected