增加命令功能

This commit is contained in:
2025-04-07 10:42:08 +08:00
parent 0344c09ce7
commit 74b0033e45
18 changed files with 1844 additions and 494 deletions

49
cmd/saastool/task.go Normal file
View File

@@ -0,0 +1,49 @@
package main
import (
"fmt"
"log/slog"
"strings"
)
func RunTask(args ...string) error {
name, args := ParseCommandName(args)
// 从参数中解析出命令
switch name {
case "", "help":
return RunTaskHelp(args...)
case "create":
return RunTaskCreate(args...)
case "list":
return RunTaskList(args...)
case "delete":
return RunTaskDelete(args...)
case "info":
return RunTaskInfo(args...)
default:
err := fmt.Errorf(`unknown command "%s"`+"\n"+`Run 'saastool task help' for usage`, name)
slog.Warn(err.Error())
return err
}
}
func RunTaskHelp(args ...string) error {
fmt.Println(strings.TrimSpace(taskUsage))
return nil
}
const taskUsage = `
Usage: saastoola task COMMAND [OPTIONS]
Commands:
create
upload Read user's 'bytes / uint32s / flags'
run
delete
info
"help" is the default command.
Use "saastool task COMMAND -help" for more information about a command.
`