import { NestFactory } from '@nestjs/core'; import { MicroserviceOptions, Transport } from '@nestjs/microservices'; import { join } from 'path'; import { AppModule } from './app.module'; import { GRPC_HEALTH_PACKAGE_NAME, GRPC_PACKAGE_NAME } from './app.constants'; async function bootstrap() { const app = await NestFactory.create(AppModule); app.connectMicroservice({ transport: Transport.TCP, }); app.connectMicroservice({ transport: Transport.GRPC, options: { package: [GRPC_PACKAGE_NAME, GRPC_HEALTH_PACKAGE_NAME], protoPath: [ join(__dirname, 'modules/ad/interface/grpc-controllers/matcher.proto'), join(__dirname, 'health.proto'), ], url: `${process.env.SERVICE_URL}:${process.env.SERVICE_PORT}`, loader: { keepCase: true, enums: String }, }, }); await app.startAllMicroservices(); await app.listen(process.env.HEALTH_SERVICE_PORT as string); } bootstrap();