Files
panels/services/user-service/src/rpc/server.ts

26 lines
1.0 KiB
TypeScript

// Copyright 2023 Declan Teevan
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
import { fastify } from "fastify";
import { fastifyConnectPlugin } from "@connectrpc/connect-fastify";
import routes from "./connect";
export default async function serveRPC(): Promise<void> {
const server = fastify({ http2: true, logger: true });
await server.register(fastifyConnectPlugin, { routes: routes });
await server.listen({ host: "0.0.0.0", port: 9090 });
console.log("rpc server is listening at", server.addresses());
}