import { NestFactory } from '@nestjs/core'; import { MicroserviceOptions, Transport } from '@nestjs/microservices'; import { join } from 'path'; import { AppModule } from './app.module'; async function bootstrap() { const app = await NestFactory.create(AppModule); app.connectMicroservice({ transport: Transport.TCP, }); app.connectMicroservice({ transport: Transport.GRPC, options: { package: ['authentication', 'authorization', 'health'], protoPath: [ join( __dirname, 'modules/authentication/interface/grpc-controllers/authentication.proto', ), join( __dirname, 'modules/authorization/interface/grpc-controllers/authorization.proto', ), join( __dirname, 'modules/health/interface/grpc-controllers/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); } bootstrap();