Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ServeCmd = &cobra.Command{ Use: "serve", Short: "Run the server process in the current terminal session", GroupID: util.SERVER_GROUP, Args: cobra.NoArgs, Run: func(cmd *cobra.Command, args []string) { if os.Getenv("USER") == "root" { views.RenderInfoMessageBold("Running the server as root is not recommended because\nDaytona will not be able to remap project directory ownership.\nPlease run the server as a non-root user.") } if log.GetLevel() < log.InfoLevel { log.SetLevel(log.InfoLevel) } configDir, err := server.GetConfigDir() if err != nil { log.Fatal(err) } c, err := server.GetConfig() if err != nil { log.Fatal(err) } telemetryService := posthogservice.NewTelemetryService(posthogservice.PosthogServiceConfig{ ApiKey: internal.PosthogApiKey, Endpoint: internal.PosthogEndpoint, }) go func() { interruptChannel := make(chan os.Signal, 1) signal.Notify(interruptChannel, os.Interrupt) for range interruptChannel { log.Info("Shutting down") telemetryService.Close() } }() apiServer := api.NewApiServer(api.ApiServerConfig{ ApiPort: int(c.ApiPort), TelemetryService: telemetryService, }) server, err := GetInstance(c, configDir, telemetryService) if err != nil { log.Fatal(err) } errCh := make(chan error) err = server.Start(errCh) if err != nil { log.Fatal(err) } buildRunnerConfig, err := build.GetConfig() if err != nil { log.Fatal(err) } buildRunner, err := GetBuildRunner(c, buildRunnerConfig, telemetryService) if err != nil { log.Fatal(err) } err = buildRunner.Start() if err != nil { log.Fatal(err) } go func() { err := apiServer.Start() if err != nil { log.Fatal(err) } }() go func() { err := <-errCh if err != nil { buildRunner.Stop() log.Fatal(err) } }() err = waitForServerToStart(apiServer) if err != nil { log.Fatal(err) } printServerStartedMessage(c, false) err = setDefaultConfig(server, c.ApiPort) if err != nil { log.Fatal(err) } err = <-errCh if err != nil { log.Fatal(err) } }, }
View Source
var ServerCmd = &cobra.Command{ Use: "server", Short: "Start the server process in daemon mode", GroupID: util.SERVER_GROUP, Args: cobra.NoArgs, Run: func(cmd *cobra.Command, args []string) { confirmCheck := true if !yesFlag { view.ConfirmPrompt(&confirmCheck) if !confirmCheck { views.RenderInfoMessage("Operation cancelled.") return } } if log.GetLevel() < log.InfoLevel { log.SetLevel(log.InfoLevel) } c, err := server.GetConfig() if err != nil { log.Fatal(err) } apiServer := api.NewApiServer(api.ApiServerConfig{ ApiPort: int(c.ApiPort), }) views.RenderInfoMessageBold("Starting the Daytona Server daemon...") err = daemon.Start(c.LogFilePath) if err != nil { log.Fatal(err) } err = waitForServerToStart(apiServer) if err != nil { log.Fatal(err) } printServerStartedMessage(c, true) switch runtime.GOOS { case "linux": fmt.Printf("Use `loginctl enable-linger %s` to allow the service to run after logging out.\n", os.Getenv("USER")) } }, }
Functions ¶
func GetBuildRunner ¶ added in v0.26.0
func GetBuildRunner(c *server.Config, buildRunnerConfig *build.Config, telemetryService telemetry.TelemetryService) (*build.BuildRunner, error)
func GetInstance ¶ added in v0.25.0
Types ¶
This section is empty.
Source Files ¶
Click to show internal directories.
Click to hide internal directories.