it0/packages/services/inventory-service/src/inventory.module.ts

27 lines
1.4 KiB
TypeScript

import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { TypeOrmModule } from '@nestjs/typeorm';
import { DatabaseModule } from '@it0/database';
import { ServerController } from './interfaces/rest/controllers/server.controller';
import { ClusterController } from './interfaces/rest/controllers/cluster.controller';
import { CredentialVaultService } from './infrastructure/crypto/credential-vault.service';
import { ServerRepository } from './infrastructure/repositories/server.repository';
import { ClusterRepository } from './infrastructure/repositories/cluster.repository';
import { CredentialController } from './interfaces/rest/controllers/credential.controller';
import { CredentialRepository } from './infrastructure/repositories/credential.repository';
import { Server } from './domain/entities/server.entity';
import { Cluster } from './domain/entities/cluster.entity';
import { Credential } from './domain/entities/credential.entity';
import { SshConfig } from './domain/entities/ssh-config.entity';
@Module({
imports: [
ConfigModule.forRoot({ isGlobal: true }),
DatabaseModule.forRoot(),
TypeOrmModule.forFeature([Server, Cluster, Credential, SshConfig]),
],
controllers: [ServerController, ClusterController, CredentialController],
providers: [CredentialVaultService, ServerRepository, ClusterRepository, CredentialRepository],
})
export class InventoryModule {}