refactor: pass rootCmd as parameter to Init*Cmd functions

- Update all Init*Cmd function signatures to accept rootCmd parameter:
  * InitServiceCmd(rootCmd *cobra.Command)
  * InitClientsCmd(rootCmd *cobra.Command)
  * InitLogCmd(rootCmd *cobra.Command)
  * InitUpgradeCmd(rootCmd *cobra.Command)
  * InitRunCmd(rootCmd *cobra.Command)
  * InitInterfacesCmd(rootCmd *cobra.Command)

- Update function calls in cli.go to pass rootCmd parameter
- Update InitInterfacesCmd call in commands_service.go

Benefits:
- Eliminates global state dependency on rootCmd variable
- Makes dependencies explicit in function signatures
- Improves testability by allowing different root commands
- Better encapsulation and modularity
This commit is contained in:
Cuong Manh Le
2025-07-30 17:01:03 +07:00
committed by Cuong Manh Le
parent a61cb1f5bf
commit bfe6060df1
7 changed files with 12 additions and 12 deletions
+1 -1
View File
@@ -127,7 +127,7 @@ func (lc *LogCommand) ViewLogs(cmd *cobra.Command, args []string) error {
}
// InitLogCmd creates the log command with proper logic
func InitLogCmd() *cobra.Command {
func InitLogCmd(rootCmd *cobra.Command) *cobra.Command {
lc, err := NewLogCommand()
if err != nil {
panic(fmt.Sprintf("failed to create log command: %v", err))