MCPcopy
hub / github.com/wavetermdev/waveterm / serverRun

Function serverRun

cmd/wsh/cmd/wshcmd-connserver.go:439–506  ·  view source on GitHub ↗
(cmd *cobra.Command, args []string)

Source from the content-addressed store, hash-verified

437}
438
439func serverRun(cmd *cobra.Command, args []string) error {
440 connServerInitialEnv = envutil.PruneInitialEnv(envutil.SliceToMap(os.Environ()))
441
442 var logFile *os.File
443 if connServerDev {
444 var err error
445 logFilePath := fmt.Sprintf("/tmp/waveterm-connserver-%d.log", os.Getuid())
446 logFile, err = os.OpenFile(logFilePath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
447 if err != nil {
448 fmt.Fprintf(os.Stderr, "failed to open log file: %v\n", err)
449 log.SetFlags(log.LstdFlags | log.Lmicroseconds)
450 log.SetPrefix(fmt.Sprintf("[PID:%d] ", os.Getpid()))
451 } else {
452 defer logFile.Close()
453 logWriter := io.MultiWriter(os.Stderr, logFile)
454 log.SetOutput(logWriter)
455 log.SetFlags(log.LstdFlags | log.Lmicroseconds)
456 log.SetPrefix(fmt.Sprintf("[PID:%d] ", os.Getpid()))
457 }
458 }
459 if connServerConnName == "" {
460 if logFile != nil {
461 fmt.Fprintf(logFile, "--conn parameter is required\n")
462 }
463 return fmt.Errorf("--conn parameter is required")
464 }
465 installErr := wshutil.InstallRcFiles()
466 if installErr != nil {
467 if logFile != nil {
468 fmt.Fprintf(logFile, "error installing rc files: %v\n", installErr)
469 }
470 log.Printf("error installing rc files: %v", installErr)
471 }
472 sigutil.InstallSIGUSR1Handler()
473 if connServerRouter {
474 err := serverRunRouter()
475 if err != nil && logFile != nil {
476 fmt.Fprintf(logFile, "serverRunRouter error: %v\n", err)
477 }
478 return err
479 }
480 if connServerRouterDomainSocket {
481 jwtToken, err := askForJwtToken()
482 if err != nil {
483 if logFile != nil {
484 fmt.Fprintf(logFile, "askForJwtToken error: %v\n", err)
485 }
486 return err
487 }
488 err = serverRunRouterDomainSocket(jwtToken)
489 if err != nil && logFile != nil {
490 fmt.Fprintf(logFile, "serverRunRouterDomainSocket error: %v\n", err)
491 }
492 return err
493 }
494 jwtToken, err := askForJwtToken()
495 if err != nil {
496 if logFile != nil {

Callers

nothing calls this directly

Calls 9

PruneInitialEnvFunction · 0.92
SliceToMapFunction · 0.92
InstallRcFilesFunction · 0.92
InstallSIGUSR1HandlerFunction · 0.92
serverRunRouterFunction · 0.85
askForJwtTokenFunction · 0.85
serverRunNormalFunction · 0.85
CloseMethod · 0.65

Tested by

no test coverage detected