github.com/robgonnella/ardi/v2@v2.4.5-0.20230102052001-11a49de978c3/commands/attach.go (about) 1 package commands 2 3 import ( 4 "github.com/spf13/cobra" 5 ) 6 7 func getAttachCmd(env *CommandEnv) *cobra.Command { 8 var port string 9 var baud int 10 var attachCmd = &cobra.Command{ 11 Use: "attach", 12 Short: "Attach and print board logs", 13 Long: "\nAttach and print board logs", 14 RunE: func(cmd *cobra.Command, args []string) error { 15 if port == "" { 16 board, err := env.ArdiCore.Cli.GetTargetBoard("", "", true) 17 if err != nil { 18 return err 19 } 20 port = board.Port 21 } 22 23 env.ArdiCore.Uploader.SetPortTargets(port, baud) 24 defer env.ArdiCore.Uploader.Detach() 25 env.ArdiCore.Uploader.Attach() 26 return nil 27 }, 28 } 29 30 attachCmd.Flags().StringVarP(&port, "port", "p", "", "The port your arduino board is connected to") 31 attachCmd.Flags().IntVarP(&baud, "baud", "b", 9600, "Specify baud rate of port") 32 return attachCmd 33 }