image-optimize.module.ts 887 B

123456789101112131415161718192021222324252627
  1. import { BullModule } from '@nestjs/bull';
  2. import { Module } from '@nestjs/common';
  3. import { TypeOrmModule } from '@nestjs/typeorm';
  4. import { join } from 'path';
  5. import { AssetModule } from '../../api-v1/asset/asset.module';
  6. import { AssetService } from '../../api-v1/asset/asset.service';
  7. import { AssetEntity } from '../../api-v1/asset/entities/asset.entity';
  8. import { ImageOptimizeProcessor } from './image-optimize.processor';
  9. import { AssetOptimizeService } from './image-optimize.service';
  10. @Module({
  11. imports: [
  12. BullModule.registerQueue({
  13. name: 'optimize',
  14. defaultJobOptions: {
  15. attempts: 3,
  16. removeOnComplete: true,
  17. removeOnFail: false,
  18. },
  19. }),
  20. TypeOrmModule.forFeature([AssetEntity]),
  21. ],
  22. providers: [AssetOptimizeService, ImageOptimizeProcessor],
  23. exports: [AssetOptimizeService],
  24. })
  25. export class ImageOptimizeModule {}