rag/internal/cmd/root.go

43 lines
805 B
Go

package cmd
import (
"fmt"
"github.com/spf13/cobra"
"go.uber.org/zap"
"leafdev.top/leaf/rag/internal/providers"
"os"
"path/filepath"
)
var logger *zap.Logger
var config *providers.GlobalConfig
func init() {
config = providers.MustGet[providers.GlobalConfig]()
logger = providers.MustGet[zap.Logger]()
}
var rootCmd = &cobra.Command{
Use: filepath.Base(os.Args[0]),
}
func Execute() {
rootCmd.AddCommand(rpcCommand)
rootCmd.AddCommand(workerCommand)
rootCmd.AddCommand(scheduleCommand)
rootCmd.AddCommand(httpCommand)
rootCmd.AddCommand(migrateCommand)
if config.DebugMode.Enable {
rootCmd.AddCommand(dsnCommand)
rootCmd.AddCommand(createGoMigrateCommand)
rootCmd.AddCommand(genMigrateCommand)
}
if err := rootCmd.Execute(); err != nil {
fmt.Println(err)
os.Exit(1)
}
}