MCPcopy Index your code
hub / github.com/coder/coder / Server

Method Server

coderd/agentapi/api.go:254–277  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

252}
253
254func (a *API) Server(ctx context.Context) (*drpcserver.Server, error) {
255 mux := drpcmux.New()
256 err := agentproto.DRPCRegisterAgent(mux, a)
257 if err != nil {
258 return nil, xerrors.Errorf("register agent API protocol in DRPC mux: %w", err)
259 }
260
261 err = tailnetproto.DRPCRegisterTailnet(mux, a)
262 if err != nil {
263 return nil, xerrors.Errorf("register tailnet API protocol in DRPC mux: %w", err)
264 }
265
266 return drpcserver.NewWithOptions(&tracing.DRPCHandler{Handler: mux},
267 drpcserver.Options{
268 Manager: drpcsdk.DefaultDRPCOptions(nil),
269 Log: func(err error) {
270 if xerrors.Is(err, io.EOF) {
271 return
272 }
273 a.opts.Log.Debug(ctx, "drpc server error", slog.Error(err))
274 },
275 },
276 ), nil
277}
278
279func (a *API) Serve(ctx context.Context, l net.Listener) error {
280 server, err := a.Server(ctx)

Callers 2

ServeMethod · 0.95
workspaceAgentRPCMethod · 0.45

Calls 5

DefaultDRPCOptionsFunction · 0.92
NewMethod · 0.65
ErrorfMethod · 0.45
IsMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected