| 1234567891011121314151617181920212223242526272829303132 |
- package main
- import (
- "context"
- "os"
- "os/signal"
- "github.com/sst/opencode/pkg/app"
- "github.com/sst/opencode/pkg/server"
- "golang.org/x/sync/errgroup"
- )
- func main() {
- ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt)
- cwd, _ := os.Getwd()
- app, err := app.New(ctx, cwd)
- if err != nil {
- panic(err)
- }
- server, err := server.New(app)
- var wg errgroup.Group
- wg.Go(func() error {
- defer stop()
- return server.Start(ctx)
- })
- <-ctx.Done()
- wg.Wait()
- }
|