package main import ( "context" "log" "os/signal" "syscall" "data-terminal-cloud/internal/app" ) type applicationRunner func(context.Context, string) error func run(ctx context.Context, runner applicationRunner) error { return runner(ctx, "callbacks") } func main() { ctx, stop := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM) defer stop() if err := run(ctx, app.Run); err != nil { log.Fatal(err) } }