Files
flyio/cmd/main.go

41 lines
633 B
Go

package main
import (
"context"
"fmt"
"log"
"os"
"os/signal"
"git.loyso.art/frx/flyio/internal/api"
maelstrom "github.com/jepsen-io/maelstrom/demo/go"
)
func main() {
ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt)
defer cancel()
err := app(ctx)
if err != nil {
log.Fatalf("running app: %v", err)
}
os.Exit(0)
}
func app(ctx context.Context) error {
node := maelstrom.NewNode()
srv, err := api.NewServer(ctx, node)
if err != nil {
return fmt.Errorf("making new server: %w", err)
}
err = srv.Run()
if err != nil {
return fmt.Errorf("running server: %w", err)
}
return nil
}