Skip to main content
Glama
database.module.ts2.87 kB
import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { createDataSource } from './data-source'; import { MCPServerEntity } from './entities/mcp-server.entity'; import { AuthConfigEntity } from './entities/auth-config.entity'; import { TestCaseEntity } from './entities/test-case.entity'; import { LogEntryEntity } from './entities/log-entry.entity'; import { User } from './entities/user.entity'; import { Role } from './entities/role.entity'; import { Permission } from './entities/permission.entity'; import { AuditLog } from './entities/audit-log.entity'; import { RefreshToken } from './entities/refresh-token.entity'; import { SystemLogEntity } from './entities/system-log.entity'; import { AiAssistantTemplateEntity } from '../modules/ai-assistant/entities/ai-assistant-template.entity'; import { AiAssistantConfigEntity } from '../modules/ai-assistant/entities/ai-assistant-config.entity'; import { OpenAPIDocument } from './entities/openapi-document.entity'; import { SeedService } from './seed.service'; @Module({ imports: [ TypeOrmModule.forRootAsync({ imports: [ConfigModule], useFactory: (configService: ConfigService) => ({ type: 'postgres', host: configService.get('DB_HOST', 'localhost'), port: configService.get('DB_PORT', 5432), username: configService.get('DB_USERNAME', 'postgres'), password: configService.get('DB_PASSWORD', 'password'), database: configService.get('DB_DATABASE', 'mcp_swagger_api'), entities: [ MCPServerEntity, AuthConfigEntity, TestCaseEntity, LogEntryEntity, User, Role, Permission, AuditLog, RefreshToken, SystemLogEntity, AiAssistantTemplateEntity, AiAssistantConfigEntity, OpenAPIDocument, ], synchronize: configService.get('NODE_ENV') === 'development', logging: configService.get('DB_LOGGING', false), ssl: configService.get('NODE_ENV') === 'production' ? { rejectUnauthorized: false } : false, retryAttempts: 3, retryDelay: 3000, autoLoadEntities: true, keepConnectionAlive: true, }), inject: [ConfigService], }), // 导出实体模块供其他模块使用 TypeOrmModule.forFeature([ MCPServerEntity, AuthConfigEntity, TestCaseEntity, LogEntryEntity, User, Role, Permission, AuditLog, RefreshToken, SystemLogEntity, AiAssistantTemplateEntity, AiAssistantConfigEntity, OpenAPIDocument, ]), ], providers: [ SeedService, ], exports: [ TypeOrmModule, SeedService, ], }) export class DatabaseModule {}

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zaizaizhao/mcp-swagger-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server