package bootstrap import ( "context" "go.uber.org/fx" "iop/packages/go/config" ) func Module(cfg *config.EdgeConfig) fx.Option { return fx.Options( fx.Provide( func() *config.EdgeConfig { return cfg }, NewRuntime, ), fx.Invoke(func(lc fx.Lifecycle, rt *Runtime) { lc.Append(fx.Hook{ OnStart: func(ctx context.Context) error { return rt.Start(ctx) }, OnStop: func(_ context.Context) error { return rt.Stop() }, }) }), ) }