diff --git a/pulumi-language-dotnet/main.go b/pulumi-language-dotnet/main.go index 0eba102f..8ceab51d 100644 --- a/pulumi-language-dotnet/main.go +++ b/pulumi-language-dotnet/main.go @@ -106,22 +106,24 @@ func main() { } // Fire up a gRPC server, letting the kernel choose a free port. - port, done, err := rpcutil.Serve(0, cancelChannel, []func(*grpc.Server) error{ - func(srv *grpc.Server) error { + handle, err := rpcutil.ServeWithOptions(rpcutil.ServeOptions{ + Cancel: cancelChannel, + Init: func(srv *grpc.Server) error { host := newLanguageHost(dotnetExec, engineAddress, tracing, binary) pulumirpc.RegisterLanguageRuntimeServer(srv, host) return nil }, - }, nil) + Options: rpcutil.OpenTracingServerInterceptorOptions(nil), + }) if err != nil { cmdutil.Exit(errors.Wrapf(err, "could not start language host RPC server")) } // Otherwise, print out the port so that the spawner knows how to reach us. - fmt.Printf("%d\n", port) + fmt.Printf("%d\n", handle.Port) // And finally wait for the server to stop serving. - if err := <-done; err != nil { + if err := <-handle.Done; err != nil { cmdutil.Exit(errors.Wrapf(err, "language host RPC stopped serving")) } }